@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.
  • Вопрос задан
  • 181 просмотр
Решения вопроса 1
@res2001
Developer, ex-admin
Ошибка у вас не про библиотеку, а про
add_executable(ctest ${SOURCES})
Переменная SOURCES не определена там где она используется. Поэтому ctest получается без исходников - собирать нечего.

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

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

Похожие вопросы
CTRL+ Москва
от 250 000 до 320 000 ₽
CTRL+ Москва
от 200 000 до 300 000 ₽
CTRL+ Белград
от 250 000 до 320 000 ₽
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект
21 нояб. 2024, в 22:21
3000 руб./в час