Сборка / запуск Lua из Visual Studio - PullRequest
4 голосов
/ 17 октября 2010

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

Может кто-нибудь шаг за шагом рассказать о том, как это сделать, начиная с получения зависимостей Lua от lua.org, до фактического запуска "Hello World from Lua" в VS и всех промежуточных шагов.

Найти что-то подобное в Интернете было очень сложно, так как большинству требуются предварительные знания по созданию Lua и тому подобное.

Спасибо:)

Ответы [ 2 ]

3 голосов
/ 18 октября 2010

Начните с пакета Lua для Windows .Он получит вам автономные батареи, включенные установкой Lua.Lua для Windows не является официальным дистрибутивом, но пользуется уважением сообщества пользователей Lua.Вы можете использовать его lua.exe, чтобы получить опыт работы с языком в среде Windows, и его богатая коллекция протестированных модулей расширения также доступна для использования.

Если вы добавите его папки include и libк конфигурации вашего проекта VS, вы должны быть в состоянии скомпилировать и связать с Lua в короткие сроки.

Одним из возможных осложнений является то, что дистрибутив LfW построен на основе библиотеки времени выполнения C VC8.Если это становится проблемой, то вы можете либо скомпилировать Lua как часть своего Решения, либо получить известную хорошую DLL, соответствующую вашей конкретной версии Visual Studio, из проекта Lua Binaries .

Помните, что если вы используете одну из распределенных библиотек DLL, она будет скомпилирована как C, а не C ++.Это означает, что вы должны обернуть любые ссылки на включаемые файлы Lua в extern "C" {...}, иначе у вас возникнут проблемы со связыванием.

Это действительно помогает иметь некоторый опыт настройки и построения проекта VS,В частности, очень полезен опыт смешивания C и C ++ в проекте VS.

1 голос
/ 20 октября 2010

От всей души рекомендую следовать совету, который уже дан по изучению C и C ++ и совместить их вместе.Если у вас есть это за поясом, вы можете проверить LuaBind или LuaPlus для подключения C ++ и Lua.Вы можете сделать это вручную (и вам, пожалуй, следует сначала понять, что происходит под капотом), но для одной из этих библиотек связывания эффективнее и чище использовать код.В целях отладки Decoda является хорошим выбором;он может подключаться к процессам, запущенным в VS, которые содержат код Lua, который вы хотите проверить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...