GNAT GPS IDE 未绑定和链接出现奇怪错误
GNAT GPS IDE not binding and linking with strange error
我正在尝试使用 GPS IDE 作为我在 OS X El Capitan 上的替代开发工具(远离 OS X 10.5 Xcode 3.0)。但是我偶然发现了一个奇怪的错误:
gnat bind myprog.bexch
gnatbind: Cannot find: myprog.bexch.ali
gprbuild: unable to bind myprog.adb [2016-01-20 18:49:07] process
exited with status 4, 100% (13/13), elapsed time: 04.77s
在我的目录中,我只能找到myprog.bexch。看起来 gnatbind 不产生 myprog.bexch.ali
我的 GPR 是这样的:
project Amygdala_Cortex is
for Object_Dir use "Build/";
for Exec_Dir use "Build/Debug/";
for Library_Name use "";
for Library_Ali_Dir use "";
for Library_Kind use "static";
package Compiler is
for Default_Switches ("ada") use ("-g", "-O2", "-I/opt/local/include/aws", "-I/opt/local/include/aws/components");
end Compiler;
package Binder is
for Driver ("ada") use "/usr/local/gnat/bin/gnatbind";
end Binder;
package Linker is
for Linker_Options use ();
end Linker;
for Main use ("amygdala_cortex.adb");
end Amygdala_Cortex;
显然,我的目录中没有 gprbind。
我在 GPR 中做错了什么或遗漏了什么吗?
我在 El Capitan (10.11.2) 上使用 gnat-gpl-2015-x86_64-darwin (GNAT GPL 2015 (20150428-49))。
谢谢。
我认为您应该尝试注释掉 Binder'Driver
属性。让 gprbuild 根据需要自行查找和 运行 gnatbind。它会通过名为 gprconfig
的工具在您的 PATH 中找到它,该工具会生成一个配置文件(通常为 auto.cgpr
)。
您正在使用 AWS。不要对编译器使用 -I
开关,而只需添加
with "aws";
在您的项目中,将为编译器、链接器等添加相关开关,...
感谢您的帮助。
这是我的新 GPR,以防有人遇到类似问题:
with "aws";
project myprog is
for Object_Dir use "Build/";
for Exec_Dir use "Build/Debug/";
for Library_Name use "";
for Library_Ali_Dir use "";
for Library_Kind use "static";
package Compiler is
for Default_Switches ("ada") use ("-g", "-O2");
end Compiler;
package Linker is
for Linker_Options use ();
end Linker;
for Main use ("myprog.adb");
end myprog;
我正在尝试使用 GPS IDE 作为我在 OS X El Capitan 上的替代开发工具(远离 OS X 10.5 Xcode 3.0)。但是我偶然发现了一个奇怪的错误:
gnat bind myprog.bexch
gnatbind: Cannot find: myprog.bexch.ali
gprbuild: unable to bind myprog.adb [2016-01-20 18:49:07] process
exited with status 4, 100% (13/13), elapsed time: 04.77s
在我的目录中,我只能找到myprog.bexch。看起来 gnatbind 不产生 myprog.bexch.ali
我的 GPR 是这样的:
project Amygdala_Cortex is
for Object_Dir use "Build/";
for Exec_Dir use "Build/Debug/";
for Library_Name use "";
for Library_Ali_Dir use "";
for Library_Kind use "static";
package Compiler is
for Default_Switches ("ada") use ("-g", "-O2", "-I/opt/local/include/aws", "-I/opt/local/include/aws/components");
end Compiler;
package Binder is
for Driver ("ada") use "/usr/local/gnat/bin/gnatbind";
end Binder;
package Linker is
for Linker_Options use ();
end Linker;
for Main use ("amygdala_cortex.adb");
end Amygdala_Cortex;
显然,我的目录中没有 gprbind。
我在 GPR 中做错了什么或遗漏了什么吗?
我在 El Capitan (10.11.2) 上使用 gnat-gpl-2015-x86_64-darwin (GNAT GPL 2015 (20150428-49))。
谢谢。
我认为您应该尝试注释掉 Binder'Driver
属性。让 gprbuild 根据需要自行查找和 运行 gnatbind。它会通过名为 gprconfig
的工具在您的 PATH 中找到它,该工具会生成一个配置文件(通常为 auto.cgpr
)。
您正在使用 AWS。不要对编译器使用 -I
开关,而只需添加
with "aws";
在您的项目中,将为编译器、链接器等添加相关开关,...
感谢您的帮助。
这是我的新 GPR,以防有人遇到类似问题:
with "aws";
project myprog is
for Object_Dir use "Build/";
for Exec_Dir use "Build/Debug/";
for Library_Name use "";
for Library_Ali_Dir use "";
for Library_Kind use "static";
package Compiler is
for Default_Switches ("ada") use ("-g", "-O2");
end Compiler;
package Linker is
for Linker_Options use ();
end Linker;
for Main use ("myprog.adb");
end myprog;