Как сделать Single Executable VS 2010 - PullRequest
1 голос
/ 07 марта 2011

Я делаю игру с использованием C ++ и DirectX, и было бы неплохо поделиться результатами своих групп с другими людьми, предоставив один исполняемый файл вместо того, чтобы запускать мастер установки.

Я проверил свои папки Release и Debug, но эти исполняемые файлы не работают.Релиз .exe - что-то вроде 21 КБ, что кажется неправильным.

Так что я думаю, что я спрашиваю, как сделать один исполняемый файл со всеми включенными библиотеками и файлами ресурсов.

Ответы [ 2 ]

3 голосов
/ 07 марта 2011

Если VS2010 похож на VS2008, вам нужно перейти к свойствам проекта / c ++ / генерации кода и выбрать статическую библиотеку времени выполнения.

2 голосов
/ 07 марта 2011

Вы должны указать, что все ваши библиотеки должны быть статически связаны. В Visual Studio есть несколько потоков об этом, например:

Однако для добавленияв связи с этими ответами, имейте в виду, что:

  • У вас должны быть действительные статические библиотеки для связи.Во многих случаях .lib файлы в Windows land являются библиотеками-заглушками, связывающими библиотеку DLL.
  • Возможно, не все, что вам нужно для статической связи, может быть (т.е. вы не найдете его статической библиотеки ссылок)
  • Вам не нужно распространять свой двоичный файл как полностью статически связанный исполняемый файл.Вы можете отправить все зависимые библиотеки в тот же каталог, что и ваш исполняемый файл.Это может упростить совместное использование в будущем, поскольку вам нужно будет только заменить некоторые библиотеки вместо отправки всего файла всем.
...