0

Please help me on the gcc compiler command

gcc -c -ID:\pjtName\lib -c -fprofile-arcs -ftest-coverage D:\pjtName\source\tmp.ada

I am trying to compile the tmp.ada with coverage. adb and ads files are located in D:\pjtName\source folder. and my lib files are located in D:\pjtName\lib folder.

The problem is gcc is not locates tmp.ads file and the library files in the D:\pjtName\lib folder. it show file not found error

after this command i need to run gcov command for the tmp.ada file

4

2 回答 2

2

GNAT 的构建过程很复杂。gcc真的是太低级的工具,难以使用;相反,使用gnatmake和 GNAT 项目文件。

你已经标记了 gnat-gps,所以我假设你实际上有 GPS。如果是这样,您最好的选择是在打开 GPS 时选择使用向导创建新项目并从那里继续。如果您遇到困难,请使用 GPS 附带的帮助或返回此处。

要使用 GPS 获取覆盖信息,请转到编辑/编辑项目属性

  • Ada选项卡中,选择Code coverageInstrument arcs,其中包括-ftest-coverage-fprofile-arcs
  • Ada Linker选项卡中,选择Code coverage,其中包括-fprofile-generate(否则会出现链接时间错误)。

顺便说一句,您提到了一个文件tmp.ada;最好坚持.ads规格和.adb车身。GNAT 会尽力而为,但如果您的其他代码包含with Tmp;GNAT,则会查找tmp.ads. 您可以更改此行为,但除非出于其他原因,否则何必费心!

于 2014-03-26T09:44:02.863 回答
0

如上所述,不要使用 gcc。

我通常使用gnat compile filename.adbthen gnat bind filename.ali,然后gnat link filename.ali -Lexternaldirectory -lexternallib

于 2017-09-19T18:32:27.743 回答