[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Libqtlua-list] QtLua Build VS2010

From: Jeff Sprenger
Subject: [Libqtlua-list] QtLua Build VS2010
Date: Tue, 23 Jul 2013 15:47:01 -0400
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130620 Thunderbird/17.0.7

I need help building QtLua for Windows.
If you're interested in a Windows build or have done this successfully, please read on.

I am building on Windows7/64 bit, using Visual Studio 2010 professional. I feel like I'm almost there. (I understand if people hate that environment and recommend a g++ linux build or mac build, but this is not a choice for me - it's a requirement)
I cloned the git repository to get a copy of the source.

I've read previous posts by Alexandre Becoulet, Evan Comes and Gedalia P.
AFIK, no one has successfully built QtLua on Windows using Visual Studio and the MS compiler. I tried earlier to build Qtlua using cygwin with CMake and mingw-32, but got nowhere. Seems that cygwin and CMake don't always play well together.


1 b. In the QtLua code, the function State::gc_collect() calls lua_setgcthreshold() if HAVE_LUA_GC is not set. This function exists in Lua 5.1, but for some reason HAVE_LUA_GC is not getting set correctly in the CMake config - not sure why. I can easily work around this.

2. No Exports: Building just the project "qtlua" in Visual Studio does succeed and outputs qtlua.dll but not the import library (qtlua.lib). When I try to build ALL_BUILDS (the other projects that are part of the solution) the builds fail because the other projects can't find qtlua.lib. It seems this happens because there are no EXPORTS in the qtlua.dll. It seems to me that we have to indicate which classes to export by declaring classes / function with __declspec(dllexport)). Either that or supply a .def file indicating a list of EXPORTS.
If anyone can provide guidance here , please do.

Any help is welcome. I will fully document the build process once I get it to work and share it here, so that others do not have to wander through the same abyss.


Jeff S.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]