jrtplib-3.9.1 vc6編譯

jrtplib-3.7.1提供了VC6的工程

jrtplib-3.9.1沒提供,自己搭環境發現還有頭文件沒生成好,要CMake
牛的話可以參考CMakeList將XX.h.in改爲xx.h
一番掙扎後放棄了
在網上找到有人用VS2010編譯成功的案例
基本步驟一樣,需要過濾IPV6就可以了(vc6那時候還沒有ipv6,不支持正常)
(編譯這個VC6可能需要升級到SP6,本人不確定)

一 資源下載

安裝cmake

二 JTHREAD編譯
jrtplib依賴jthread,jthread需要先編譯安裝
打開cmake
按下圖設置
jrtplib-3.9.1在VC6.0下編譯 - 幻想少佳 - 幻想少佳的博客

設置好源碼路徑,和目標工程路徑,點擊配置按鈕,選擇VC6,就會生成以下內容

jrtplib-3.9.1在VC6.0下編譯 - 幻想少佳 - 幻想少佳的博客

點擊Generate按鈕,生成工程文件
在工程目錄中用vc6打開,選擇以下項,就會進行編譯
並且會將頭文件和生成的庫拷貝到安裝目錄下(我這裏就是C:\Program Files\jthread)

jrtplib-3.9.1在VC6.0下編譯 - 幻想少佳 - 幻想少佳的博客


三 JRTPLIB編譯
 方法同上,編譯時會發現以下錯誤,問題應該是沒去掉IPV6
jrtplib-3.9.1在VC6.0下編譯 - 幻想少佳 - 幻想少佳的博客
 
jrtplib-3.9.1在VC6.0下編譯 - 幻想少佳 - 幻想少佳的博客

解決方法:
能否使用是根據jrtplib-3.9.1\tools下對應的文件能否編譯通過來判斷支不支持的
修改ipv6test.cpp 只要讓它編譯同不過就行
例:
int main(void)
{
struct sockaddr sa;
sa.sa_len = 0;
struct sockaddr_in6 addr;
addr.sin6_family = PF_INET6;
return 0;
}
菜單欄 file-delete cache 刪除緩衝
重新配置,生成工程文件即可
jrtplib-3.9.1在VC6.0下編譯 - 幻想少佳 - 幻想少佳的博客

5個例子也都可以打開學習
 C:\Program Files\jrtplib
C:\Program Files\jthread
所需頭文件跟lib都會被複制到以上目標,可以加入到自己的項目中

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章