在Mac OS上编译.adb后出现Gnatmake编译错误

时间:2019-02-08 13:08:38

标签: macos ada gnat

我刚刚使用GPS安装了dwarvin版本(gnat-community-2018-20180523-arm-elf-darwin-bin.dmg)的AdaCore社区编译器。使用adacore的相应安装程序。我还设法在启动脚本中添加了t的路径。直到这里一切正常,gnat --version返回适当的版本,等等。

但是当我想使用.adb编译gnatmake filename.adb文件时

user$ gnatmake filename.adb

gcc -c filename.adb
gcc: error trying to exec 'gnat1': execvp: No such file or directory
gnatmake: "filename.adb" compilation error

甚至在使用gnatmake -c filename.adb之后,我仍然得到

gcc -c filname.adb
gcc: error trying to exec 'gnat1': execvp: No such file or directory
gnatmake: "filename.adb" compilation error

我向教授寻求帮助,他说要使用提供的VM(对于Windows),我只是想避免使用VM。请帮助我解决此错误。

运行以下命令gnatmake filname.adb -cargs -c之后,出现以下内容。

gcc -c -v filename.adb
Using built-in specs.
COLLECT_GCC=/opt/gps//bin/gcc
Target: x86_64-apple-darwin16.7.0
Configured with: ../src/configure --enable-languages=ada,c,c++,objc --enable-lto --with-stage1-ldflags=-static-libstdc++ --with-boot-ldflags=-static-libstdc++ --disable-libcilkrts --with-bugurl=URL:mailto:report@adacore.com --disable-nls --without-libiconv-prefix --disable-libstdcxx-pch --disable-libada --enable-checking=release --disable-multilib --with-mpfr=/gnatmail/sandbox/community/x86_64-darwin/mpfr_stable-c/install --with-gmp=/gnatmail/sandbox/community/x86_64-darwin/gmp_stable-c/install --with-mpc=/gnatmail/sandbox/community/x86_64-darwin/mpc_stable-c/install --with-build-time-tools=/gnatmail/sandbox/community/x86_64-darwin/gcc_current-c/build/buildtools/bin --prefix=/gnatmail/sandbox/community/x86_64-darwin/gcc_current-c/pkg --build=x86_64-apple-darwin16.7.0
Thread model: posix
gcc version 7.3.1 20180524 (for GNAT Community 2018 20180523) (GCC) 
COLLECT_GCC_OPTIONS='-gnatea' '-c' '-v' '-gnatez' '-mtune=core2' '-mmacosx-version-min=10.14.2'
 gnat1 -quiet -dumpbase filename.adb -auxbase filename -gnatez -gnatea -gnatez -mtune=core2 -mmacosx-version-min=10.14.2 -fPIC filename.adb -o /var/folders/9r/52d5kqc906v4phl9jgjrxdlr0000gn/T//ccQlDd19.s
gcc: error trying to exec 'gnat1': execvp: No such file or directory
gnatmake: "filename.adb" compilation error

1 个答案:

答案 0 :(得分:0)

现在我们可以看到编译器如何抱怨(感谢问题中的更新),看起来好像您遇到安装问题。

在这里,我得到(编辑以删除不重要的部分)

[...]
COLLECT_GCC=/opt/gnat-ce-2018//bin/gcc

您有/opt/gps//bin/gcc,因此您的“前缀”(可在其中找到安装)为/opt/gps,其中我的为/opt/gnat-ce-2018(我不知道为什么会有那里有两个斜线,似乎无关紧要)。然后,

[...]
 /opt/gnat-ce-2018/bin/../libexec/gcc/x86_64-apple-darwin16.7.0/7.3.1/gnat1 -quiet -dumpbase [...]

您只有gnat1的地方。因此,您应该有一个文件/opt/gps/libexec/gcc/x86_64-apple-darwin16.7.0/7.3.1/gnat1,并且它应该是可执行的。

我会尝试重新安装。