Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [git commit] package/gdb: add optional support for xz
@ 2016-02-16 22:14 Thomas Petazzoni
  2016-03-07 17:47 ` Vicente Olivert Riera
  0 siblings, 1 reply; 2+ messages in thread
From: Thomas Petazzoni @ 2016-02-16 22:14 UTC (permalink / raw)
  To: buildroot

commit: https://git.buildroot.net/buildroot/commit/?id=18ce7f11ff3481308d911c362f0c2ef44b9492bc
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

When xz was compiled before, gdb will use it as optional dependency:

$ output/host/usr/bin/i586-buildroot-linux-uclibc-readelf -a output/target/usr/bin/gdb | grep NEEDED
 0x00000001 (NEEDED)                     Shared library: [libdl.so.1]
 0x00000001 (NEEDED)                     Shared library: [libncurses.so.5]
 0x00000001 (NEEDED)                     Shared library: [libz.so.1]
 0x00000001 (NEEDED)                     Shared library: [libm.so.1]
 0x00000001 (NEEDED)                     Shared library: [liblzma.so.5]
 0x00000001 (NEEDED)                     Shared library: [libc.so.1]

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 package/gdb/gdb.mk | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/package/gdb/gdb.mk b/package/gdb/gdb.mk
index 3b0f501..32d52eb 100644
--- a/package/gdb/gdb.mk
+++ b/package/gdb/gdb.mk
@@ -118,6 +118,13 @@ else
 GDB_CONF_OPTS += --without-expat
 endif
 
+ifeq ($(BR2_PACKAGE_XZ),y)
+GDB_CONF_OPTS += --with-lzma
+GDB_DEPENDENCIES += xz
+else
+GDB_CONF_OPTS += --without-lzma
+endif
+
 ifeq ($(BR2_PACKAGE_ZLIB),y)
 GDB_CONF_OPTS += --with-zlib
 GDB_DEPENDENCIES += zlib

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [Buildroot] [git commit] package/gdb: add optional support for xz
  2016-02-16 22:14 [Buildroot] [git commit] package/gdb: add optional support for xz Thomas Petazzoni
@ 2016-03-07 17:47 ` Vicente Olivert Riera
  0 siblings, 0 replies; 2+ messages in thread
From: Vicente Olivert Riera @ 2016-03-07 17:47 UTC (permalink / raw)
  To: buildroot

Hello Thomas, Bernd, all,

for some reason gdb fails to build with xz and expat support at the same
time when using an external toolchain.

This is how the problem is shown:

checking for liblzma... no
configure: error: missing liblzma for --with-lzma

Try this defconfig if you want to reproduce the problem:

BR2_x86_64=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_PACKAGE_XZ=y
BR2_PACKAGE_GDB=y
BR2_PACKAGE_GDB_DEBUGGER=y
BR2_PACKAGE_EXPAT=y

Using the above defconfig, the error in the gdb/config.log will look
like this:

configure:13241: checking whether to use lzma
configure:13243: result: yes
configure:13657: checking for liblzma
configure:13678: /br/output/host/usr/bin/i686-pc-linux-gnu-gcc -o
conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
-D_FILE_OFFSET_BITS=64  -Os
-I/br/output/host/usr/x86_64-buildroot-linux-gnu/sysroot/usr/include
-static-libstdc++ -static-libgcc  conftest.c -ldl -ldl -lncurses -lm
-ldl    /usr/lib/liblzma.so >&5
/lib64/liblzma.so.5: undefined reference to `clock_gettime at GLIBC_2.17'
collect2: error: ld returned 1 exit status

You can also use this defconfig to reproduce the problem for MIPS:

BR2_mips=y
BR2_mips_32r2=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_PACKAGE_XZ=y
BR2_PACKAGE_GDB=y
BR2_PACKAGE_GDB_DEBUGGER=y
BR2_PACKAGE_EXPAT=y

In that case the error will look like this:

configure:13241: checking whether to use lzma
configure:13243: result: yes
configure:13657: checking for liblzma
configure:13678: /br/output/host/usr/bin/mips-linux-gnu-gcc -o conftest
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -Os
 -I/br/output/host/usr/mips-buildroot-linux-gnu/sysroot/usr/include
-static-libstdc++ -static-libgcc  conftest.c -ldl -ldl -lncurses -lm
-ldl    /usr/lib/liblzma.so >&5
/br/output/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.2.0/../../../../mips-linux-gnu/bin/ld:
skipping incompatible /lib64/liblzma.so.5 when searching for
/lib64/liblzma.so.5
/br/output/host/opt/ext-toolchain/bin/../lib/gcc/mips-linux-gnu/5.2.0/../../../../mips-linux-gnu/bin/ld:
cannot find /lib64/liblzma.so.5
collect2: error: ld returned 1 exit status

You can also use this defconfig to reproduce the problem for ARM:

BR2_arm=y
BR2_cortex_a7=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_PACKAGE_XZ=y
BR2_PACKAGE_GDB=y
BR2_PACKAGE_GDB_DEBUGGER=y
BR2_PACKAGE_EXPAT=y

In that case the error will look like this:

configure:13241: checking whether to use lzma
configure:13243: result: yes
configure:13657: checking for liblzma
configure:13678: /br/output/host/usr/bin/arm-linux-gnueabihf-gcc -o
conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
-D_FILE_OFFSET_BITS=64  -Os
-I/br/output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/include
-static-libstdc++ -static-libgcc  conftest.c -ldl -ldl -lncurses -lm
-ldl    /usr/lib/liblzma.so >&5
/lib64/liblzma.so.5: file not recognized: File format not recognized
collect2: error: ld returned 1 exit status

Regards,

Vincent.

On 16/02/16 22:14, Thomas Petazzoni wrote:
> commit: https://git.buildroot.net/buildroot/commit/?id=18ce7f11ff3481308d911c362f0c2ef44b9492bc
> branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
> 
> When xz was compiled before, gdb will use it as optional dependency:
> 
> $ output/host/usr/bin/i586-buildroot-linux-uclibc-readelf -a output/target/usr/bin/gdb | grep NEEDED
>  0x00000001 (NEEDED)                     Shared library: [libdl.so.1]
>  0x00000001 (NEEDED)                     Shared library: [libncurses.so.5]
>  0x00000001 (NEEDED)                     Shared library: [libz.so.1]
>  0x00000001 (NEEDED)                     Shared library: [libm.so.1]
>  0x00000001 (NEEDED)                     Shared library: [liblzma.so.5]
>  0x00000001 (NEEDED)                     Shared library: [libc.so.1]
> 
> Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> ---
>  package/gdb/gdb.mk | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/package/gdb/gdb.mk b/package/gdb/gdb.mk
> index 3b0f501..32d52eb 100644
> --- a/package/gdb/gdb.mk
> +++ b/package/gdb/gdb.mk
> @@ -118,6 +118,13 @@ else
>  GDB_CONF_OPTS += --without-expat
>  endif
>  
> +ifeq ($(BR2_PACKAGE_XZ),y)
> +GDB_CONF_OPTS += --with-lzma
> +GDB_DEPENDENCIES += xz
> +else
> +GDB_CONF_OPTS += --without-lzma
> +endif
> +
>  ifeq ($(BR2_PACKAGE_ZLIB),y)
>  GDB_CONF_OPTS += --with-zlib
>  GDB_DEPENDENCIES += zlib
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-03-07 17:47 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-16 22:14 [Buildroot] [git commit] package/gdb: add optional support for xz Thomas Petazzoni
2016-03-07 17:47 ` Vicente Olivert Riera

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox