| From 1ea2c1e372ab59b9a633a51f0dcefc24328528f1 Mon Sep 17 00:00:00 2001 |
| From: =?UTF-8?q?J=C3=B6rg=20Krause?= <joerg.krause@embedded.rocks> |
| Date: Mon, 10 Sep 2018 08:18:38 +0200 |
| Subject: [PATCH] luvi executable needs to export symbols |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| Using CMake 3.12 running luvi fails with: |
| |
| ``` |
| [string "return require('init')(...)"]:1: module 'init' not found: |
| no field package.preload['init'] |
| no file './init.lua' |
| no file '/usr/share/luajit-2.0.5/init.lua' |
| no file '/usr/local/share/lua/5.1/init.lua' |
| no file '/usr/local/share/lua/5.1/init/init.lua' |
| no file '/usr/share/lua/5.1/init.lua' |
| no file '/usr/share/lua/5.1/init/init.lua' |
| no file './init.so' |
| no file '/usr/local/lib/lua/5.1/init.so' |
| no file '/usr/lib/lua/5.1/init.so' |
| no file '/usr/local/lib/lua/5.1/loadall.so' |
| ``` |
| |
| Looking at link.txt for the luvi executable shows that `-rdynamic` is |
| not set anymore in CMake 3.12. This has the effect, that symbols are |
| missing in the `.dynsym` section. |
| |
| Therefore, set `ENABLE_EXPORTS` to true which set `-rdynamic` explicitly. |
| |
| Upstream status: b8781653dcb8815a3019a77baf4f3b7f7a255ebe |
| |
| Signed-off-by: Jรถrg Krause <joerg.krause@embedded.rocks> |
| --- |
| CMakeLists.txt | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| diff --git a/CMakeLists.txt b/CMakeLists.txt |
| index e141f8e..8219d0b 100644 |
| --- a/CMakeLists.txt |
| +++ b/CMakeLists.txt |
| @@ -158,6 +158,7 @@ if("${CMAKE_SYSTEM_NAME}" MATCHES "Linux") |
| endif() |
| |
| target_link_libraries(luvi ${LUVI_LIBRARIES} ${EXTRA_LIBS} ${CMAKE_THREAD_LIBS_INIT}) |
| +set_target_properties(luvi PROPERTIES ENABLE_EXPORTS ON) |
| |
| ############################################################################### |
| ## Installation Targets |
| -- |
| 2.19.1 |
| |