#c #cmake #mingw
#c #cmake #mingw
Вопрос:
Я выбивался из сил из-за CMakelists.txt . Я хотел бы создать приложение на C с библиотеками GLFW, GLEW, используя MinGW и CLion IDE.
Вот мой CMakeLists.txt:
cmake_minimum_required(VERSION 3.17.3)
project(imguiTask)
set(CMAKE_CXX_STANDARD 17)
add_compile_options(-DGLEW_NO_GLU)
add_executable(${PROJECT_NAME}
src/main.cpp
src/imgui.cpp
src/imgui_draw.cpp
src/imgui_widgets.cpp
)
target_include_directories(${PROJECT_NAME} PUBLIC includes)
add_library(libraries STATIC IMPORTED)
target_link_libraries(${PROJECT_NAME} glfw3)
Я поместил необходимые библиотеки в libraries
папку, как вы можете видеть на картинке. Папка находится в корне проекта. Это выдает мне следующую ошибку:
d:/mingw/bin/../lib/gcc/mingw32/9.2.0/../../../../mingw32/bin/ld.exe: cannot find -lglfw3
collect2.exe: error: ld returned 1 exit status
mingw32-make.exe[3]: *** [imguiTask.exe] Error 1
mingw32-make.exe[2]: *** [CMakeFiles/imguiTask.dir/all] Error 2
mingw32-make.exe[1]: *** [CMakeFiles/imguiTask.dir/rule] Error 2
mingw32-make.exe: *** [imguiTask] Error 2
Мне кажется, что он не выполняет поиск в указанной мной папке. Я не знаю, почему.
Комментарии:
1.«Мне кажется, что он не выполняет поиск в указанной мной папке». — Я не вижу, в какой строке вашего
CMakeLists.txt
каталога указанlibraries
каталог для поиска библиотек в нем. Такие настройки обычно выполняются с помощьюlink_directories
илиtarget_link_directories
(обратите внимание, что первая должна быть выполнена доadd_executable
того, как /add_library
вы хотите повлиять).2. Спасибо! Я полностью пропустил это.