關於編譯安裝Thrift找不到libthriftnb.a的問題


Thrift 服務端有如下模式:TSimpleServer TThreadpoolServer TThreadedServer TNonblockingServer

NonblockingServer是非阻塞的,編寫非阻塞服務端程序需要鏈接庫libthriftnb.a,即 -lthriftnb

如果找不到libthriftnb.a,可能是以下問題:

1.之前沒有安裝libevent,解決方法是安裝libevent,再重新編譯安裝Thrift

2.安裝libevent,沒有生成libevent動態庫

 

最初遇到這個問題是因為未安裝libevent,但是安裝libevent重新編譯Thrfit仍然沒有thriftnb靜態庫,

比較詫異,經過反復試驗,發現如果沒有libevent動態庫,就不會生成thfirtnb靜態庫

由於編譯安裝第三方庫時,習慣使用--disable-shared僅生成靜態庫,導致了問題的出現

 

另外,在編譯安裝libevent時,configure默認同時生成靜態庫和動態庫

configure -h可以發現默認使用參數--enable-static --enable-shared

 

以上是以Apache Thrift v0.8.0和libevent-2.0.20-stable進行測試得出的結論


免責聲明!

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



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