There is no pkgconfig file, so “configure” and “make” commands does not find all the time automatically needed files even they exist.
So the file pkgconfig is on my PC olegue. I compile kernels on my PC and perform the following which may place this file on my computer.
Normally to compile a kernel source file you should consider doing the following:
Open YaST / Software / Software Management - Select the View Button on the top left and pick Patterns. Now, you will see several Patterns listed and you want to select:
Development
[X] Base Development
[X] Linux Kernel Development
[X] C/C++ Development
Then Press the Accept button on the bottom right and allow these applications to install.
Thank You,
Hi,
I’m not really sure what seems to be the problem… yes, there is a pkg-config package (which has a virtual provides for pkgconfig) and which has always worked fine for me.
Please be aware that many libraries do not support pkg-config. As from openSUSE 11.3 onwards all packages which support it do provide the relevant .pc file in the development package.
What pkg-config does is to provide a unified interface for querying installed libraries, and sometimes provides parameters for linking, versioning, etc.
Now, if pkg-config isn’t working properly with the package you are trying to build, there might be several issues, either the configure script may contain bugs or needs fixing (often done in configure.ac, but then you also need to run autoreconf to rebuild configure), or eventually you are missing dependencies, or have incorrect versions of those dependencies… Sometimes it warns, others it doesn’t and it’s up to the person building the software to figure out the problem and correct it.
From my experience (and I do maintain a few packages for openSUSE), pkgconfig is working properly.
Please elaborate a bit more your problem and provide information on what you are trying to accomplish, maybe then we can be more accurate.
Best of luck,
NM
I have all of that staff installed. I have tried to compile some of linphone’s codecs and get some make errors. I asked linphone’s support abt that case and a guy answered me that he runs OpenSuSE and the problem comes from missing pkgconfig. That makes the system incapable to find some files even their are on the proper places installed.
Cheers
Not sure if we speak about the same, of course the command pkg-config is in
the package with the same name. But if you need the linphone pkgconfig files
then you need linphone-devel package installed which contains the pc files
/usr/lib64/pkgconfig/linphone.pc
/usr/lib64/pkgconfig/mediastreamer.pc
/usr/lib64/pkgconfig/ortp.pc
–
PC: oS 11.3 64 bit | Intel Core2 Quad Q8300@2.50GHz | KDE 4.6.4 | GeForce
9600 GT | 4GB Ram
Eee PC 1201n: oS 11.4 64 bit | Intel Atom 330@1.60GHz | KDE 4.6.4 | nVidia
ION | 3GB Ram
Actually I have the linphone-devel and all these files you mentioned on the right place.
olegue wrote:
>
> martin_helm;2361352 Wrote:
>>
>>
>> /usr/lib64/pkgconfig/linphone.pc
>> /usr/lib64/pkgconfig/mediastreamer.pc
>> /usr/lib64/pkgconfig/ortp.pc
>>
>>
>
> Actually I have the linphone-devel and all these files you mentioned on
> the right place.
>
Can you post the exact error message you get, the exact series of commands
you used to compile and the exact name and a link to the piece of software
you try to compile, otherwise we are all just guessing what might be the
real problem.
–
PC: oS 11.3 64 bit | Intel Core2 Quad Q8300@2.50GHz | KDE 4.6.5 | GeForce
9600 GT | 4GB Ram
Eee PC 1201n: oS 11.4 64 bit | Intel Atom 330@1.60GHz | KDE 4.6.5 | nVidia
ION | 3GB Ram
Here it is:
msilbc-2.0.3> ./configure
checking for a BSD-compatible install… /usr/bin/install -c
checking whether build environment is sane… yes
checking for a thread-safe mkdir -p… /bin/mkdir -p
checking for gawk… gawk
checking whether make sets $(MAKE)… yes
checking how to create a ustar tar archive… gnutar
checking build system type… x86_64-unknown-linux-gnu
checking host system type… x86_64-unknown-linux-gnu
checking target system type… x86_64-unknown-linux-gnu
checking for style of include used by make… GNU
checking for gcc… gcc
checking whether the C compiler works… yes
checking for C compiler default output file name… a.out
checking for suffix of executables…
checking whether we are cross compiling… no
checking for suffix of object files… o
checking whether we are using the GNU C compiler… yes
checking whether gcc accepts -g… yes
checking for gcc option to accept ISO C89… none needed
checking dependency style of gcc… gcc3
checking for a sed that does not truncate output… /usr/bin/sed
checking for grep that handles long lines and -e… /usr/bin/grep
checking for egrep… /usr/bin/grep -E
checking for fgrep… /usr/bin/grep -F
checking for ld used by gcc… /usr/x86_64-suse-linux/bin/ld
checking if the linker (/usr/x86_64-suse-linux/bin/ld) is GNU ld… yes
checking for BSD- or MS-compatible name lister (nm)… /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface… BSD nm
checking whether ln -s works… yes
checking the maximum length of command line arguments… 1572864
checking whether the shell understands some XSI constructs… yes
checking whether the shell understands “+=”… yes
checking for /usr/x86_64-suse-linux/bin/ld option to reload object files… -r
checking for objdump… objdump
checking how to recognize dependent libraries… pass_all
checking for ar… ar
checking for strip… strip
checking for ranlib… ranlib
checking command to parse /usr/bin/nm -B output from gcc object… ok
checking how to run the C preprocessor… gcc -E
checking for ANSI C header files… yes
checking for sys/types.h… yes
checking for sys/stat.h… yes
checking for stdlib.h… yes
checking for string.h… yes
checking for memory.h… yes
checking for strings.h… yes
checking for inttypes.h… yes
checking for stdint.h… yes
checking for unistd.h… yes
checking for dlfcn.h… yes
checking for objdir… .libs
checking if gcc supports -fno-rtti -fno-exceptions… no
checking for gcc option to produce PIC… -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works… yes
checking if gcc static flag -static works… yes
checking if gcc supports -c -o file.o… yes
checking if gcc supports -c -o file.o… (cached) yes
checking whether the gcc linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries… yes
checking whether -lc should be explicitly linked in… no
checking dynamic linker characteristics… GNU/Linux ld.so
checking how to hardcode library paths into programs… immediate
checking whether stripping libraries is possible… yes
checking if libtool supports shared libraries… yes
checking whether to build shared libraries… yes
checking whether to build static libraries… no
checking for pkg-config… /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0… yes
checking for ORTP… yes
checking for MEDIASTREAMER… yes
checking for ILBC… no
configure: error: Package requirements (ilbc >= 0.0.0) were not met:
No package ‘ilbc’ found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables ILBC_CFLAGS
and ILBC_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
The pack ilbc has been installed before.
The package ilbc does provide the library and 3 header files but no ilbc.pc file as required by pkg-config. Normally the header files and ilbc.pc would be in the ilbc-devel package, but there is none, probably because it is small.
You have three options:
-
Fix the package on OBS to suit your needs.
-
Manually create the missing ilbc.pc file. See ‘man pkg-config’ for the format.
-
ping coolo@suse.de (the last registered package maintainer).
olegue wrote:
> Alternatively, you may set the environment variables ILBC_CFLAGS
> and ILBC_LIBS to avoid the need to call pkg-config.
>
I why don’t you just do what the configure script tells you to do?
Your problem seems to be ilbc has no pkconfig files so do what the configure
script tells you as alternative.
–
PC: oS 11.3 64 bit | Intel Core2 Quad Q8300@2.50GHz | KDE 4.6.5 | GeForce
9600 GT | 4GB Ram
Eee PC 1201n: oS 11.4 64 bit | Intel Atom 330@1.60GHz | KDE 4.6.5 | nVidia
ION | 3GB Ram
martin_helm wrote:
> olegue wrote:
>
>> Alternatively, you may set the environment variables ILBC_CFLAGS
>> and ILBC_LIBS to avoid the need to call pkg-config.
>>
> I why don’t you just do what the configure script tells you to do?
> Your problem seems to be ilbc has no pkconfig files so do what the
> configure script tells you as alternative.
>
Try something like this
../configure ILBC_CFLAGS=" -I/usr/include/ilbc" ILBC_LIBS="-L/usr/lib64 -
lilbc -lm"
–
PC: oS 11.3 64 bit | Intel Core2 Quad Q8300@2.50GHz | KDE 4.6.5 | GeForce
9600 GT | 4GB Ram
Eee PC 1201n: oS 11.4 64 bit | Intel Atom 330@1.60GHz | KDE 4.6.5 | nVidia
ION | 3GB Ram
I am not familiar with command line usage. If there is a source that explains the principles and the usage in depth, I’d like to know it.
olegue wrote:
> I am not familiar with command line usage. If there is a source that
> explains the principles and the usage in depth, I’d like to know it.
A quick google throws up these:
http://linux.die.net/Linux-CLI/ and many other things at die.net
http://www.pixelbeat.org/cmdline.html
http://www.tuxfiles.org/linuxhelp/cli.html
http://www.tldp.org/LDP/intro-linux/html/ and many other things