ubuntu16.04重新安裝PCL[純記錄,無內容]
阿新 • • 發佈:2018-11-27
關於參考連結:
- 執行pcl程式時出現"段錯誤"準備從頭開始安裝pcl 記錄一下
1)我發現我的usr/include裡有pcl-1.7.1 usr/local/include裡有pcl1.8 不知道當初是怎麼安裝的了 但是都有問題
在ubuntu下,直接通過apt-get安裝的軟體一般會在/usr下面 自己編譯安裝的軟體(或者通過一些其他的非官方途徑)會在/usr/local下面 兩個資料夾都是有效的,主要是看路徑配的是哪一個 比如/usr/bin:幾乎所有的系統可執行檔案都會安裝在這裡 /usr/local/bin:則是可以存放一些系統使用者自己特定的可執行檔案,不用擔心會被系統升級之類的行為覆蓋,破壞,這個目錄不是必須的 以PATH舉例來說,如果/usr/local/bin在前面,就會優先選用裡面的對應的檔案來執行;當然一般來說/usr/bin是預設在前面,或者乾脆預設沒有把/usr/local/bin放在路徑裡
2)先在slambook十四講裡的ch5的joinmap裡除錯,正常的操作in CMakeLists.txt
find_package(PCL 1.7 REQUIRED)
include_directories( ${PCL_INCLUDE_DIRS} )
add_definitions( ${PCL_DEFINITIONS} )
3)被選中的是usr/local/include的pcl1.8 cmake ..和make 沒有問題 但是會出現"段錯誤"
4)將CMakeLists.txt改成 用1.7.2的版本試一下
find_package(PCL 1.7.2 EXACT)
報錯:
usr/bin/ld: 找不到 -lvtkproj4
collect2: error: ld returned 1 exit status
CMakeFiles/joinMap.dir/build.make:385: recipe for target 'joinMap' failed
再將CMakeLists.txt改成
find_package(PCL 1.7.2 EXACT) list (REMOVE_ITEM PCL_LIBRARIES "vtkproj4") //應該是高博給的改動方法 include_directories( ${PCL_INCLUDE_DIRS} ) add_definitions( ${PCL_DEFINITIONS} )
cmake和make沒問題了 但是還是段錯誤.
後續到程式碼裡改了,但是完全不清楚程式碼哪裡出問題 懷疑還是像orb-slam2-semantic那樣是別的地方有影響 等改好了再記錄