簡體   English   中英

法蘭對Matlab的依賴-MEX

[英]flann dependency to matlab - MEX

當我嘗試從ubuntu機器上的源代碼安裝flann庫時,遇到以下錯誤。

/ flann-master / src [72] mkdir構建

/ flann-master / src [73]光盤生成

/ flann-master / src / build [74] cmake ..

位於cpp / CMakeLists.txt:3(add_definitions)的CMake警告(dev):未設置策略CMP0005:預處理程序定義值現在自動轉義。 運行“ cmake --help-policy CMP0005”以獲取策略詳細信息。 使用cmake_policy命令設置策略並禁止顯示此警告。 此警告是針對項目開發人員的。 使用-Wno-dev禁止它。

在cpp / CMakeLists.txt:114上的CMake錯誤:(安裝):為共享庫目標“ flann_cpp”提供沒有庫目標的安裝目標。

CMakeLists.txt中的CMake警告(dev):不存在cmake_minimum_required命令。 一行代碼,例如

cmake_minimum_required(版本2.8)

應該添加到文件的頂部。 如果您希望此項目支持較舊的CMake版本,則指定的版本可能會更低。 有關更多信息,請運行“ cmake --help-policy CMP0000”。 此警告是針對項目開發人員的。 使用-Wno-dev禁止它。

-配置不完整,發生錯誤!

/ flann-master / src / build [75]

在另一個問題中提到了解決方案。 我應該在根目錄中(包含bin,src,examples等),它已經解決了。 在文檔中還有另一個我應該運行的部分

進行安裝

由於我在遠程計算機上更慢,因此需要將其安裝在主目錄中。 因此,我在flann(flanninstall)之外創建了一個新目錄,並嘗試使用以下命令。

cmake -DCMAKE_INSTALL_PREFIX = / home / eson / matlab / flanninstall / ..

我希望它可以幫助我在主目錄中生成文件,並且可以將其復制或鏈接到matlab。 但是,我將文件從該地址復制到正在使用matlab編寫腳本的當前目錄中。 我仍然低於錯誤。

-> g ++-4.4 -c -I / usr / local / MATLAB / 2012a / extern / include -I / usr / local / MATLAB / 2012a / simulink / include -DMATLAB_MEX_FILE -ansi -D_GNU_SOURCE -fPIC -fno-omit-frame-指針-pthread -DMX_COMPAT_32 -O -DNDEBUG“ nearest_neighbors.cpp”

最近的鄰居:cpp:35:致命錯誤:flann / flann.h:沒有終止此類文件或目錄的編譯。

混合:編譯““ nearest_neighbors.cpp””失敗。

使用mex時出錯(第206行)無法成功完成。

較早的@rayryeng幫助我進行了MEX設置,但是當我嘗試在命令下運行時,遇到了較早的問題。

混合-v -O最近的鄰居.cpp

感謝您的建議。

我剛剛發現我需要在Linux中為我的用戶設置LD_LIBRARY_PATH。 該命令將是:

導出LD_LIBRARY_PATH =“ / home / eson / alg / matlab / flanninstall / lib:$ LD_LIBRARY_PATH”

如果您在計算機上具有root用戶訪問權限或sudo訪問權限,則此路徑與應添加的常規路徑不同。 那將類似於下面的代碼:

導出LD_LIBRARY_PATH =“ / Your_build / build / lib:$ LD_LIBRARY_PATH”

上面的路徑可能不完全正確,因為它可能是以/ usr / local /或/ usr / include /開頭的。 如果我了解一般情況的確切路徑,或者其他人有完整的答案,則將對其進行更新。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM