boost serialize issue when compile 64 bit application

Hi all, I am compiling 64 bit application, and got lots of errors about boost serializer, but I don't have any issue when compile 32 bit application. Is there some attention when transform from 32 bit boost to 64 bit boost? Any advice would be appreciate, thanks in advance! PS: We used intel toolchain to compile boost, and tried with different boost version, still got same errors. Regards, Gary Main.o: In function `boost::archive::detail::iserializer<CMyText_iarchive, AtworkPathInfo>::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const': Main.cpp:(.text._ZNK5boost7archive6detail11iserializerI16CMyText_iarchive15AtworkPathInfoE16load_object_dataERNS1_14basic_iarchiveEPvj[_ZNK5boost7archive6detail11iserializerI16CMyText_iarchive15AtworkPathInfoE16load_object_dataERNS1_14basic_iarchiveEPvj]+0x4b): undefined reference to `void AtworkPathInfo::serialize<CMyText_iarchive>(CMyText_iarchive&, unsigned int)' Schedule.o: In function `boost::archive::detail::iserializer<CMyText_iarchive, GERINFO>::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const': Schedule.cpp:(.text._ZNK5boost7archive6detail11iserializerI16CMyText_iarchive11GERINFOE16load_object_dataERNS1_14basic_iarchiveEPvj[_ZNK5boost7archive6detail11iserializerI16CMyText_iarchive11GERINFOE16load_object_dataERNS1_14basic_iarchiveEPvj]+0x4b): undefined reference to `void GERINFO::serialize<CMyText_iarchive>(CMyText_iarchive&, unsigned int)' Images.o: In function `boost::archive::detail::iserializer<CMyText_iarchive, MNTINFO>::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const': Images.cpp:(.text._ZNK5boost7archive6detail11iserializerI16CMyText_iarchive9MNTINFOE16load_object_dataERNS1_14basic_iarchiveEPvj[_ZNK5boost7archive6detail11iserializerI16CMyText_iarchive9MNTINFOE16load_object_dataERNS1_14basic_iarchiveEPvj]+0x4b): undefined reference to `void MNTINFO::serialize<CMyText_iarchive>(CMyText_iarchive&, unsigned int)' Images.o: In function `boost::archive::detail::iserializer<CMyText_iarchive, VOLUMEINFO>::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const': Images.cpp:(.text._ZNK5boost7archive6detail11iserializerI16CMyText_iarchive13VOLUMEINFOE16load_object_dataERNS1_14basic_iarchiveEPvj[_ZNK5boost7archive6detail11iserializerI16CMyText_iarchive13VOLUMEINFOE16load_object_dataERNS1_14basic_iarchiveEPvj]+0x4b): undefined reference to `void VOLUMEINFO::serialize<CMyText_iarchive>(CMyText_iarchive&, unsigned int)' Info.o: In function `boost::archive::detail::oserializer<CMyText_oarchive, MAPPINGINFO>::save_object_data(boost::archive::detail::basic_oarchive&, void const*) const': Info.cpp:(.text._ZNK5boost7archive6detail11oserializerI16CMyText_oarchive14MAPPINGINFOE16save_object_dataERNS1_14basic_oarchiveEPKv[_ZNK5boost7archive6detail11oserializerI16CMyText_oarchive14MAPPINGINFOE16save_object_dataERNS1_14basic_oarchiveEPKv]+0x5a): undefined reference to `void MAPPINGINFO::serialize<CMyText_oarchive>(CMyText_oarchive&, unsigned int)' Info.o: In function `boost::archive::detail::iserializer<CMyText_iarchive, MAPPINGINFO>::load_object_data(boost::archive::detail::basic_iarchive&, void*, unsigned int) const': Info.cpp:(.text._ZNK5boost7archive6detail11iserializerI16CMyText_iarchive14MAPPINGINFOE16load_object_dataERNS1_14basic_iarchiveEPvj[_ZNK5boost7archive6detail11iserializerI16CMyText_iarchive14MAPPINGINFOE16load_object_dataERNS1_14basic_iarchiveEPvj]+0x4b): undefined reference to `void MAPPINGINFO::serialize<CMyText_iarchive>(CMyText_iarchive&, unsigned int)' make[1]: *** [service] Error 1 make[1]: Leaving directory `/home/gary/product_100/CoreService' make: *** [all] Error 1

On Wed, Apr 16, 2014 at 3:26 AM, gary jiang <gary.jiang.nj@gmail.com> wrote:
I am compiling 64 bit application, and got lots of errors about boost serializer, but I don't have any issue when compile 32 bit application. Is there some attention when transform from 32 bit boost to 64 bit boost?
Yes: build Boost in 64 bits as well. Try 'b2 address-model=64 ...' Those are linker errors.

On 2014/4/16 21:48, Nat Goodspeed wrote:
On Wed, Apr 16, 2014 at 3:26 AM, gary jiang <gary.jiang.nj@gmail.com> wrote:
I am compiling 64 bit application, and got lots of errors about boost serializer, but I don't have any issue when compile 32 bit application. Is there some attention when transform from 32 bit boost to 64 bit boost? Yes: build Boost in 64 bits as well. Try 'b2 address-model=64 ...' Sorry, the boost is built as b4 bit as follows:
cd boost_1_50_0/ mkdir gary source /opt/intel/composer_xe_2013_sp1.2.144/bin/compilervars.sh intel64 ./bootstrap.sh --prefix=gary/ --with-toolset=intel-linux ./bjam address-model=64 install Is there anything else which I missed? Thanks. Regards, Gary
Those are linker errors. _______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
participants (1)
-
gary jiang
-
Nat Goodspeed