[OE-core] SDK does not contain pkg-config files

Mike Looijmans mike.looijmans at topic.nl
Wed Jul 31 13:22:17 UTC 2019


On 31-07-19 14:37, Ross Burton wrote:
> On 31/07/2019 06:47, Mike Looijmans wrote:
>> I'm trying to get the SDK to work, but no success because the SDK apparently
>> does not install any pkg-config file, resulting in autotools and cmake not
>> being able to find any library.
>>
>> Built the SDK using "bitbake -c populate_sdk image"
>>
>> Install the resulting SDK, and source the shell script.
>>
>> Building "helloworld" works. Building something slightly more advanced fails,
>> because pkg-config isn't working: "pkg-config --list-all" is empty.
>>
>> The cause is that the pkgconfig files simply aren't in the sysroot:
>>
>> $ echo $PKG_CONFIG_PATH
>> /home/mike/p/sysroots/cortexa9t2hf-neon-oe-linux-gnueabi/usr/lib/pkgconfig:/home/mike/p/sysroots/cortexa9t2hf-neon-oe-linux-gnueabi/usr/share/pkgconfig 
>>
>> $ ls /home/mike/p/sysroots/cortexa9t2hf-neon-oe-linux-gnueabi/usr/lib/pkgconfig
>> ls: cannot access
>> '/home/mike/p/sysroots/cortexa9t2hf-neon-oe-linux-gnueabi/usr/lib/pkgconfig':
>> No such file or directory
>> $ ls 
>> /home/mike/p/sysroots/cortexa9t2hf-neon-oe-linux-gnueabi/usr/share/pkgconfig
>> ls: cannot access
>> '/home/mike/p/sysroots/cortexa9t2hf-neon-oe-linux-gnueabi/usr/share/pkgconfig':
>> No such file or directory
> 
> Looks like something went wrong.
> 
> My host has minimal -dev packages installed:
> 
> $ dpkg -l \*-dev|grep ii
> ii  dpkg-dev                  1.19.7            all          Debian package 
> development tools
> ii  libc6-dev:amd64           2.28-10           amd64        GNU C Library: 
> Development Libraries and Header Files
> ii  libgcc-8-dev:amd64        8.3.0-6           amd64        GCC support 
> library (development files)
> ii  libstdc++-8-dev:amd64     8.3.0-6           amd64        GNU Standard C++ 
> Library v3 (development files)
> ii  linux-libc-dev:amd64      4.19.37-5+deb10u1 amd64        Linux support 
> headers for userspace development
> ii  manpages-dev              4.16-2            all          Manual pages 
> about using GNU/Linux for development
> 
> But inside a core-image-minimal SDK:
> 
> $ ls sysroots/corei7-64-poky-linux/usr/lib/pkgconfig/ | head
> blkid.pc
> check.pc
> com_err.pc
> dbus-1.pc
> dbus-glib-1.pc
> e2p.pc
> expat.pc
> ext2fs.pc
> fdisk.pc
> form.pc
> 
> $ pkg-config  --list-all | head
> zlib                  zlib - zlib compression library
> gio-unix-2.0          GIO unix specific APIs - unix specific headers for glib 
> I/O library
> libdw                 libdw - elfutils library for DWARF data and ELF file or 
> process inspection
> libkmod               libkmod - Library to deal with kernel modules
> applewmproto          AppleWMProto - AppleWM extension headers
> gio-2.0               GIO - glib I/O library
> dbus-glib-1           dbus-glib - GLib integration for the free desktop 
> message bus
> xf86dgaproto          XF86DGAProto - XF86DGA extension headers
> rpm                   RPM - RPM Package Manager
> xcb-composite         XCB Composite - XCB Composite Extension
> 
> So, works for me?

Well, that's at least good to know.

I'm on the "thud" branch currently, so I hope this isn't something that got 
fixed only recently.

I'll try some simple images first. I gather there's no particular magic 
incantation I need to put into my image recipe to get the pkg-config files 
into the SDK sysroot?

--
M.


More information about the Openembedded-core mailing list