ld: cannot find -lprocps | 0.6.2 @ openSUSE

Asked by DAP on 2014-02-02

> rpm -ql procps-devel libprocps1
/usr/include/proc
/usr/include/proc/alloc.h
/usr/include/proc/devname.h
/usr/include/proc/escape.h
/usr/include/proc/procps.h
/usr/include/proc/pwcache.h
/usr/include/proc/readproc.h
/usr/include/proc/sig.h
/usr/include/proc/slab.h
/usr/include/proc/sysinfo.h
/usr/include/proc/version.h
/usr/include/proc/wchan.h
/usr/include/proc/whattime.h
/usr/lib64/libprocps.so
/usr/lib64/pkgconfig/libprocps.pc
/usr/lib64/libprocps.so.1
/usr/lib64/libprocps.so.1.1.2

[ 9s] + cd I-Nex-0.6.2
[ 9s] + make V=1 -j2
[ 9s] Compile edid-decode as inex-decode
[ 9s] gcc -o i-nex-edid JSON/edid-decode.c -g -Wall -O2
[ 9s] JSON/edid-decode.c: In function 'detailed_block':
[ 9s] JSON/edid-decode.c:194:8: warning: 'width' may be used uninitialized in this function [-Wmaybe-uninitialized]
[ 9s] printf(" %dx%d @ ( %s%s%s%s%s) Hz (%s%s preferred)\n", width, height,
[ 9s] ^
[ 9s] JSON/edid-decode.c:155:9: note: 'width' was declared here
[ 9s] int width, height;
[ 9s] ^
[ 10s] JSON/edid-decode.c: In function 'main':
[ 10s] JSON/edid-decode.c:1656:26: warning: 'conformant_extension' may be used uninitialized in this function [-Wmaybe-uninitialized]
[ 10s] nonconformant_extension += parse_extension(x);
[ 10s] ^
[ 10s] JSON/edid-decode.c:110:11: warning: 'v' may be used uninitialized in this function [-Wmaybe-uninitialized]
[ 10s] printf("%s%s: %s (%d)\n", prefix, field->name, v->description, val);
[ 10s] ^
[ 10s] JSON/edid-decode.c:95:19: note: 'v' was declared here
[ 10s] struct value *v;
[ 10s] ^
[ 10s] JSON/edid-decode.c:1630:13: warning: 'y' may be used uninitialized in this function [-Wmaybe-uninitialized]
[ 10s] printf(" %dx%d@%dHz\n", x, y, refresh);
[ 10s] ^
[ 10s] JSON/edid-decode.c:1417:7: warning: 'ofd' may be used uninitialized in this function [-Wmaybe-uninitialized]
[ 10s] write(ofd, edid, edid_lines * 16);
[ 10s] ^
[ 11s] gcc -o i-nex-cpuid JSON/cpu.c -static -I/usr/include/libcpuid -lcpuid -O2
[ 12s] gcc -o i-nex-usage JSON/free.c -static -lprocps -O2
[ 12s] /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: cannot find -lprocps
[ 12s] collect2: error: ld returned 1 exit status

Question information

Language:
English Edit question
Status:
Solved
For:
I-Nex Edit question
Assignee:
No assignee Edit question
Solved by:
DAP
Solved:
2014-02-03
Last query:
2014-02-03
Last reply:
2014-02-03

This question was originally filed as bug #1275486.

eloaders (eloaders) said : #1

I wrote a guide. Example of how to use the pkgconfig. I have no idea which way they go your actions.

Refer to the Makefile

DAP (darkness) said : #2

I am not a C guru at all. Any possibility to get i-nex without JSON?

DAP (darkness) said : #3

--- Makefile.orig 2014-01-29 03:06:48.000000000 +0300
+++ Makefile 2014-02-03 22:17:06.547122520 +0300
@@ -66,8 +66,8 @@
 make:
  @printf "\033[1;31mCompile edid-decode as inex-decode \033[0m$1\n"
  $(CC) -o i-nex-edid JSON/edid-decode.c $(CFLAGS) $(additional_confflags)
- $(CC) -o i-nex-cpuid JSON/cpu.c -static $(CC_OPTS_LIBCPUID) $(additional_confflags)
- $(CC) -o i-nex-usage JSON/free.c -static $(CC_OPTS_LIBPROCPS) $(additional_confflags)
+ $(CC) -o i-nex-cpuid JSON/cpu.c $(CC_OPTS_LIBCPUID) $(additional_confflags)
+ $(CC) -o i-nex-usage JSON/free.c $(CC_OPTS_LIBPROCPS) $(additional_confflags)
  $(CC) -o i-nex-cpusage JSON/cpusage.c $(additional_confflags)
  $(CC) -o i-nex-glinfo JSON/glinfo.c $(libx11) $(libgl) $(libxext) $(additional_confflags)
  $(CC) -o i-nex-uname JSON/uname.c $(additional_confflags)

This patch made my build OK.
Could you install man pages via makefile please?
What about my how-to-install instructions? ;)

eloaders (eloaders) said : #4

Build-Depends:
  python | python-all | python-dev | python-all-dev,
  pkg-config, dpkg-dev (>= 1.14.17),
  libcpuid11, procps, lsb-release,
  libprocps0-dev|libprocps3-dev|libproc-dev,
  libx11-dev,
  libxext-dev,
  libgl1-mesa-dev,
  libglew-dev,
  libglu1-mesa-dev,
  libegl1-mesa-dev,
  libgles1-mesa-dev,
  libgles2-mesa-dev,
  gambas3-dev (>= 3.0.90),
  gambas3-gb-image (>= 3.0.90),
  gambas3-gb-qt4 (>= 3.0.90),
  gambas3-gb-form (>= 3.0.90),
  gambas3-gb-desktop (>= 3.0.90),
  gambas3-gb-form-stock (>= 3.4.0),
  imagemagick

Please check Git repository, Master current branch of Makefile. make: install: etc....

Do not have openSUSE, I have no idea what to naming the library in the system, and I do not know what are versions for each version.

pkgconfig returns the appropriate variables etc ....
Check out the compilation of other libraries and programs written in C.

That's all I'm able to help.
And thanks for the repository for openSUSE.

eloaders (eloaders) said : #5

I-Nex is not able to operate without JSON compiled modules.

The decision was made to support more distribution for the installer makeself.

DAP (darkness) said : #6

As I've already posted there were no problems without static flags.
I just would like to see openSUSE package at your site and to be able to get man pages installed via make.

eloaders (eloaders) said : #7

Sorry, my English is not good.

The moment you publish 0.6.2, then I will add as the official repository for openSUSE. What do you think?

DAP (darkness) said : #8

No problems at all, I'll post about it. Thanks!