SensorSDK Windows 下的編譯方法

2021-10-07 17:01:25 字數 1321 閱讀 4453

由於sensorsdk中的幾個sample依賴opencv,所以需要將opencv相關的庫包含到專案中來。

具體來說,依賴於opencv_world.dll動態庫。

參考:configure

只需要注意一點,由於samples程式依賴於opencv_world這個總體庫,所以需要在cmake中勾選 build_opencv_world這個選項 如下圖所示:

然後在彈出的編譯選項框中選擇生成vs2019 64位的專案即可。

generate

無特殊要求

在cmake中執行generate後,會生成opencv.sln解決方案,直接開啟這個解決方案,

分別編譯debug x64版本,和 release x64版本。編譯完成之後,會在分別在bin目錄下和lib目錄下生成兩個資料夾debug,release。 bin目錄下儲存的各個模組的動態庫包括opencv_world430d.dll, lib目錄下儲存的是lib庫,如opencv_world430d.lib。

最重要的一點就是在configure的時候,把opencv_dir這個變數指向上面opencv的編譯結果中(即上面提到的bin和lib這兩個目錄所在的目錄), 我的目錄是d:/code2020/opencv-4.3.0/build/vs2019。

有兩種方法指定,一是在環境變數中新增opencv_dir環境變數,並將其值設定為d:/code2020/opencv-4.3.0/build/vs2019。 第二種方法是,直接在cmake工具中修改opencv_dir變數的值為d:/code2020/opencv-4.3.0/build/vs2019,如下圖所示。

編譯選項配置時,也是選擇生成vs2019 64位工程。

開啟用cmake生成的obsensor.sln解決方案。選擇 debug,x64.

先通過生成-》重新生成解決方案,整體編譯一遍,第一遍編譯會遇到錯誤(主要問題是找不到obsensord.lib,由於obsensord.lib還沒生成),不要關注。

再次 通過生成-》重新生成解決方案 編譯一遍就可以編譯成功。

期間還有編譯unit_tests project時,找不到obsensord.lib。手動在unit_tests project 屬性中

附加目錄下增加d:/code2020/orbbecsensorsdk/obsensor/build/lib/debug 這條配置,讓其可以找到obsensord.lib就行。

Linux下編譯安裝 tgz rpm的常用方法

tgz檔案是linux下的一種壓縮檔案格式 如windows下的.rar或.zip 必須先解壓出來,然後配置安裝,可以使用命令 1.解壓縮到當前目錄 tar xvfz 軟體名.tgz 要解壓縮python 3.6.1 就是 tar xvfz python 3.6.1.tgz 解壓縮之後在當前目錄生成...

ATL編譯時只能用debug編譯的解決方法

用其他的方式編譯都出現下面的錯誤 libcmt.lib fpinit.obj error lnk2005 fltused already defined in stdafx.obj libcmt.lib fpinit.obj warning lnk4006 fltused already defin...

ATL編譯時只能用debug編譯的解決方法

用其他的方式編譯都出現下面的錯誤 libcmt.lib fpinit.obj error lnk2005 fltused already defined in stdafx.obj libcmt.lib fpinit.obj warning lnk4006 fltused already defin...