c++ - boost序列化中的编译错误, undefined reference

标签 c++ serialization boost

我已经包含了这些头文件。

#include <boost/archive/text_iarchive.hpp>
#include <boost/archive/text_oarchive.hpp>
#include <boost/serialization/map.hpp>
#include <boost/serialization/vector.hpp>

然后我有两行:
ofstream s_dict("save_dict.archive");
boost::archive::text_oarchive oa_dict(s_dict);

编译时:
g++ -lboost_serialization -lboost_system coord.cpp

它会抛出一长串错误,其中第一个错误是:

/tmp/ccRMDC8f.o:在函数中 boost::archive::text_oarchive::text_oarchive(std::ostream&, unsigned int)': coord.cpp:(.text._ZN5boost7archive13text_oarchiveC2ERSoj[_ZN5boost7archive13text_oarchiveC5ERSoj]+0x25): undefined reference to boost::archive::text_oarchive_impl::text_oarchive_impl(std::ostream&, unsigned int)'

它正在获得对 boost 函数的 undefined reference 。

最佳答案

尝试重新排序 g++ coord.cpp -lboost_serialization -lboost_system

关于c++ - boost序列化中的编译错误, undefined reference ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54257807/

相关文章:

c++ - 使用 shared_ptr<void> 初始化结构

c++ - 使用 gzread 读取直到 EOF 并膨胀浮点值

c++ - 插入排序C实现

c - 原始数据的指针运算

c++ - 在 BOOST_FOREACH 循环内设置的变量在循环外无效,为什么?

c++ - Eclipse CDT 无法构建 - 不确定出了什么问题(包括控制台)

java - Spring MVC : How to create single instance of object while deserialization JSON string containing duplicate object definitions

java - 在 Hadoop DistributedCache 上存储 TreeSet

c++ - 在 Mac OS 10.6 上使用 boost::xpressive 编译时间过长

c++ - 使用 waf 构建系统将程序与 Boost.Asio 链接