मैं लूआ 5.1 को अपने एप्लिकेशन की एम्बेडेड स्क्रिप्टिंग भाषा के रूप में चुनता हूं, लेकिन जब मैं एक विरासत मंच पर एप्लिकेशन को पोर्ट करता हूं तो PowerPC पर LynxOS चलाता है, चीज़ गलत हो रही है।लुआ पावरपीसी/लिंक्सोस मंच पर अजीब व्यवहार करता है, क्यों?
मैं पाने कोड निम्नलिखित पीसी पर चलाने के लिए और हर चीज अच्छा लग रहा है:
void test_lua()
{
const char *code = "foo = 5\n";
double vfoo=0;
lua_State *L = luaL_newstate();
(void)luaL_loadbuffer(L, code, strlen(code), "line");
(void)lua_pcall (L, 0, 0, 0);
lua_getglobal(L, "foo");
vfoo = lua_tonumber(L, -1);
lua_close(L);
myTrace("vfoo = %f", vfoo);
for(;;);
}
पीसी (विजुअल C++ 6.0) मैं उम्मीद कर गया साथ
"vfoo = ५.०,००,०००"
लेकिन LynxOS/PowerPC मैं के साथ "vfoo = 0.000000" मिला।
तो लिंक्सोस/पावरपीसी पर लुआ के लिए क्या चल रहा है? मैं सोच रहा हूं कि बड़ी-अंत मशीन के लिए कुछ कॉन्फ़िगरेशन हैं, मैंने इसे "luaconf.h" में देखा लेकिन कुछ भी नहीं मिला। मैंने विन्यास आइटम "LUA_USE_POSIX" भी कोशिश की लेकिन कोई मदद नहीं।
मुझे पता है कि यह लुआ प्रोग्रामिंग के लिए एक सामान्य मंच नहीं है। हालांकि, किसी भी सुझाव का स्वागत है और सराहना की जा रही है।
कोड सही लगता है। मेरा सुझाव है कि आप 'luaL_loadbuffer' और 'lua_pcall' के वापसी मानों की जांच करें और' lua_getglobal' के बाद 'luaL_typename (एल, -1)' प्रिंट करें। – lhf