В качестве начала я хотел бы отметить, что я потратил несколько часов, пытаясь решить проблему без успеха.Я написал небольшой проект с использованием библиотеки wxWidgets для C ++ в Clion на Mac.Поскольку большинство моих одноклассников делали свои проекты в VisualStudio на Windows, никто не мог мне помочь.Проект должен быть сдан в виде исполняемого файла, который будет работать на любом компьютере.Я полагаю, что решение, которое я должен искать, - это статическая компиляция, которая статически связывает все библиотеки с исполняемым файлом.Я попытался добавить некоторые флаги, как показано ниже, в Cmake:
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lpthread")
, но это не помогло.У меня нет абсолютно никаких знаний о том, как работает CMake, и я был бы очень признателен за любую помощь.
Весь файл cmake, который у меня сейчас есть:
cmake_minimum_required(VERSION 3.9)
project(Lab3)
set(EXECUTABLE_NAME "Indexer")
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG")
set(CMAKE_CXX_FLAGS_DEBUG "-g -Wall -Wextra -DWX_PRECOMP")
# set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin)
find_package(wxWidgets COMPONENTS core base REQUIRED)
include(${wxWidgets_USE_FILE})
include_directories(include/ ${wxWidgets_INCLUDE_DIRS})
file(GLOB SOURCES "src/*.cpp")
add_executable(${PROJECT_NAME} main.cpp Source.cpp Source.h)
target_link_libraries(${PROJECT_NAME} ${wxWidgets_LIBRARIES})
РЕДАКТИРОВАТЬ: я думаю, я не указалпроблема достаточно ясно.Программа прекрасно компилируется - все работает.Просто когда я пытаюсь скопировать исполняемый файл (конечное приложение) на другой компьютер, он просто не работает или отображается как текстовый файл с поврежденными символами вместо приложения с графическим интерфейсом и т. Д.