2010-10-16 62 views
4

當涉及到使用Visual Studio進行鏈接和構建時,我是一個完全noob。我想將Lua整合到我的C++控制檯應用程序中。從Visual Studio開始構建/運行Lua

有人可以一步一步地介紹如何從lua.org獲取Lua依賴關係,實際運行VS中的「來自Lua的Hello World」以及其間的所有步驟。

在網上找到這樣的東西非常困難,因爲大多數需要建立Lua等的必備知識。

謝謝:)

+0

猜猜看,它*實際*確實需要有關如何構建程序的先決知識。發佈一條錯誤消息,這有助於我們幫助您,而不是期待我們引用50章章節中各章的隨機片段。記錄你的問題。 – 2010-10-17 00:18:25

+0

添加到建築物Lua實際上很簡單,即使在VS.由於沒有真正的C/C++經驗,也沒有任何VS經驗,所以我確實做了幾年前的問題。你可能想要照顧的第一步是學習一些C++,因爲這可能會阻止你自己做這件事。即使如此,我還是擔心會選擇用一種你並不熟悉的低級語言來編寫腳本語言庫。 – Stigma 2010-10-17 06:22:15

+3

除此之外,學習如何通過例子_actually_構建程序的工作得很好,問題突然顯得有效。沒有什麼比googling尋求幫助更糟糕,只是爲了找到像「使用谷歌」這樣的答案。這就像一個沒有退出條件的遞歸函數。 – 2012-02-26 13:59:25

回答

3

Lua for Windows包開始。它會給你一個包含Lua安裝的獨立電池。適用於Windows的Lua不是官方發行版,但它受到Lua用戶社區的好評。您可以使用其lua.exe獲得Windows環境下的語言體驗,並且還可以使用其豐富的經過測試的擴展模塊。

如果您將其includelib文件夾添加到您的VS項目配置中,您應該能夠在短時間內對Lua進行編譯和鏈接。

一個可能的複雜情況是LfW分發是針對VC8的C運行時庫構建的。如果這成爲問題,那麼你可以將Lua作爲你的解決方案的一部分編譯,或者從Lua Binaries項目中獲得一個與你的特定版本的Visual Studio相匹配的已知良好的DLL。

請記住,如果您正在使用其中一個分佈式DLL,它將被編譯爲C,而不是C++。這意味着你必須必須包含對extern "C" {...}中的Lua包含文件的任何引用,否則你將會遇到鏈接問題。

這對VS項目配置和建設有一定的幫助。特別是,在VS項目中混合使用C和C++的經驗非常有幫助。

1

我衷心推薦以下關於學習C和C++的建議,並將兩者混合在一起。一旦你有了這些,你可能想要檢查出LuaBindLuaPlus連接C++和Lua。你可以手動完成(你可能應該首先理解底層的情況),但是使用其中一個綁定庫會更高效,更清晰,更具代碼性。出於調試目的,Decoda是一個不錯的選擇;它可以附加到在VS中開始的包含你想檢查的Lua代碼的進程。

相關問題