CMake не может найти мою статическую библиотеку по заданному мной путиC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 CMake не может найти мою статическую библиотеку по заданному мной пути

Сообщение Anonymous »

Я пытаюсь собрать двоичный файл из статической библиотеки и файла заголовка. Он прекрасно работает в Windows, но в Linux (Ubuntu 22.04) он работать не хочет.
Это мой файл CMake (я не добавил часть Windows, чтобы было понятнее)

Код: Выделить всё

make_minimum_required(VERSION 3.19)

# Set the project name and C++ standard
project(Main)
set(CMAKE_CXX_STANDARD 17)

# Add the header file directory
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/../src")

# Find the static library
set(SIMPROTOCOL_LIB_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../out/build/linux-release")
find_library(SIMPROTOCOL_LIB NAMES SimLib PATHS ${SIMPROTOCOL_LIB_DIR} NO_DEFAULT_PATH)

set(SOURCE_FILES main.cpp)

# Define the executable that is built from the source file
add_executable(Main${SOURCE_FILES})

target_link_libraries(Main PRIVATE ${SIMPROTOCOL_LIB})
По сути, это говорит

Код: Выделить всё

[cmake] CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
[cmake] Please set them or make sure they are set and tested correctly in the CMake files:
[cmake] SIMPROTOCOL_LIB
Другие примечания:
  • Он создается, когда я вызываю g++ с аргументами и всем, что указывает на файлы заголовков и статическая библиотека
  • В моем пути есть пробелы, но я изменил путь к статической библиотеке на другой, без пробелов, и он не работает с CMake
  • Да, я проверил путь к статической библиотеке, путь правильный
Если это не сработает, я просто создайте Makefile, но я предпочитаю, чтобы он работал с CMake.
Заранее спасибо!

Подробнее здесь: https://stackoverflow.com/questions/783 ... fined-path
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»