我有一个CMake工具链,它应该生成静态库,以便在适合所选平台的客户端应用程序中进行部署。可用平台目前仅适用于iOS,但是在运行CMake并生成项目后(两个项目:静态库和客户端都正确构建),Xcode在链接过程中无法构建。奇怪的是,它并没有与像“std”这样的基本库相关联。
这里是链接问题:
Undefined symbols for architecture armv7:
"typeinfo for std::codecvt<wchar_t, char, __mbstate_t>", referenced from:
typeinfo for boost::filesystem::detail::utf8_codecvt_facet in boost(utf8_codecvt_facet.o)
"std::codecvt<wchar_t, char, __mbstate_t>::~codecvt()", referenced from:
boost::filesystem::detail::utf8_codecvt_facet::~utf8_codecvt_facet() in boost(utf8_codecvt_facet.o)
boost::filesystem::detail::utf8_codecvt_facet::~utf8_codecvt_facet() in boost(utf8_codecvt_facet.o)
"VTT for std::istream", referenced from:
boost::cpp_regex_traits<char>::toi(char const*&, char const*, int) const in boost(instances.o)
"std::numpunct<char>::id", referenced from:
boost::cpp_regex_traits<char>::toi(char const*&, char const*, int) const in boost(instances.o)
我已按照此sample
创建了cmake项目有人有线索吗?
答案 0 :(得分:0)
谢谢大家,
我解决了只需添加标志“-stdlib = libc ++”(如ComicSansMS建议,谢谢)和命令include_directories($ {Boost_DIR})到CMakeLists.txt
感谢 罗伯特