@XerimHD

Сmake не подключаеться библиотека curses,что делать?

Я хочу в файл main.cpp подключить библиотеку curses и с ней роботать.Ну через cmake у меня что-то не получаеться
Компоновка файлов
659d0ce847d25498444522.jpeg

CMakeLists.txt
cmake_minimum_required(VERSION 3.28)  # Минимальная версия CMake

project(ctest)  # Название вашего проекта


# Указываем путь к заголовочным файлам PDCurses

include_directories(E:/Desktop/school/ctest/lib/PDCurses-3.9)

# Добавляем библиотеку PDCurses
add_library(PDCurses SHARED IMPORTED GLOBAL)
set_target_properties(PDCurses PROPERTIES IMPORTED_LOCATION E:/Desktop/school/ctest/lib/PDCurses-3.9/pdcurses.dll)

# Добавляем ваш исходный файл, использующий curses.h
add_executable(ctest ${SOURCES})

# Указание исходных файлов
set(SOURCES
       
)


 # Линкуем ваш исполняемый файл с библиотекой PDCurses
target_link_libraries(ctest  PRIVATE PDCurses)


Вот что компилятор отправил
PS E:\Desktop\school\ctest\build> cmake -G "MinGW Makefiles" ..
-- Configuring done (0.2s)
CMake Error at CMakeLists.txt:15 (add_executable):
  No SOURCES given to target: ctest


CMake Generate step failed.  Build files cannot be regenerated correctly.
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
@res2001
Developer, ex-admin
Ошибка у вас не про библиотеку, а про
add_executable(ctest ${SOURCES})
Переменная SOURCES не определена там где она используется. Поэтому ctest получается без исходников - собирать нечего.

Вообще обычно подключаю библиотеки через find_package или pkg_check_modules, но для этого надо использовать какую-то среду с пакетным менеджером и возможно поддержкой pkgconfig. Под виндой можно использовать msys2+mingw например - там все это есть. Или vcpkg для MSVS (или что там сейчас актуальное, не отслеживаю).
Ваш вариант подключения то же должен работать, но надо еще указать путь к заголовочным файлам, чтоб было совсем красиво. Подобный способ не переносим, стоит поискать альтернативу.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы