2017-02-19 6 views
2

У меня возникли проблемы с добавлением внешней библиотеки в мой проект в CLion, и все, что я нашел по этой теме, на самом деле не вызвало меня.Как добавить проклятия в cmake?

Я эти файлы добавлены:

include/curses.h 
include/panel.h 
lib/pdcurses.lib 
cmake-build-debug/pdcurses.dll 

Я также добавил файлы в мою папку MinGW в случае, если кто-нибудь ищет там ... Да, я потерял.

Как мой CMakeLists.txt нужно искать это? Пробовал так много, но так как я действительно не знаю, как это сделать, я не могу заставить его работать.

В настоящее время он смотрит как этот

cmake_minimum_required(VERSION 3.6) 
project(113_curses) 

set(CMAKE_CXX_STANDARD 11) 
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -lpdcurses") 
set(SOURCE_FILES main.cpp) 

add_executable(113_curses ${SOURCE_FILES}) 

include_directories(${MY_SOURCE_DIR}/include) 
link_directories(${MY_SOURCE_DIR}/lib) 
target_link_libraries(113_curses pdcurses.lib) 

Ошибки

[ 50%] Linking CXX executable 113_curses.exe 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../lib/pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../lib/pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../lib\pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../..\pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../lib/pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../lib/pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../lib\pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: skipping incompatible C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../..\pdcurses.lib when searching for -lpdcurses 
C:/Tools/mingw-w64/x86_64-6.3.0-win32-seh-rt_v5-rev1/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/6.3.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lpdcurses 
collect2.exe: error: ld returned 1 exit status 
CMakeFiles\113_curses.dir\build.make:96: recipe for target '113_curses.exe' failed 
CMakeFiles\Makefile2:66: recipe for target 'CMakeFiles/113_curses.dir/all' failed 
mingw32-make.exe[2]: *** [113_curses.exe] Error 1 
Makefile:82: recipe for target 'all' failed 
mingw32-make.exe[1]: *** [CMakeFiles/113_curses.dir/all] Error 2 
mingw32-make.exe: *** [all] Error 2 
+1

Вы должны быть в состоянии использовать только 'модуль FindCurses'. .. https://cmake.org/cmake/help/v3.0/module/FindCurses.html –

+0

Как 'find_package (Curses REQUIRED)'? Пробовал это раньше: 'НЕ мог найти Curses (отсутствует: CURSES_LIBRARY)' – sezi80

+0

@ sezi80 вы установили ncurses? –

ответ

0

Вам нужно добавить:

include_directories(/path/to/curses/include) 
+0

это не то, что я сделал с 'include_directories ($ {MY_SOURCE_DIR}/include)', так как я помещал файлы в папку проекта? – sezi80

+0

Это файлы заголовков - ваш проект. Вы также должны указать компилятор на расположение заголовков библиотек. –

Смежные вопросы