Как мне написать CMake для установки библиотеки?

Вот моя попытка:

IF (NOT WIN32)
  #INSTALL_TARGETS(${LIB_INSTALL_DIR} ${tinyscheme-nix_BINARY_DIR}/libtinyscheme.so)
  #INSTALL(TARGETS ${tinyscheme-nix_BINARY_DIR}/libtinyscheme.so DESTINATION ${LIB_INSTALL_DIR})
ENDIF()

Оба варианта неверны. Я хочу переехать libtinyscheme.so от ${tinyscheme-nix_BINARY_DIR} в /lib или же /lib64, В основном я думаю ${LIB_INSTALL_DIR} обрабатывает это.

Как я могу это сделать? Где моя ошибка?

1 ответ

Решение

Вы, вероятно, хотите FILES версия install здесь вместо TARGETS версия.

TARGETS версия install используется для реальных целей CMake, которые были добавлены с использованием, например, add_library, В этом случае вы будете ссылаться на цель по ее имени, назначенному во время add_library команда, а не его полный путь.

Так что замена TARGETS с FILES в твоей второй команде будет путь туда сюда я думаю.

Для получения полной информации о install команда, запустить:

cmake --help-command install
Другие вопросы по тегам