这个问题已经被提出了很多变种,但似乎都没有解决这个问题。我最近从Windows过渡到Mac,并放弃了Windows ppl.h并行工具,并将它们替换为boost / thread.hpp,以便将来更加轻松。但是,我无法获得boost线程来编译。我正在运行boost_1_56_0和Xcode 5.1.1
我下载了boost并在我的Header搜索路径中添加了增强路径,并在编译时导致了这样的错误。我正在使用设置为libc ++的C ++标准库和设置为GNU ++ 11的C ++语言。
/Users/xxxx/Documents/boost_1_56_0/boost/date_time/posix_time/posix_time_duration.hpp:24:21: Implicit conversion loses integer precision: 'long' to 'hour_type' (aka 'int')
/Users/xxxx/Documents/boost_1_56_0/boost/date_time/gregorian_calendar.ipp:82:12: Implicit conversion loses integer precision: 'unsigned long' to 'date_int_type' (aka 'unsigned int')
我看到了通过将C ++标准库更改为libstdc ++和C ++ Language Dialect设置为C ++ 11来解决问题的建议。
现在我收到一个错误:
/Users/xxxx/Documents/boost_1_56_0/boost/thread/detail/move.hpp:31:10: 'type_traits' file not found.
这里问了同样的问题:type_traits file not found (Xcode 5)
提问者找到了修复程序,但我正在运行OSX 10.9.4,我的部署目标是10.9,但问题仍然存在。
我可以使用一些帮助来解决编译器错误,开始将现有程序从ppl移植到boost上。谢谢你的帮助!