Задать вопрос
@Gromer-Top

Как cpp преобразовать в exe?

Как сделать так, чтобы моя программа, могла запуститься на ПК без компилятора.
Вроде с помощью cmake сделал build, а у человека высвечивается ошибка.

Билд здесь:https://github.com/Gromer-Top/rock-paper-scissors.git
Объясните, что не так?

67bb74b3cb65b310441718.jpeg
  • Вопрос задан
  • 58 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
@Mercury13
Программист на «си с крестами» и не только
Ищите этот файл в составе MinGW. Большинство сторонних DLL-библиотек используют данную библиотеку в виде DLL, но для отладки (например, если вылет на грани твоей программы и стандартной библиотеки), или если библиотек нет — можно его вставить в EXE.
Ищите в системе сборки, как добавить ключи:
в компилятор: -static-libgcc -static-libstdc++
в линкер: -static -lpthread

UPD. Вот я собрал мейкфайл. Он при сборке на MinGW будет собирать версию со статически прилинкованными библиотеками.
cmake_minimum_required(VERSION 3.10.0)
project(Game VERSION 0.1.0 LANGUAGES C CXX)

if (MINGW)
    add_compile_options(-static-libgcc -static-libstdc++)
    add_link_options(-static -lpthread)	
    if (CMAKE_BUILD_TYPE STREQUAL "Release")
        add_compile_options(-O3)
        add_link_options(-s)
    endif()
endif()

add_executable(Game main.cpp)
Ответ написан
Nipheris
@Nipheris Куратор тега C++
Райнтайм-зависимости нужно скопировать самому, либо заскриптовать в симейке, либо заскриптовать отдельно.

Непонятно как вы сейчас решаете проблему упаковки вашего приложения в redistributable-пакет. Это само собой не произойдёт, нужно разбираться и делать.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы