.png)
我是最近轉換的 Linux 用戶,運行 Pop!_OS 22.04。我正在嘗試建立SlackLogViewer這是一個C++程序,使用Qt6。為了做到這一點,我必須建立一個依賴項,QuaZIP,指定我正在使用 Qt6,並且~/quazip6/
由於缺乏其他想法而將其放入。
現在,當為 SlackLogViewer 執行 cmake 指令時,我遇到了幾個問題。
- quazip qt6 cmake 檔案呼叫另一個 quazip cmake 檔案但找不到它
CMake Error at /home/chaossature/quazip6/quazip/QuaZip-Qt6Config.cmake:29 (include):
include could not find requested file:
/home/chaossature/quazip6/quazip/QuaZip-Qt6_SharedTargets.cmake
Call Stack (most recent call first):
CMakeLists.txt:50 (find_package)
實際上,有一個具有這樣名稱的文件,但它位於/home/chaossature/quazip6/quazip/CMakeFiles/Export/lib/cmake/QuaZip-Qt6-1.4/QuaZip-Qt6_SharedTargets.cmake
.在引用該文件的 cmake 檔中,相關行是include("${CMAKE_CURRENT_LIST_DIR}/QuaZip-Qt6_SharedTargets.cmake")
.
我不熟悉 cmake,但我嘗試將該路徑替換為${CMAKE_CURRENT_LIST_DIR}/CMakeFiles/Export/lib/cmake/QuaZip-Qt6-1.4/QuaZip-Qt6_SharedTargets.cmake
指向正確的文件,這確實使我擺脫了錯誤。
現在
QuaZip-Qt6-1.4/QuaZip-Qt6_SharedTargets.cmake
呼叫位於 的檔案/home/chaossature/quazip6/quazip/CMakeFiles/Export/lib/libquazip1-qt6.so.1.4
。這樣的檔案再次存在...但這次它實際上位於根目錄,IE在 中quazip6/quazip/
,這讓我相信我通過手動更改第一個 cmake 文件破壞了某些東西。我還嘗試將第一個文件移動到第一個有問題的 cmake 所查看的位置,而不是更改 cmake 文件,但這會導致許多其他路徑問題。
我相信我安裝 QuaZIP 的方式(我已經習慣了我見過的幾個 cmake 文件,/usr/lib/x86_64-linux-gnu/cmake/
但我不確定我是否應該在那裡構建東西)或某些環境出了問題變量,但我對linux 或cmake 文件不夠熟練,無法嘗試比上面列出的更多的東西。我在這兩個程式的 github 頁面上找不到任何類似的問題,這讓我相信問題出在我的椅子和顯示器之間...