解決CMAKE編譯第三方開源軟體需要下載的問題

YuboonaZhang發表於2019-02-16

本人長期出售超大量微博資料、旅遊網站評論資料,並提供各種指定資料爬取服務,Message to YuboonaZhang@Yahoo.com。同時歡迎加入社交媒體資料交流群:99918768

解決CMAKE編譯第三方開源軟體需要下載的問題

經常會出現這種問題:我們從github上面下載了一些開源軟體,但是這個開源軟體本身其實是會下載很多其他開源軟體,編譯後作為軟體的一部分。
看起來好像沒什麼問題,但是有時候這個下載很耗時間,讓整個安裝變得很慢,它本身的這個下載過程下載東西真的很不穩定。所以就導致了有可能的安裝失敗。重新多次安裝又要多次下載,這個過程真的很浪費時間和網路資源硬碟資源。

解決方案

通過對於我最近使用的一個軟體的cmake過程的研究,發現這個軟體安裝時進行第三方的包的下載的時候,是通過CMAKE自帶的下載和編譯功能進行的。所以為了:

  • 能夠讓下載第三方原始碼的過程被消除
  • 同時為了保證不發生因為下載慢,導致的第三方的開源軟體的編譯的程式競爭,進而導致安裝時的開源軟體之間的互相依賴或者make檔案不存在問題。

–採用網上對於CMAKE過程的修改方法

  1. 將.cmake 檔案中的以下程式碼

    –Download step————–

    DOWNLOAD_DIR ${SB_DOWNLOAD_DIR}
    URL https://github.com/gflags/gfl…
    URL_MD5 5cb0a1b38740ed596edb7f86cd5b3bd8
    部分更改為

    –Download step————–

    DOWNLOAD_COMMAND “”

  2. 同時,將src(這個檔案是原本解壓下載的第三方原始碼source的地方,具體名稱要看CMakeLists.txt中SOURCE_DIR的設定)中的各個第三方原始碼都解壓好,放到src對應的資料夾中。

結果:這樣整個程式編譯第三方開源軟體的編譯過程就可以直接呼叫src目錄中我們早就自己下載好的原始碼進行安裝了

個人部落格

8aoy1.cn

相關文章