Output of awesome --version:
N/A problem with building. Happens with Awesome 4.1, also did with 4.0 a few days ago.
I'm on Linux Mint 18.1
How to reproduce the issue:
tar xvfj awesome-4.1.tar.bz2cd awesome-4.1makeActual result:
Running cmakeā¦
-- git -> /usr/bin/git
-- asciidoc -> /usr/bin/asciidoc
-- xmlto -> /usr/bin/xmlto
-- gzip -> /bin/gzip
-- ldoc not found.
-- ldoc.lua not found.
-- Not generating API documentation. Missing: ldoc.
-- convert -> /usr/bin/convert
-- Using version from /home/jade/src/awesome-4.1/.version_stamp: v4.1
-- Checking for module 'glib-2.0'
-- Found glib-2.0, version 2.48.2
-- Checking for module 'gdk-pixbuf-2.0'
-- Found gdk-pixbuf-2.0, version 2.32.2
-- Checking for module 'cairo'
-- Found cairo, version 1.14.6
-- Checking for module 'x11'
-- Found x11, version 1.6.3
-- Checking for module 'xcb-cursor'
-- Found xcb-cursor, version 0.1.1
-- Checking for module 'xcb-randr'
-- Found xcb-randr, version 1.11.1
-- Checking for module 'xcb-xtest'
-- Found xcb-xtest, version 1.11.1
-- Checking for module 'xcb-xinerama'
-- Found xcb-xinerama, version 1.11.1
-- Checking for module 'xcb-shape'
-- Found xcb-shape, version 1.11.1
-- Checking for module 'xcb-util>=0.3.8'
-- Found xcb-util, version 0.4.0
-- Checking for module 'xcb-keysyms>=0.3.4'
-- Found xcb-keysyms, version 0.4.0
-- Checking for module 'xcb-icccm>=0.3.8'
-- Found xcb-icccm, version 0.4.1
-- Checking for module 'xcb-xkb'
-- Found xcb-xkb, version 1.11.1
-- Checking for module 'xkbcommon'
-- Found xkbcommon, version 0.5.0
-- Checking for module 'xkbcommon-x11'
-- Found xkbcommon-x11, version 0.5.0
-- Checking for module 'cairo-xcb'
-- Found cairo-xcb, version 1.14.6
-- Checking for module 'libstartup-notification-1.0>=0.10'
-- Found libstartup-notification-1.0, version 0.12
-- Checking for module 'xproto>=7.0.15'
-- Found xproto, version 7.0.31
-- Checking for module 'libxdg-basedir>=1.0.0'
-- Found libxdg-basedir, version 1.2.0
-- Checking for module 'xcb-xrm'
-- Found xcb-xrm, version 1.2
-- checking for execinfo -- found
-- checking for round -- in libm
-- busted not found.
-- luacheck not found.
-- Package version will be set to 4.1.0.0.
-- rpmbuild -> /usr/bin/rpmbuild
-- rpmbuild found, enabling RPM for the 'package' target
-- dpkg -> /usr/bin/dpkg
-- dpkg found, enabling DEB for the 'package' target
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jade/src/awesome-4.1/.build-starchild-x86_64-linux-gnu-5.4.0
Running make Makefileā¦
Buildingā¦
[ 0%] Built target lgi-check
[ 3%] Built target generate_awesomerc
[ 5%] Built target generated_sources
[ 6%] Linking C executable awesome
/usr/bin/ld: /usr/local/lib/liblua.a(loadlib.o): undefined reference to symbol 'dlclose@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libdl.so.2: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
CMakeFiles/awesome.dir/build.make:1112: recipe for target 'awesome' failed
make[3]: *** [awesome] Error 1
CMakeFiles/Makefile2:100: recipe for target 'CMakeFiles/awesome.dir/all' failed
make[2]: *** [CMakeFiles/awesome.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make[1]: *** [all] Error 2
Makefile:27: recipe for target 'cmake-build' failed
make: *** [cmake-build] Error 2
Expected result:
A clean exit from CMake, ready for me to make install
I have searched around for this issue and it did come up once in #361 so I tried running CMAKE_ARGS="-DLUA_LIBRARY=/usr/local/lib/liblua.a\;dl" make but then I get:
...
Running make Makefileā¦
Buildingā¦
[ 0%] Built target lgi-check
[ 3%] Built target generate_awesomerc
[ 5%] Built target generated_sources
make[3]: *** No rule to make target 'dl', needed by 'awesome'. Stop.
CMakeFiles/Makefile2:100: recipe for target 'CMakeFiles/awesome.dir/all' failed
make[2]: *** [CMakeFiles/awesome.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make[1]: *** [all] Error 2
Makefile:27: recipe for target 'cmake-build' failed
make: *** [cmake-build] Error 2
I also saw mentioned some issues with having multiple versions of Lua installed, which I did. I removed all but 5.3 but nothing changed. I then removed 5.3 and tried 5.1 but got the same issue (I have 5.1 still installed now).
In a wild guess, as per #361 mentioning Lua 5.3 using .a instead of .so, I made /usr/local/lib/liblua.so a link to /usr/local/lib/liblua.a but again nothing changed.
Unfortunately I've never worked on the development side of Makefiles so I don't know how to diagnose what's going on.
The problem is due to:
FindLua does not detect a statically built Lua depending on libdl.I have searched around for this issue and it did come up once in #361 so I tried running CMAKE_ARGS="-DLUA_LIBRARY=/usr/local/lib/liblua.a;dl" make but then I get:
Try -DLUA_LIBRARY=/usr/local/lib/liblua.a\;/usr/lib/libdl.so, assuming that is the path to your libdl.
That did it! Thank you!
Most helpful comment
The problem is due to:
FindLuadoes not detect a statically built Lua depending on libdl.Try
-DLUA_LIBRARY=/usr/local/lib/liblua.a\;/usr/lib/libdl.so, assuming that is the path to yourlibdl.