将Lua本地链接到CMake的问题

时间:2017-10-31 21:16:41

标签: lua cmake

我知道之前已经提出过这个一般性问题,但我找到了一个我无法找到的特定未回答的问题。

我尝试将myproj/dependencies/lua中Lua源的本地git子模块链接到我的myproj/helloworld.c文件。我正在让它在我的本地目录中获取Lua,因为我遇到的问题是Fedora可以在FindLua.cmake找到我的系统Lua头但Ubuntu无法解决。我想这个问题只会在我尝试将macOS和Windows引入混合路径时加剧。

FindLua.cmake模块仍然有用,因此我想强制它在<{1}}目录中搜索。我的理解意味着在myproj/dependencies/lua中手动设置LUA_INCLUDE_DIRS

所以问题A 是我在大多数方法中尝试了以下语法的多次迭代:

CMakeLists.txt

然而set(LUA_INCLUDE_DIRS "{$CMAKE_SOURCE_DIR}/dependencies/lua")没有输出任何暗示它找到Lua的内容,然后cmake .失败并显示make

问题B 即使它确实找到它,它也会找到this,它必须在CMake的提示下以某种方式生成它可以用来链接。只在它上面运行fatal error: lua.h no such file or directory只生成一个可执行文件。我看到有人关联标题,有些人关联make.a文件。我不清楚在这种情况下应该使用哪些以及为什么。

(我以这种方式处理问题B的原因是我想要将Lua与代码一起发送,这样就可以编译它而无需安装系统Lua标头,将它们更新到新版本,或者将它们追捕。它&# 39;将被嵌入到C应用程序中。所以它并不真正需要动态特性)

只是为了彻底,这里是.so的其余部分:

CMakeLists.txt

0 个答案:

没有答案