jrtplib-3.9.0
的編譯,終於搞通了。網上蒐集了很多資料,自己也除錯了很久。
首先,jrtplib-3.9.0是什麼不用多說吧,它是乙個很牛的老外用c++寫的乙個開源的rtp協議庫,用它可以進行資料的實時傳輸。rtp是實時傳輸協議的簡稱,由最新的rfc3550文件進行規範。
jrtplib-3.9.0和jthread-1.3.0。
cmake 2.8,並安裝了。
3、解壓jthread-1.3.0.zip,拷貝到假設為d盤。開啟cmake 2.8,如圖設定好源路徑d:\jthread-1.3.0和目標路徑d:\jthread,然後configure,後generate,就會在d:\jthread中生成vs2008的工程了。
4、開啟d:\jthread中的jthread.sln,右鍵工程管理檢視中的install,選擇重新生成。ok,在c:\program files\jthread中就生成了我們需要的jthread_d.lib,和相應的標頭檔案了,再設定生成release版的jthread.lib,不用我說了吧。
接下來就是編譯jrtplib-3.9.0,實在是很麻煩。
1、解壓jrtplib-3.9.0.zip吧,拷到d盤。開啟cmake 2.8,如圖設定好源路徑d:\jrtplib-3.9.0和目標路徑d:\jrtplib3.9.0,然後configure,會出現很多錯誤啊,也不是錯誤,就是找不到jthread的標頭檔案、庫檔案和路徑之類的了。鬱悶了很久,胡亂試了一下,按圖中圓圈的地方自己填好路徑吧,再configure一下,ok,沒錯了,再generate啦,就會在d:\jrtplib3.9.0中生成vs2008的工程了。
開啟d:\jrtplib3.9.0中的jrtplib.sln,右鍵工程管理檢視中的install,選擇重新生成,又是一堆的錯誤,其實就是找不到jthread的標頭檔案了,在d:\jrtplib3.9.0\src\中新建乙個jthread資料夾,把c:\program files\jthread\include\jthread標頭檔案都拷進去吧,再重新生成,ok啦,夢魅以求的jthread_d.lib終於在c:/program files/jrtplib中生成了,然後生成release版的就行了。
弄了這麼久,好像不是很複雜哦,要知道這些可花了我一天時間啊,天啊!!!!!
接來就是執行jrtplib3.9.0自帶的example1.cpp了。
1、本人是先把c:/program files/jrtplib和c:\program files\jthread中的標頭檔案和庫文庫分別拷到一起了,就是新建乙個資料夾如c:/rtp,裡面再建兩個include和lib,把頭檔案和庫檔案分別拷進去吧。
2、然後用vs2008新建乙個空的控制台工程了,設定好目錄了c:/rtp/include和c:/rtp/lib
,把example1.cpp加到工程中來。除錯執行,一堆鏈結錯誤。沒有設定為:多執行緒除錯 dll (/mdd),這個是在:專案屬性->c/c++->**生成->執行時庫中設定了。好,再執行,ok啦!!!
4、執行完後,會有兩個警告資訊,說jthread的除錯資訊不可用,這是因為我們沒有把jthread_d.pdb拷到c:/rtp/lib中了,這個jthread_d.pdb是要到d:\jthread\src\debug中找的,在生成的c:\program files\jthread\lib資料夾中是沒有的。再執行,沒警告了。
大功造成,後面要用好這個庫,大家一起學習吧,任重道遠啊!!!
下面再貼一下我參考的部落格吧:
VS2008編譯問題!
vs2005鏈結問題 lnk2005錯誤 error lnk2005 free 已經在 libcmtd.lib dbgheap.obj 中定義 以前經常遇到這個警告資訊,因為執行並沒有什麼問題,所以也沒深究。但是耿耿於懷那個 0 個錯誤,0 個警告 的成功提示,在網上搜了一下。原來問題出在預設庫的引...
vs2008 編譯驅動
一 c c 屬性設定 1.新增包含檔案 wdk inc crt wdk inc api wdk inc ddk 2.設定目標平台 preprocessor x86 3.修改呼叫約定為 stdcall gz 4.執行時庫選擇 多執行緒除錯 mtd 或者多執行緒 mt 基本執行時檢查 預設值 二 lin...
VS2008編譯問題
將之前版本的程式拿來用vs2008重新編譯發現好多編譯問題,比如 1 提示 fatal error c1083 cannot open include file mclmcrrt.h no such file or directory 試試 該vs2008的程式使用的matlab的庫,預設的vs d...