我已经用尽了我所有的 linux-fu (ubuntu 14.04)。本质上,我想玩一下将 lisp 编译为 c 的 scheme 的鸡实现
到这一步已经没问题了,但是编译 c 代码时出现错误:
fatal error: chicken.h: No such file or directory
该文件确实存在,因为 whereis chicken 的输出结果为:
chicken: /usr/bin/chicken /usr/bin/X11/chicken /usr/include/chicken /usr/share/chicken /usr/share/man/man1/chicken.1.gz
我的 PATH 变量有:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/include/chicken
env | grep PATH 的输出为:
LD_LIBRARY_PATH=/usr/include/chicken
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
DEFAULTS_PATH=/usr/share/gconf/ubuntu.default.path
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/include/chicken
LD_LOAD_PATH=/usr/include/chicken
MANDATORY_PATH=/usr/share/gconf/ubuntu.mandatory.path
(我曾尝试自己定义 LD_(LOAD,LIBRARY)_PATH)
我仍然一无所获。有什么想法吗(我相信这只是告诉 gcc 在哪里寻找东西的问题,但我还没有找到解决方案)?
答案1
编辑。通过定义 C_INCLUDE_PATH 解决(尽管修复自动生成的 c 编译器错误比告诉 gcc 在哪里找到它的标题更难:/)