问题标签 [gprbuild]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
656 浏览

linker - GPRbuild:编译器开关被传递给链接器

我正在为 ARM 构建一个简单的程序。GPRbuild 输出以下内容:

从我在网上可以找到的,ld有一个-m指定仿真模式的开关。但是,我没有在我的项目的链接器中使用此开关。不过,我编译器中使用了这个-mcpu=cortex-m3开关,看起来 GPRbuild 也以某种方式将这个开关传递给了链接器。这是我的.gpr文件:

为什么链接器从编译器中切换?我该如何防止这种情况?

0 投票
0 回答
267 浏览

gcc - 使用 gcov 选项构建 ada

我在用 gcov 编译 Ada 项目时遇到了一些麻烦。

有我的选择:

编译没问题(编译 adb 时我看到 --coverage )但链接是 ko :

[...]/libgcov.a(_gcov.o) 中的隐藏符号“-gcov_init”被 DSO 引用

我是 ada 的新手,我不知道您需要什么信息来帮助我,请向我询问更多信息。

谢谢你。

编辑:

在我的 .gpr 上,我有一些链接库(我在这里粘贴了一个示例):

我认为这些库不是用 gcov 编译的,但我不知道如何重建这些。

0 投票
1 回答
88 浏览

ada - 确定项目构建所需的 Ada 源文件

想象一下使用 GPRbuild 和单个*.gpr项目文件构建的大型 Ada 项目。源目录包含许多 Ada 包规范和正文文件,但其中一些不是构建项目(可执行文件)所必需的。

GPRbuild 是否提供类似报告功能的功能,列出构建项目所需的所有文件?这将允许我删除未使用的源文件。

0 投票
2 回答
1460 浏览

compilation - 如何与 .gpr 项目文件和 gprbuild 交叉编译?

我正在尝试从 Linux( Fedora 29 )交叉编译一个以 Windows 为目标的 Ada 程序。我对编译一无所知,Gnat 项目经理文档也无法帮助我这个菜鸟。我更喜欢在项目文件中使用开关,并使命令尽可能简单。我该怎么办?

我试过gprbuild -P logfilter.gpr --target=Windows这导致

这是我的gprconfig

我的gprconfig --show-targets

这是我的file.gpr

0 投票
0 回答
112 浏览

ada - 如何将 Ada 添加到 riscv-toolchain

如何配置 RISCV 工具链以支持 Ada ?gprBuild 工具是否支持 riscv64-unknown-elf 工具链?......

我尝试通过使用以下命令安装 gprBuild 工具:

安装后使用命令搜索支持的目标

它只显示 x86-64-linux-gcc 并且没有任何 RISCV 工具链

0 投票
1 回答
499 浏览

linux - 如何在 Linux 上安装 gprbuild - Centos7

我最近在我的 Linux 机器(Centos7)上下载了 GNAT 社区。

在 /home/parallels/opt/GNAT/2019 中有一个文件夹 gprbuild,我的理解是要安装它,我需要执行位于 gprbuild 中的 bootstrap.sh 脚本:/home/parallels/opt/GNAT/2019/ gprbuild/bootstrap.sh

我尝试像这样执行 bootstrap.sh 脚本......

[parallels@localhost gprbuild]$ ./bootstrap.sh

然后我收到此错误消息...

./bootstrap.sh: line 87: gnatmake: command not found

这是 bootstrap.sh 脚本...

有人告诉我,我需要在安装 gprbuild 之前安装 xmlada,然后我在其他地方读到我需要安装 gprbuild 才能安装 xmlada!

我在尝试安装 xmlada 时遇到了类似的问题,xmlada 文件夹中的 shell 脚本称为 install-sh,当我尝试安装它时,我被告知没有指定输入文件...

我知道这确实是两个问题,但我觉得我必须这样解释,因为我不确定首先需要安装哪个库,以及如何实际安装它们。

任何帮助将不胜感激!我希望你们都度过了一个愉快的周末...... :)

谢谢,劳埃德

0 投票
1 回答
118 浏览

ada - 如何在 gprfile 中指定可执行文件的名称?它可以在 gprfile 的目录之上吗?

此信息在其他地方可用,但未合并到此特定用例,因此我觉得需要我(和其他人)可以参考的 stackoverflow 自我回答。如果我遗漏了什么,请随时添加您自己的答案。

我想要这个生成../some_program_name.exe。如何指定此 gpr 项目将生成的可执行文件的名称?它可以在上面的目录中吗?

0 投票
1 回答
105 浏览

ada - External configuration of Project_Version in gpr file

With gnatpro 19.1, I'm trying to add gnathub to my project and am wondering how to set dynamically Project_Version as in:

I can't think of any simple way to do it.

A solution would be to use a Makefile that would configure a .gpr.in file but it seems contrived to change my whole buildchain just to add a version to the sonar config.

A simple, not automated solution, is to call the project with another switch:

But this is not really usable.

Similar question is to add the option -Dsonar.branch.name=$(git branch). AFAICT, the package Dashboard, as per the documentation has no Switch switch.

Is there any solution other than passing the extra arguments or forking gnatdashboard?

0 投票
0 回答
96 浏览

windows - 为具有特定基地址的 Windows 构建 DLL

我正在为 Ada 中的 Windows 库开发一个项目,该项目必须在 DLL 中编译,从通过 GPRBuild 的 .gpr 项目开始。我能够为 Windows 生成一个工作 DLL,但现在我想指定 DLL 位置的基地址。目前我可以通过该editbin实用程序设置 DLL 位置,但我想将此步骤直接集成到 .gpr 文件中。我尝试使用该Library_Options属性:

但这似乎没有帮助。是否有可能在编译后直接做我想做的事,还是真的有必要使用外部脚本?

0 投票
1 回答
127 浏览

ada - 可以将 gprbuild 配置为输出 gnatprep 预处理源吗?

我有一个 gpr 项目,它使用 gnatprep 预处理源文件。但是现在我有一个需要已经预处理的源文件的工具。我知道我可以搜索每个源文件并通过 gnatprep 运行它:

但我想利用项目文件来找到正确的源文件并传递它们。我的项目文件还定义了要使用的各种符号值,我必须将它们添加到上面的命令中。是否可以通过 .gpr 文件中的某些参数?例如