Hi Experts,

When cross compiling for VxWorks on Linux  …

In previous versions of Boost the presence of libz.a and libbz2.a were detected and linked into iostreams tests.

But with v1.68 the libraries are not being added to the link line.

Please see below for an example error.

 

The config-cache and the build console indicate that libz and bzip are being found, it’s just not being used when required.

 

I’m having trouble deciphering ac.jam, so I was hopping someone could help me understand  how a dependency on /zlib//zlib is supposed to add –lz to the link line?

And why it might not work in my case?

 

Many thanks,

 

Brian Kuhl

Wind River

 

 

. ./vxworks_env.sh &&  cd status   &&  \

                    BOOST_TELNET_ADDR="localhost 20023"  \

                    LAYER_SRC_PATH="yow-build62-lx:VSB/3pp/BOOST/boost_1_68_0" \

                    PKG_SRC_BUILD_DIR="/yow-build62-lx2/bkuhl/work/VSB/3pp/BOOST/boost_1_68_0"  \

                    VSB_LD_LIBRARY_PATH="yow-build62-lx:VSB/usr/root/llvm/bin;yow-build62-lx:VSB/usr/lib/common" \

../b2 -j1 --prefix=/yow-build62-lx2/bkuhl/work/VSB/usr/root --libdir=/yow-build62-lx2/bkuhl/work/VSB/usr/lib/common --includedir=/yow-build62-lx2/bkuhl/work/VSB/usr/h/public    toolset=clang-vxworks cross-compile=vxworks --reconfigure target-os=vxworks "variant=debug" address-model=64  static-only=on  "testing.launcher=./vxworks_boost_test_run.exp" "--limit-tests=iostreams|system" "--exclude-tests=coroutine2|function_types|functional|logic|rational" -d2

Performing configuration checks

    - default address-model    : 64-bit

    - default architecture     : x86

    - default address-model    : 64-bit

    - default architecture     : x86

    - symlinks supported       : yes

    - BOOST_COMP_GNUC >= 4.3.0 : no

    - zlib                     : yes

    - bzip2                    : yes

    - lzma                     : no

    - has_icu builds           : no

...patience...

...patience..

 

 

module config-cache {

  set "default address-model-32-bit-64-bit-<target-os>vxworks-<toolset-clang:version>4.2.1-<toolset>clang" : "2" ;

  set "default architecture-arm-mips1-power-sparc-x86-combined-<target-os>vxworks-<toolset-clang:version>4.2.1-<toolset>clang" : "5" ;

  set "default address-model-32-bit-64-bit-power-sparc-x86-combined-<target-os>linux-<toolset-clang:version>4.2.1-<toolset>clang" : "2" ;

  set "default architecture-arm-mips1-power-sparc-x86-combined-<target-os>linux-<toolset-clang:version>4.2.1-<toolset>clang" : "5" ;

  set "symlinks supported" : "true" ;

  set "BOOST_COMP_GNUC >= 4.3.0-<address-model>64-<architecture>x86-<target-os>vxworks-<toolset-clang:platform>vxworks-<toolset-clang:version>4.2.1-<toolset>clang" : "false" ;

  set "ac-library-zlib-<address-model>64-<architecture>x86-<link>static-<target-os>vxworks-<toolset-clang:platform>vxworks-<toolset-clang:version>4.2.1-<toolset>clang" : "%default" "z" "<link>static" ;

  set "ac-library-bzip2-<address-model>64-<architecture>x86-<link>static-<target-os>vxworks-<toolset-clang:platform>vxworks-<toolset-clang:version>4.2.1-<toolset>clang" : "%default" "bz2" "<link>static" ;

  set "ac-library-lzma-<address-model>64-<architecture>x86-<link>static-<target-os>vxworks-<toolset-clang:platform>vxworks-<toolset-clang:version>4.2.1-<toolset>clang" : "missing" ;

