JakobOvrum/LuaD

Can't build example using dub

Closed this issue · 2 comments

I've created an empty DUB project, added luad as dependency, and copy-pasted the following code:

import luad.all;

void main()
{
	auto lua = new LuaState;
	lua.openLibs();

	auto print = lua.get!LuaFunction("print");
	print("hello, world!");
}

The error:

WARNING: A deprecated branch based version specification is used for the dependency luad. Please use numbered versions instead. Also note that you can still use the dub.selections.json file to override a certain dependency to use a branch instead.
Performing "debug" build using gdc for x86_64.
luad ~master: target for configuration "library" is up to date.
ltest ~master: building configuration "application"...
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad4base9LuaObject6__ctorMFNcPS4luad1c3lua9lua_StateiZS4luad4base9LuaObject': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/base.d:66: undefined reference to luaL_ref'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad4base9LuaObject9checkTypeFPS4luad1c3lua9lua_StateiiPxaZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/base.d:79: undefined reference to luaL_error'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad4base9LuaObject10__postblitMFNeZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/base.d:87: undefined reference to luaL_ref'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad4base9LuaObject6__dtorMFNbNeZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/base.d:92: undefined reference to luaL_unref'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_argcheck': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:143: undefined reference to luaL_argerror'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_checkstring': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:145: undefined reference to luaL_checklstring'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_optstring': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:147: undefined reference to luaL_optlstring'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_checkint': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:149: undefined reference to luaL_checkinteger'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_optint': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:151: undefined reference to luaL_optinteger'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_checklong': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:153: undefined reference to luaL_checkinteger'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_optlong': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:155: undefined reference to luaL_optinteger'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_dofile': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:161: undefined reference to luaL_loadfile'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_dostring': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:164: undefined reference to luaL_loadstring'
../../../.dub/packages/luad-master/lib/libluad.a: In function luaL_addchar': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:196: undefined reference to luaL_prepbuffer'
../../../.dub/packages/luad-master/lib/libluad.a: In function lua_ref': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:236: undefined reference to luaL_ref'
../../../.dub/packages/luad-master/lib/libluad.a: In function lua_unref': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/lauxlib.d:239: undefined reference to luaL_unref'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad1c8tostring14luaL_tolstringFPS4luad1c3lua9lua_StateiPmZPxa': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/c/tostring.d:7: undefined reference to luaL_callmeta'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad11conversions9functions9argsErrorFPS4luad1c3lua9lua_StateilZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/conversions/functions.d:32: undefined reference to luaL_error'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad5stack19defaultTypeMismatchFPS4luad1c3lua9lua_StateiiZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/stack.d:188: undefined reference to luaL_error'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad5stack20argumentTypeMismatchFPS4luad1c3lua9lua_StateiiZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/stack.d:194: undefined reference to luaL_typerror'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad5state8LuaState6__ctorMFZC4luad5state8LuaState': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/state.d:44: undefined reference to luaL_newstate'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad5state8LuaState8openLibsMFNeZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/state.d:124: undefined reference to luaL_openlibs'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad5state8LuaState10loadStringMFNexAaZS4luad9lfunction11LuaFunction': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/state.d:215: undefined reference to luaL_loadstring'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad5state8LuaState8loadFileMFNexAaZS4luad9lfunction11LuaFunction': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/state.d:230: undefined reference to luaL_loadfile'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad7testing12unittest_luaFPS4luad1c3lua9lua_StateAyaAyakZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/testing.d:18: undefined reference to luaL_loadbuffer'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad5state8LuaState30__T7doChunkS15luaL_loadstringZ7doChunkMFxAaE4luad5state15LuaErrorHandlerZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/state.d:199: undefined reference to luaL_loadstring'
../../../.dub/packages/luad-master/lib/libluad.a: In function _D4luad5state8LuaState28__T7doChunkS13luaL_loadfileZ7doChunkMFxAaE4luad5state15LuaErrorHandlerZv': /home/myuser/Dokumentumok/D/ltest/../../../.dub/packages/luad-master/luad/state.d:199: undefined reference to luaL_loadfile'
collect2: error: ld returned 1 exit status
gdc failed with exit code 1.

Given examples also doesn't work.
I have liblua5.1-0-dev installed, and it works for C++.

I am no longer able to reproduce this, somehow I got it working back then.