On Tue, Jun 29, 2010 at 6:05 PM, Jim Whitehead II <[email protected]> wrote: > On Tue, Jun 29, 2010 at 6:01 PM, Hisham <[email protected]> wrote: >> On Tue, Jun 29, 2010 at 12:14 PM, Jim Whitehead II <[email protected]> >> wrote: >>> On Sat, Jun 19, 2010 at 9:21 PM, Jim Whitehead II <[email protected]> >>> wrote: >>>> I'm trying to work with one of the homebrew developers in order to get >>>> Lua and Luarocks playing together nicely when using that package >>>> management software. Right now they both install correctly and I am >>>> able to install rocks without any issue. The problem comes in when I >>>> actually try to require one of the modules: >>>> >>>> $ luarocks install lpeg >>>> Installing http://luarocks.org/repositories/rocks/lpeg-0.9-1.src.rock... >>>> Archive: /tmp/luarocks_luarocks-rock-lpeg-0.9-1-8069/lpeg-0.9-1.src.rock >>>> inflating: lpeg-0.9-1.rockspec >>>> inflating: lpeg-0.9.tar.gz >>>> Do not use 'module' as a build type. Use 'builtin' instead. >>>> export MACOSX_DEPLOYMENT_TARGET=10.3; gcc -O2 -I/usr/local/include -c >>>> lpeg.c -o lpeg.o >>>> export MACOSX_DEPLOYMENT_TARGET=10.3; gcc -bundle -undefined >>>> dynamic_lookup -all_load -o lpeg.so -L/usr/local/lib lpeg.o >>>> Updating manifest for /usr/local/lib/luarocks/lib/luarocks/rocks >>>> >>>> $ lua -lluarocks.loader -llpeg >>>> lua: /usr/local/share/lua/5.1/luarocks/loader.lua:95: error loading >>>> module 'lpeg' from file >>>> '/usr/local/lib/luarocks/lib/lua/5.1//lpeg.so': >>>> dlopen(/usr/local/lib/luarocks/lib/lua/5.1//lpeg.so, 2): Symbol >>>> not found: _luaL_addlstring >>>> Referenced from: /usr/local/lib/luarocks/lib/lua/5.1//lpeg.so >>>> Expected in: dynamic lookup >>>> >>>> stack traceback: >>>> [C]: in function 'loader' >>>> /usr/local/share/lua/5.1/luarocks/loader.lua:95: in function >>>> </usr/local/share/lua/5.1/luarocks/loader.lua:91> >>>> (tail call): ? >>>> [C]: ? >>>> [C]: ? >>>> >>>> Anyone possibly able to help me out with why this is happening? I do >>>> have the Lua library installed at /usr/local/lib/liblua.a although it >>>> is a symbolic link. The issue is the same with any module that calls >>>> into liblua. >>> >>> Anyone who knows more about these things around to help me work this out? >> >> The .a file is the static library, so it won't help at dynamic lookup. >> I don't remember the OSX specifics, but the usual method is to compile >> the Lua executable so that it exposes its symbols to modules, so it's >> probably best to check your Lua compilation flags. > > Thanks, I'll look at this and see if I can't make it work. > >> This also grabbed my attention: >> "/usr/local/lib/luarocks/lib/luarocks/rocks" -- is LuaRocks being >> installed with /usr/local/lib/luarocks as a prefix? If you use >> /usr/local you shouldn't need to use -lluarocks.loader. > > It's installed to a subdirectory of /usr/local. I could explain, but > it's probably best just to look at Homebrew if you're really that > interested =)
Lua 5.1.4 compiles to a .a by default, and luarocks compiled packages seem to be able to handle this just fine, so I can't imagine that's the issue. Even if I compile Lua and Luarocks and install them, but have my rocks-tree elsewhere this seems to work outside of Homebrew. I also don't see anything odd going on in either of those formulas that would cause this to be weird.. - Jim _______________________________________________ Luarocks-developers mailing list [email protected] http://lists.luaforge.net/cgi-bin/mailman/listinfo/luarocks-developers