  set "has_icu builds-<address-model>64-<architecture>x86-<target-os>vxworks-<toolset-clang:platform>vxworks-<toolset-clang:version>4.2.1-<toolset>clang" : "false" ;

}

 

 

 

 

clang-vxworks.link ../bin.v2/libs/iostreams/test/bzip2_test.test/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/bzip2_test.vxe

    /yow-build62-lx2/bkuhl/vx7/compilers/llvm-6.0.0.2/LINUX386/bin/ldpentium -m elf_x86_64  -L"/yow-build62-lx2/bkuhl/work/VSB/usr/lib/common" -o "../bin.v2/libs/iostreams/test/bzip2_test.test/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/bzip2_test.vxe" /yow-build62-lx2/bkuhl/work/VSB/usr/lib/common//crt0.o "../bin.v2/libs/iostreams/test/bzip2_test.test/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/bzip2_test.o" "../bin.v2/libs/iostreams/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_iostreams.a" "../bin.v2/libs/test/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_unit_test_framework.a" "../bin.v2/libs/filesystem/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_filesystem.a" "../bin.v2/libs/timer/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_timer.a" "../bin.v2/libs/chrono/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_chrono.a" "../bin.v2/libs/system/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_system.a" --start-group -lunix -lnet  -lc  -lc_internal  -lllvm  -lcplusplus  -lllvmcplus  -ldl  -lsyscall      --end-group  --defsym __wrs_rtp_base=0x200000000 -u __tls__  -u __wr_need_frame_add -T/yow-build62-lx2/bkuhl/vx7/helix/guests/vxworks-7/build/tool/llvm_2016_04/usr/ldscript.vxe.x86-64   -L/yow-build62-lx2/bkuhl/work/VSB/usr/lib/common -z common-page-size=8192  -static

../bin.v2/libs/iostreams/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_iostreams.a(bzip2.o): In function `boost::iostreams::detail::bzip2_base::end(bool)':

/yow-build62-lx2/bkuhl/work/VSB/3pp/BOOST/boost_1_68_0/status/../libs/iostreams/src/bzip2.cpp:121: undefined reference to `BZ2_bzCompressEnd'

/yow-build62-lx2/bkuhl/work/VSB/3pp/BOOST/boost_1_68_0/status/../libs/iostreams/src/bzip2.cpp:122: undefined reference to `BZ2_bzDecompressEnd'

../bin.v2/libs/iostreams/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_iostreams.a(bzip2.o): In function `boost::iostreams::detail::bzip2_base::compress(int)':

/yow-build62-lx2/bkuhl/work/VSB/3pp/BOOST/boost_1_68_0/status/../libs/iostreams/src/bzip2.cpp:128: undefined reference to `BZ2_bzCompress'

../bin.v2/libs/iostreams/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_iostreams.a(bzip2.o): In function `boost::iostreams::detail::bzip2_base::decompress()':

/yow-build62-lx2/bkuhl/work/VSB/3pp/BOOST/boost_1_68_0/status/../libs/iostreams/src/bzip2.cpp:133: undefined reference to `BZ2_bzDecompress'

../bin.v2/libs/iostreams/build/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/libboost_iostreams.a(bzip2.o): In function `boost::iostreams::detail::bzip2_base::do_init(bool, void* (*)(void*, int, int), void (*)(void*, void*), void*)':

/yow-build62-lx2/bkuhl/work/VSB/3pp/BOOST/boost_1_68_0/status/../libs/iostreams/src/bzip2.cpp:153: undefined reference to `BZ2_bzCompressInit'

/yow-build62-lx2/bkuhl/work/VSB/3pp/BOOST/boost_1_68_0/status/../libs/iostreams/src/bzip2.cpp:157: undefined reference to `BZ2_bzDecompressInit'

...failed clang-vxworks.link ../bin.v2/libs/iostreams/test/bzip2_test.test/clang-vxworks-4.2.1/debug/cross-compile-vxworks/static-only-on/bzip2_test.vxe...