2017-04-08 246 views
0

所以我一直想學習C++,我有一個CLion的學生許可證,並熟悉公司的其他軟件,所以我想盡可能使用它。使用MSYS2似乎是一種輕鬆管理庫的好方法,因爲在嘗試使用C++時,這往往是非常糟糕的。
MSYS2看起來很直觀,我設法安裝OpenCV庫作爲測試。但是,我現在完全處於虧損狀態,無法將其與CLion鏈接起來。在CLION中使用安裝MSYS2的庫

我一直在閱讀有關的CMake文件,而這也正是我想應該是我的:

cmake_minimum_required(VERSION 3.7) 
project(letsee) 

set(CMAKE_CXX_STANDARD 11) 

find_package (OpenCV REQUIRED) 

set(SOURCE_FILES main.cpp) 
add_executable(letsee ${SOURCE_FILES}) 
target_link_libraries(letsee ${OpenCV_LIBS}) 

最後一行,但是,應該鏈接是一個環境變量。我明白,MSYS2應該以某種方式處理,或者我應該創建自己的Windows環境變量?無論哪種方式,我甚至不確定我將鏈接這樣的變量。這一點我非常困惑。沒有人能夠用40年前的語言創建一種直觀的方式在窗口中處理這個問題。

+1

'OpenCV_LIBS'是一個CMake變量,它應該由'find_package'設置。可能CLion不會對msys2執行「正確的方式」,所以它找不到OpenCV軟件包。 –

+0

你是什麼意思「MSYS安裝」庫?你有沒有可能通過執行「configure&make&make install」來安裝它們?您關於「MSYS是輕鬆管理庫的好方法」的陳述非常混亂,因爲MSYS一直恰恰相反。我不確定clion,cmake和msys是如何集成在一起的,但總的來說,手動管理所有庫(可能是通過將它們並排存放在某種「工作空間」文件夾中)並且依靠安裝和環境儘可能少。 – dodo951

+0

MSYS2允許您使用pacman命令從存儲庫安裝庫。我運行pacman -S *庫的名稱*並運行並安裝。 – Fuujin

回答

2

我剛剛下載並安裝了一切以嘗試它。下面是它如何工作的:

  1. 安裝MSYS2,並按照本教程在其網站上(pacman -Syupacman -Su) - 你可能確實已經
  2. pacman -S mingw-w64-x86_64-toolchain(你可能這樣做太)
  3. pacman -S mingw-w64-x86_64-cmake這是重要的一步。 我們將使用這個CMake的,而不是捆綁的一個,因爲這CMake的工作與MSYS2吃豆子庫
  4. 配置克利翁:MinGW的:C:\msys64\mingw64(或similiar),CMake的:C:\msys64\mingw64\bin\cmake.exe
  5. 克利翁可能會向您發出警告,因爲CMake的/ GDB是太新了。但是,直到現在我還沒有遇到過任何問題

編輯:我實際上也使用捆綁的CMake測試了它,現在它也可以工作,開箱即用。所以不知道爲什麼它不適合你。