Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Serialization 自定义存档的boost序列化中的链接器错误_Serialization_Boost_Linker Errors_Boost Serialization - Fatal编程技术网

Serialization 自定义存档的boost序列化中的链接器错误

Serialization 自定义存档的boost序列化中的链接器错误,serialization,boost,linker-errors,boost-serialization,Serialization,Boost,Linker Errors,Boost Serialization,我尝试为boost序列化实现自己的归档类型 导致以下链接器错误 build/Debug/GNU-Linux/demo.o: In function `boost::archive::detail::pointer_oserializer<complete_oarchive, std::vector<double, std::allocator<double> > >::pointer_oserializer()': /opt/tools/boost/boost

我尝试为boost序列化实现自己的归档类型

导致以下链接器错误

build/Debug/GNU-Linux/demo.o: In function `boost::archive::detail::pointer_oserializer<complete_oarchive, std::vector<double, std::allocator<double> > >::pointer_oserializer()':
/opt/tools/boost/boostRdk-1.66.0/include/boost/archive/detail/oserializer.hpp:222: undefined reference to `boost::archive::detail::archive_serializer_map<complete_oarchive>::insert(boost::archive::detail::basic_serializer const*)'
build/Debug/GNU-Linux/demo.o: In function `boost::archive::detail::pointer_oserializer<complete_oarchive, std::vector<double, std::allocator<double> > >::~pointer_oserializer()':
/opt/tools/boost/boostRdk-1.66.0/include/boost/archive/detail/oserializer.hpp:227: undefined reference to `boost::archive::detail::archive_serializer_map<complete_oarchive>::erase(boost::archive::detail::basic_serializer const*)'
collect2: error: ld returned 1 exit status 
build/Debug/GNU-Linux/demo.o:在函数'boost::archive::detail::pointer\u-oserializer::pointer\u-oserializer()'中:
/opt/tools/boost/boostRdk-1.66.0/include/boost/archive/detail/oserializer.hpp:222:对“boost::archive::detail::archive\u serializer\u map::insert(boost::archive::detail::basic\u serializer const*)的未定义引用
build/Debug/GNU Linux/demo.o:在函数“boost::archive::detail::pointer\u oserializer::~pointer\u oserializer()”中:
/opt/tools/boost/boostRdk-1.66.0/include/boost/archive/detail/oserializer.hpp:227:对“boost::archive::detail::archive\u serializer\u map::erase(boost::archive::detail::basic\u serializer const*)的未定义引用
collect2:错误:ld返回了1个退出状态
似乎序列化中的指针

oa << BOOST_SERIALIZATION_NVP(pVec);

oa我通过替换

#include <boost/archive/detail/archive_serializer_map.hpp>
#包括

#包括

经验法则:永远不要使用
detail
名称空间或标题中的任何内容。
oa << BOOST_SERIALIZATION_NVP(pVec);
#include <boost/archive/detail/archive_serializer_map.hpp>
#include <boost/archive/impl/archive_serializer_map.ipp>