【发布时间】:2011-08-26 20:19:22
【问题描述】:
我正在尝试使用 CMake 为我的一个使用 Lua 的项目生成生成文件。当我运行 make 我得到这个错误:
/path/to/my/project/luaudio/luaudio.c:1:17: fatal error: lua.h: No such file or directory
在 CMakeLists.txt 文件中,我有以下几行,我认为可以这样做,但显然它们还不够:
find_package(Lua51 REQUIRED)
set(Luaudio_INCLUDE_DIRS ${Luaudio_SOURCE_DIR} ${Lua51_INCLUDE_DIRS} PARENT_SCOPE)
include_directories(${Luaudio_INCLUDE_DIRS})
Lua51_Include_Dirs 似乎是空的(尝试运行它,尽管消息命令不打印任何内容)所以我怀疑它只是找不到它。我需要指定在哪里寻找 Lua 吗?我的印象是 find_package 的全部意义在于它会在一组预定义的位置中查找,因此我不需要具体指定它的位置。
(这是在 Ubuntu 机器上,我确实安装了 Lua 包。)
【问题讨论】:
-
你是在
#include "lua.h"还是#include <lua/lua.h>? -
我正在使用
#include "lua.h"。我也尝试过#include "lua/lua.h",尽管这不是我应该做的。都没有奏效。我没有尝试使用<>,但如果这有所作为,我会感到非常惊讶。 -
@Alex Using
#include "lua5.1/lua.h"在安装lua5.1-dev后为我工作。