在错误日志中:
CLSQL正在做:
gcc -I /usr/local/include/mysql -I /usr/include/mysql -I /sw/include/mysql -I /opt/local/include/mysql -I /usr/local/mysql/include -fPIC -c clsql_mysql.c -o clsql_mysql.o
并收到错误: clsql_mysql.c:34:19:mysql.h:没有这样的文件或目录 和一堆C错误,因为它不包含标题。
我希望它能做到:
gcc -I /usr/local/include/mysql -I /usr/include/mysql -I /sw/include/mysql -I /opt/local/include/mysql -I /usr/local/mysql/include <b>-I /usr/local/mysql/include/mysql</b> -fPIC -c clsql_mysql.c -o clsql_mysql.o
我已经尝试运行:(clsql:push-library-path #P“/ usr / local / mysql / include / mysql /”)。没用。
HALP!
答案 0 :(得分:1)
通过在clsql_mysql.c文件的开头插入带有全名的#include来检查该文件是否存在且没有权限问题:
#include“/usr/local/mysql/include/mysql/mysql.h”
如果编译良好 - 撤消更改并解析-I参数
如果不编译并说“文件不存在” - 检查该文件是否存在且没有权限问题
答案 1 :(得分:0)
我不熟悉CLSQL,但如果它使用cffi-grovel生成该命令,那么在加载之前你应该尝试添加你的“-I / usr / local / mysql / include / mysql /”来cffi-grovel :: * cc-flags *列表。您也可以将它添加到asd文件中,因为grovel-file asdf组件采用可选的cc-flags参数。