編譯鏈接 protobuf時出現的錯誤


問題描述

1.編譯protobuf的時候會出現鏈接錯誤:

undefined reference to `google::protobuf::Message::SpaceUsedLong() const'

 

2.編譯的時候會出現

terminate called after throwing an instance of 'google::protobuf::FatalException'
  what():  CHECK failed: (scc->visit_status.load(std::memory_order_relaxed)) == (SCCInfoBase::kRunning):
Aborted (core dumped)

 

解決方法

1.鏈接到protobuf靜態庫即可:

g++ -lprotobuf

 

2.初次編譯可能會出現這個問題,需要添加

g++ -lpthread

 

后面編譯就不會出現這個問題,不加pthread也可以編譯通過。

環境

centos 7
libprotoc 3.14.0


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM