![](/img/trans.png)
[英]undefined reference to `boost::chrono::system_clock::now()' - Boost, and cpp-netlib
[英]Unresolved external symbol boost::chrono::system_clock::now(void)
谷歌一直不友好......
我最近取消了1.50的提升,並且正在嘗試使用它來構建我的項目。 這是一個大型項目,使用了幾個提升功能(線程,信號,指針類,精神等)。 一些細節:
- MSVC 9.0(2008)
- 靜態鏈接提升
我收到一個錯誤鏈接每個結果的exe,但與chrono,我沒有直接鏈接。 錯誤是:
libboost_thread-vc90-mt-sgd-1_50.lib(thread.obj) : error LNK2019: unresolved external symbol "public: static class boost::chrono::time_point<class boost::chrono::system_clock,class boost::chrono::duration<__int64,class boost::ratio<1,10000000> > > __cdecl boost::chrono::system_clock::now(void)" (?now@system_clock@chrono@boost@@SA?AV?$time_point@Vsystem_clock@chrono@boost@@V?$duration@_JV?$ratio@$00$0JIJGIA@@boost@@@23@@23@XZ) referenced in function "public: bool __thiscall boost::thread::try_join_until(class boost::chrono::time_point<class boost::chrono::system_clock,class boost::chrono::duration<__int64,class boost::ratio<1,1000000000> > > const &)" (?try_join_until@thread@boost@@QAE_NABV?$time_point@Vsystem_clock@chrono@boost@@V?$duration@_JV?$ratio@$00$0DLJKMKAA@@boost@@@23@@chrono@2@@Z)
我看到了這個問題 ,但我沒有直接控制鏈接的順序(而是使用自動鏈接功能)。 如果有一個我缺少的特定庫,我可以手動鏈接它; 次優,但可能。 但是,我不知道缺少什么。 看來(在我的半受教育的觀點中)符號在chrono lib中被激活,而不是在系統lib中。
有幫助嗎?
看看文檔 。 它指定你必須鏈接到chrono和system來使用線程,除非你給出一些特定的宏來禁用它們(並失去它們的功能)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.