首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mlton给出与库相关的错误。

mlton给出与库相关的错误。
EN

Stack Overflow用户
提问于 2015-06-11 15:11:39
回答 1查看 120关注 0票数 1

当我试图用mlton编译一个程序时,我会得到一个错误。

代码语言:javascript
复制
~/projects/serve-sml $ mlton server.mlb
In file included from /usr/lib/mlton/include/platform.h:13:0,
                 from /usr/lib/mlton/include/common-main.h:16,
                 from /usr/lib/mlton/include/amd64-main.h:11,
                 from /tmp/file86PWQJ.1.c:110:
/usr/lib/mlton/include/cenv.h:137:17: fatal error: gmp.h: No such file or directory
 #include "gmp.h"
                 ^
compilation terminated.
call to system failed with exit status 1:
gcc -std=gnu99 -c -I/usr/lib/mlton/targets/self/include -I/usr/lib/mlton/include -O1 -fno-common -fno-strict-aliasing -fomit-frame-pointer -w -m64 -o /tmp/fileg5D5To.o /tmp/file86PWQJ.1.c
~/projects/serve-sml $ 

根据this的说法,这意味着我应该安装libgmp3-dev。我已经运行了apt-get install libgmp3-dev,并验证了文件/usr/include/x86_64-linux-gnu/gmp.h的存在,但是仍然会收到相同的错误。

知道我做错什么了吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-11 18:47:35

尝试在终端中执行gcc -v -x c -E -。这将打印出C编译器正在使用的头文件搜索路径。我得到的东西是:

代码语言:javascript
复制
#include "..." search starts here:
#include <...> search starts here:
/Users/ml9951/include
.
/usr/local/include
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/6.1.0/include
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
/usr/include
/System/Library/Frameworks (framework directory)
/Library/Frameworks (framework directory)

因此,如果我在gmp.h中有/usr/include/x86_64-linux-gnu/,那么我的C编译器就找不到它。我建议将您的.h文件移到这个搜索路径上的目录中(就像我的例子中的/usr/local/include ),或者传递-I /usr/include/x86_64-linux-gnu/标志,这需要修改MLton的构建脚本。当需要链接时,您很可能不得不对libgmp.a做同样的事情。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30784728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档