[poky] compile application header file missing
Gerard van den Bosch
gerard at de-haardt.com
Thu Mar 17 01:22:14 PDT 2011
On 03/17/2011 09:00 AM, Gerard van den Bosch wrote:
> On 03/17/2011 08:52 AM, Khem Raj wrote:
>>> DESCRIPTION = "libxmlpcp"
>>> SECTION = "libs"
>>> DEPENDS = "openslp libxml2"
>>> LICENSE = "LGPL"
>>>
>>> SRC_URI = "file://libxmlpcp.tar.gz"
>>>
>>> EXTRA_OEMAKE = "'CFLAGS=${CFLAGS} -fPIC -c
>>> -I${OPIEDIR}${includedir}/libxml2' 'LDFLAGS=${LDFLAGS} -shared
>>> -lxml2 -lslp'"
>>>
>>> do_install() {
>>> install -d ${D}${libdir}
>>> install -d ${D}${includedir}
>>> oe_runmake 'INSTALLHEADERDIR=${D}${includedir}'
>>> 'INSTALLLIBDIR=${D}${libdir}' \
>>> install
>>> }
>>>
>>> But when build is done I can not find the lib in the actual rootfs,
>>> looking at the date the rootfs is being regenerated.
>>>
>>> The lib file exists in the build tree on the following places:
>>> tmp/work/armv7a-poky-linux-gnueabi/libxmlpcp-0.1.0-r0/image/usr/lib
>>> tmp/sysroots/armv7a-poky-linux-gnueabi/usr/lib
>>> libxmlpcp-dbg_0.1.0-r0_armv7a.ipk and
>>> libxmlpcp-dev_0.1.0-r0_armv7a.ipk in the tmp/deploy/ipk/armv7a folder.
>>>
>>> I only get a "strip" error, can this be the reason it isn't included
>>> in the rootfs?
>>> ERROR: runstrip: ''arm-poky-linux-gnueabi-strip'
>>> --remove-section=.comment --remove-section=.note --strip-unneeded
>>> '/home/gerard/green-3.3/build/tmp/work/armv7a-poky-linux-gnueabi/libxmlpcp-0.1.0-r0/package/usr/lib/libxmlpcp.so''
>>> strip command failed
>> It could very well be. Can you run file or readelf -e over libxmlpcp.so
>> and see if it is for ARM architecture ?
>>
>> -Khem
>
> This gives me the following ELF header:
> ELF Header:
> Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
> Class: ELF32
> Data: 2's complement, little endian
> Version: 1 (current)
> OS/ABI: UNIX - System V
> ABI Version: 0
> Type: DYN (Shared object file)
> Machine: Intel 80386
> Version: 0x1
> Entry point address: 0x12f0
> Start of program headers: 52 (bytes into file)
> Start of section headers: 29436 (bytes into file)
> Flags: 0x0
> Size of this header: 52 (bytes)
> Size of program headers: 32 (bytes)
> Number of program headers: 6
> Size of section headers: 40 (bytes)
> Number of section headers: 37
> Section header string table index: 34
>
> If I process the 'file' command it gives me:
> libxmlpcp.so: ELF 32-bit LSB shared object, Intel 80386, version 1
> (SYSV), dynamically linked, not stripped
>
> Ok thus there is the problem, it isn't ARM architecture.
>
> Regards,
> Gerard
>
>
> _______________________________________________
> poky mailing list
> poky at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/poky
Added CC=${CC} to the EXTRA_OEMAKE parameter and it now builds it as ARM lib.
The strip error is gone but file isn't stripped:libxmlpcp.so:
ELF 32-bit LSB shared object, ARM, version 1 (SYSV), dynamically linked, not stripped
However strangely still missing it in the rootfs, but I will continue my search.
More information about the poky
mailing list