22 May 17:28
Boost 1.35 Multi-architecture and Static Build Failures on OS X 10.5 Intel
From: Daniel Lord <daniel <at> brightfire.com>
Subject: Boost 1.35 Multi-architecture and Static Build Failures on OS X 10.5 Intel
Newsgroups: gmane.comp.lib.boost.user
Date: 2008-05-22 15:29:44 GMT
Subject: Boost 1.35 Multi-architecture and Static Build Failures on OS X 10.5 Intel
Newsgroups: gmane.comp.lib.boost.user
Date: 2008-05-22 15:29:44 GMT
Several problems with configurations not properly propagating through the long build chain it seems.
That is if I am setting this up correctly--there is always the possibility this is pilot error in the setup.
1) configure architecture=combined should be the default and provide a universal 32-bit architecture file:
but the build is done for only the i386 architecture (no ppc) for the dylibs
# all libraries are built as dynamic libraries supporting only the native architecture, in this case i386, and are not multi-architecture
$find ./bin.v2 -type f -regex ".*dylib" -exec lipo -info {} \;
Non-fat file: ./bin.v2/libs/date_time/build/darwin/release/macosx-version-10.4/threading-multi/libboost_date_time-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/filesystem/build/darwin/release/macosx-version-10.4/threading-multi/libboost_filesystem-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/graph/build/darwin/release/macosx-version-10.4/threading-multi/libboost_graph-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/iostreams/build/darwin/release/macosx-version-10.4/threading-multi/libboost_iostreams-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/program_options/build/darwin/release/macosx-version-10.4/threading-multi/libboost_program_options-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/python/build/darwin/release/macosx-version-10.4/threading-multi/libboost_python-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/regex/build/darwin/release/macosx-version-10.4/threading-multi/libboost_regex-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/serialization/build/darwin/release/macosx-version-10.4/threading-multi/libboost_serialization-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/serialization/build/darwin/release/macosx-version-10.4/threading-multi/libboost_wserialization-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/signals/build/darwin/release/macosx-version-10.4/threading-multi/libboost_signals-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/system/build/darwin/release/macosx-version-10.4/threading-multi/libboost_system-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/test/build/darwin/release/macosx-version-10.4/threading-multi/libboost_prg_exec_monitor-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/test/build/darwin/release/macosx-version-10.4/threading-multi/libboost_unit_test_framework-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/thread/build/darwin/release/macosx-version-10.4/threading-multi/libboost_thread-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/wave/build/darwin/release/macosx-version-10.4/threading-multi/libboost_wave-mt-1_35.dylib is architecture: i386
[08:26:15] daniello <at> Mercury ~/Projects/Dev/UniversalL
2) configure architecture=combined link=static should result in a combined architecture static library build:
but only two files end up as static and neither is multi-architecture:
# searching for static libraries yields only two matches and neither is multi-architecture
$find ./bin.v2 -type f -regex ".*a" -exec lipo -info {} \;
input file ./bin.v2/libs/test/build/darwin/release/link-static/macosx-version-10.4/threading-multi/libboost_test_exec_monitor-mt-1_35.a is not a fat file
Non-fat file: ./bin.v2/libs/test/build/darwin/release/link-static/macosx-version-10.4/threading-multi/libboost_test_exec_monitor-mt-1_35.a is architecture: i386
# the rest of the libraries are still built as dynamic libraries and none are multi-architecture
$find ./bin.v2 -type f -regex ".*dylib" -exec lipo -info {} \;
Non-fat file: ./bin.v2/libs/date_time/build/darwin/release/macosx-version-10.4/threading-multi/libboost_date_time-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/filesystem/build/darwin/release/macosx-version-10.4/threading-multi/libboost_filesystem-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/graph/build/darwin/release/macosx-version-10.4/threading-multi/libboost_graph-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/iostreams/build/darwin/release/macosx-version-10.4/threading-multi/libboost_iostreams-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/program_options/build/darwin/release/macosx-version-10.4/threading-multi/libboost_program_options-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/python/build/darwin/release/macosx-version-10.4/threading-multi/libboost_python-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/regex/build/darwin/release/macosx-version-10.4/threading-multi/libboost_regex-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/serialization/build/darwin/release/macosx-version-10.4/threading-multi/libboost_serialization-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/serialization/build/darwin/release/macosx-version-10.4/threading-multi/libboost_wserialization-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/signals/build/darwin/release/macosx-version-10.4/threading-multi/libboost_signals-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/system/build/darwin/release/macosx-version-10.4/threading-multi/libboost_system-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/test/build/darwin/release/macosx-version-10.4/threading-multi/libboost_prg_exec_monitor-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/test/build/darwin/release/macosx-version-10.4/threading-multi/libboost_unit_test_framework-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/thread/build/darwin/release/macosx-version-10.4/threading-multi/libboost_thread-mt-1_35.dylib is architecture: i386
Non-fat file: ./bin.v2/libs/wave/build/darwin/release/macosx-version-10.4/threading-multi/libboost_wave-mt-1_35.dylib is architecture: i386
_______________________________________________ Boost-users mailing list Boost-users <at> lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
RSS Feed