ifcopenshell在VS2015下的編譯


源起

  今天使用 IfcOpenShell的IfcConvert ,因為是開源的所以就想自己編譯下,編譯過程中遇到不少問題,因此記錄下來

什么是IfcOpenShell?

IfcOpenShell是一個開源(LGPL)軟件庫,可幫助用戶和軟件開發人員使用IFC文件格式。

開始前的准備

   visual studio 2015,設置環境變量  參考
   git,設置環境變量 
   cmake,設置環境變量

  源碼下載 https://github.com/IfcOpenShell/IfcOpenShell

1.執行腳本

  運行cmd腳本不是直接打開windows的cmd運行的,而是打開vs的cmd

  打開VS,工具——>外部工具

  命令是機器上的cmd的地址

C:\Windows\System32\cmd.exe

  參數是vs的VsDevCmd.bat的地址

/k "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsDevCmd.bat"

  初始目錄

D:\ifc\vs\IfcOpenShell\win

  根據實際路徑修改

   點確定后,在工具欄就可以看到了

  打開剛才配置的 Command Prompt

  (1)運行腳本 build-deps

build-deps.cmd "Visual Studio 14 2015 Win64" Debug

  說明:

  可能發生錯誤,大部分原因是網絡情況不好庫文件下載中斷,多運行幾遍,或者翻牆再執行

  (2)運行腳本 run-cmake.bat

run-cmake.bat "Visual Studio 14 2015 Win64"

  默認為支持IFC2X3版本,如果需要IFC4版本

run-cmake.bat "Visual Studio 14 2015 Win64" -DUSE_IFC4=1

   說明:

    如果出現Looking for pthread.h - not found

    原因:build-dep命令下載了icu-58.2-vs2015,但未將其解壓縮到deps-vs2015-x64-installed/icu。這導致run-cmake退出並出現有關UNICODE的錯誤

    解決:

      手動提取icu文件

        deps/icu-58.2-vs2015/include/unicode -> deps-vs2015-x64-installed/icu/include/unicode

        deps/icu-58.2-vs2015/lib64 -> deps-vs2015-x64-installed/icu/lib

  構建生成的文件寫入了build-vs2015-x64中

2.編譯

  IfcOpenShell.sln在build-vs2015-x64中,用VS2015打開

  編譯

  編譯后在 build-vs2015-x64/Debug 下

2.測試

  復制IfcConvert.exe到D:\ifc

  運行 IfcConvert cylinders.ifc cylinders.dae

  查看 cylinders.dae

 注:

  上面生成的為Debug的,如果想生成Release的,步驟為

    (1)build-deps.cmd "Visual Studio 14 2015 Win64" Release

    (2)run-cmake.bat "Visual Studio 14 2015 Win64"

    (3)用VS2015打開IfcOpenShell.sln

    (4)生成

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM