Thrift第一課源碼編譯

1)字符編碼

為潁泉等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及潁泉網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都做網(wǎng)站、成都網(wǎng)站建設(shè)、潁泉網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!

Thrift采用多字節(jié)的編碼方式,在使用log4cplus進(jìn)行日志管理的時(shí)候,同樣需要編譯一個(gè)多字節(jié)的字符編碼的版本,否則就會(huì)出現(xiàn)log4cplus中無法解析的函數(shù)符號(hào)

 

2)Boost鏈接動(dòng)態(tài)庫

libthrift

要求boost庫的智能指針,線程庫以及l(fā)ibrt

注意:bool interruptible_wait(detail::win32::handle handle_to_wait_for,detail::timeout target_time)懷疑是boost版本之間的問題,主要是原本采用了1.58.0版本,后來使用了1.64.0版本的代碼,初步認(rèn)為是兩者之間的線程代碼出現(xiàn)了分歧,導(dǎo)致無法找到函數(shù)的定義,實(shí)際上并沒有出現(xiàn)這種情況目前采用的boost庫是動(dòng)態(tài)編譯出來的,因此必須指定正確的運(yùn)行時(shí)庫,否則就會(huì)編譯出錯(cuò),調(diào)用boost的動(dòng)態(tài)庫,需要注釋掉上面的兩行代碼,但是在目前來看依舊出現(xiàn)依賴libboost_thread-vc140-mt-sgd-1_64.lib不過從這里其實(shí)已經(jīng)可以看出,調(diào)用的確實(shí)是靜態(tài)庫,其中有s,gd代表的意思是調(diào)試,mt代表多線程,

因此鏈接到boost靜態(tài)庫,說明運(yùn)行時(shí)庫指定的不正確,應(yīng)該指定MDT

詳細(xì)的資料參考如下;

http://www.cnblogs.com/bluedoctor/p/6236905.html

http://blog.csdn.net/xucuiping_/article/details/5979532

In the project properties you must also set HAVE_CONFIG_H 

as force include the config header: "windows/confg.h"

By default lib/cpp/windows/force_inc.h defines:

#define BOOST_ALL_NO_LIB 1

#define BOOST_THREAD_NO_LIB 1

This has for effect to have the host application linking against Thrift to have to link with boost thread as a static library. If you wanted instead to link with boost thread 

as a shared library,you'll need to uncomment those two lines, and recompile.

3)libthriftnb

依賴libevent,因此需要鏈接libevent

 

 

從目前的情況下看,只能夠編譯出靜態(tài)庫版本的thrift,預(yù)示著整一個(gè)工程只能夠鏈接靜態(tài)庫

Depending upon whether you are linkingdynamically or statically and how

your build environment it set up,

you may need to include additional

libraries when linking against thrift,

such as librt and/or libpthread. If

you are using libthriftnb you will alsoneed libevent.

 

http://blog.csdn.net/zengraoli/article/details/51320593

 

究竟在什么地方會(huì)使用到openssl

在編譯對應(yīng)的lib文件時(shí),并不需要引入openssl,僅當(dāng)調(diào)用使用thrift的時(shí)候,加入了頭文件TServerTransport.h才需要到openssl

 

 

參考

http://blog.csdn.net/kuenking111/article/details/47701847

名稱欄目:Thrift第一課源碼編譯
文章位置:http://muchs.cn/article40/piodho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、全網(wǎng)營銷推廣、網(wǎng)站收錄、網(wǎng)站設(shè)計(jì)做網(wǎng)站、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)