Skip to content

libbacktrace doesn't honor --sysroot at link time when crosscompiling #134

@ericriff

Description

@ericriff

I'm trying to cross-compile this lib for arm32

The final link stage fails with

libtool: link: arm-poky-linux-gnueabi-gcc -shared  -fPIC -DPIC  .libs/atomic.o .libs/dwarf.o .libs/fileline.o .libs/posix.o .libs/print.o .libs/sort.o .libs/state.o .libs/backtrace.o .libs/simple.o .libs/elf.o .libs/mmapio.o .libs/mmap.o    -march=armv7-a -mthumb -mfpu=neon -mfloat-abi=hard   -Wl,-soname -Wl,libbacktrace.so.0 -o .libs/libbacktrace.so.0.0.0
/opt/arm32-sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.3.0/real-ld: cannot find crti.o: No such file or directory
/opt/arm32-sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.3.0/real-ld: cannot find crtbeginS.o: No such file or directory
/opt/arm32-sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.3.0/real-ld: cannot find -lgcc

Which is a symptom of the linker not seeing the toolchain's sysroot.

I'm exposing it through the LDFLAGS env variable, but it doesn't affect the build.

export LDFLAGS=--sysroot=/opt/arm32-sdk/sysroots/armv7at2hf-neon-poky-linux-gnueabi

I don't know enough about libtool to fix it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions