Quantcast

serialization gcc tests

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

serialization gcc tests

Robert Ramey
I've trying to get the develop branch of the serialization library to
build and test for weeks without success.  Amost every thing compiles
and links, but bails at runtime with exit code 139.

On my own system - macos I have no problem getting several different
versions of gcc to pass in all combinations release/debug, shared/static
and std=c++11 and std=c++03 .

But on the test matrix I'm getting all failures.

"g++"  -ftemplate-depth-128 -O0 -fno-inline -Wall -g -std=c++0x -fPIC
-m64 -Wno-unused-variable -Wno-long-long -ftemplate-depth-255
-DBOOST_ALL_NO_LIB=1 -DBOOST_ARCHIVE_TEST=binary_archive.hpp
-DBOOST_FILESYSTEM_DYN_LINK=1 -DBOOST_LIB_DIAGNOSTIC=1
-DBOOST_SYSTEM_DYN_LINK=1 -D_GLIBCXX_DEBUG -D_STLP_DEBUG  -I".." -c -o
"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/test/test_array_binary_archive.test/gcc-4.4~c0x/debug/test_array.o"
"../libs/serialization/test/test_array.cpp"


Link [2016-06-05 09:38:55 UTC]: succeed

"g++"  -Wl,-R
-Wl,"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/filesystem/build/gcc-4.4~c0x/debug"
-Wl,-R
-Wl,"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/build/gcc-4.4~c0x/debug"
-Wl,-R
-Wl,"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/system/build/gcc-4.4~c0x/debug"
-Wl,-rpath-link
-Wl,"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/filesystem/build/gcc-4.4~c0x/debug"
-Wl,-rpath-link
-Wl,"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/build/gcc-4.4~c0x/debug"
-Wl,-rpath-link
-Wl,"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/system/build/gcc-4.4~c0x/debug"
-o
"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/test/test_array_binary_archive.test/gcc-4.4~c0x/debug/test_array_binary_archive"
-Wl,--start-group
"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/test/test_array_binary_archive.test/gcc-4.4~c0x/debug/test_array.o"
"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/test/test_array_binary_archive.test/gcc-4.4~c0x/debug/A.o"
"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/build/gcc-4.4~c0x/debug/libboost_serialization.so.1.62.0"
"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/filesystem/build/gcc-4.4~c0x/debug/libboost_filesystem.so.1.62.0"
"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/system/build/gcc-4.4~c0x/debug/libboost_system.so.1.62.0"
  -Wl,-Bstatic  -Wl,-Bdynamic  -Wl,--end-group -g -m64

RmTemps
/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/test/test_array_binary_archive.test/gcc-4.4~c0x/debug/test_array_binary_archive

     rm -f
"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/test/test_array_binary_archive.test/gcc-4.4~c0x/debug/test_array.o"
"/home/jenkins/workspace/Boost/Boost_Regression_Develop/results/boost/bin.v2/libs/serialization/test/test_array_binary_archive.test/gcc-4.4~c0x/debug/A.o"


Run [2016-06-05 09:38:55 UTC]: fail


EXIT STATUS: 139

Possible things to look at.

a) Very suspicious: I see -DBOOST_FILESYSTEM_DYN_LINK=1 and
-DBOOST_SYSTEM_DYN_LINK=1 but I DON'T see
BOOST_SERIALIZATION_DYN_LINK=1

This would suggest that the serialization library is being linked
statically while the other libraries are being linked dynamically
which, in windows at least, usually leads to disaster.

b) I see -fPIC . I understant that dynamic libraries need to be
PIC  But that static libaries don't.  Could be aproblem here.

c) On my own system I use a command line like

b2 -j4 toolset=darwin-4.8 cxxflags=-std=c++03 variant=debug link=static
 >b2.log  &

so I'm explicitly specifying debug/release shared/static and
the C++ version switches.  I believe this should guarentee that
the are all consistent between imported and instrinsic libraries.
I can't figure out how this works with the test runners.


I would like to know if anyone else can confirm my local results
and any other usefule information.

Robert Ramey

_______________________________________________
Boost-Testing mailing list
[hidden email]
http://lists.boost.org/mailman/listinfo.cgi/boost-testing
Loading...