天天看點

jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程

前幾天編譯了一個jrtplib的rtp庫,使用的是jrtplib-3.9.1版本的,這個可以直接在官網上下載下傳,這個版本沒有提供vs2010的工程,需要使用cmake生成vs工程,這裡使用的是cmake-3.1.0,此外在jrtplib的官網上下載下傳jthread,這個在編譯jrtplib-3.9.1的靜态lib用不上,但是其中的example工程都使用了,這裡使用的是jthread-1.3.1。這些都是可以免費下載下傳使用的。

在編譯前我也看過網上的一些編譯教程,不過對于我這些第一次使用cmake的人來說,還是遇到了一些問題,生成vs工程失敗了(其實錯誤也可以生成VS工程,不過沒法用),看了一下cmake給出的錯誤,自己修改了CMakeLists.txt檔案,之後才生成了正确的VS工程。

下面給出詳細的生成過程:

首先是生成jthread工程。

設定完源碼路徑以及新的VS工程路徑後,點選Configure,配置需要生成的工程生成器,如下圖,Finish後會自動開始配置。

jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程

之後會看到cmake給出了錯誤,根據錯誤資訊需要去修改CMakeLists.txt檔案,将制定行的RELEASE_LOCATION和DEBUG_LOCATION後面的_LOCATION,隻保留RELEASE和DEBUG,之後再次Configure錯誤就沒有了,點選Generate生成VS2010工程,直接打開VS工程編譯就行。

jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程

src/CMakeLists.txt:53

src/CMakeLists.txt:55

jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程
jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程
jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程
jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程

生成jthread後就是生成jrtplib工程,步驟和jthread的生成基本一樣,其中生成vs工程時cmake也會顯示相同的錯誤,同理打開CMakeLists.txt修改即可。

jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程
jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程
jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程
jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程
jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程

jrtplib工程時可以直接生成的,example工程則要添加jthread lib才能成功編譯。

jrtplib-3.9.1+jthread-1.3.1使用cmake-3.1.0在windows下生成jrtplib的VS2010工程

到這裡就完成了,要想保留生成的工程有些地方還是要注意的。cmake生成的工程大量使用了磁盤絕對路徑,比如說D:\jrtplib\jrtplib-3.9.1,我發現了很多,是以下次要再次使用該工程需要放到相同的磁盤路徑下才能正常編譯。

繼續閱讀