2

我在 Ubuntu 系统上有一个 GNAT Programming Studio (GPS)/GNAT 项目。该项目的 Ada 内容编译得很好;但是,我需要绑定并链接到外部“.a”库,其中包含由 Ada 软件导入的 (C++) 例程 pragma。每次尝试时,我都会收到消息“库项目不能指定 main”。

我不认为我的项目是“图书馆项目”——我只想链接到图书馆。为什么这么难?不重建世界有可能吗?

警告:我不是Linux hack,所以请举例说明清楚。谢谢 :-)

4

2 回答 2

1

您可能误解了“编辑项目属性”对话框中的“库”选项卡。当您的项目将被构建为库时,您填写它。所以把它留空。

然后在 Switches 选项卡/Gnatmake 选项卡上,在底部文本框中将“-llib”引用添加到您需要链接的库。例如:

-lmycpplib -lyourcpplib -lcppisnotforme
于 2012-06-18T18:54:57.290 回答
0

除了 Marc C 的建议之外,如果它是一个“魔术”库(即 -lz 链接到 zlib,-lm 链接到数学等),您应该将文件复制到 GCC 的外部 lib 文件夹中:

\lib\gcc\i686-pc-mingw32\4.5.3\在我的 windows GNAT 目录上,虽然 linux 应该有一些类似的结构。

于 2012-06-18T22:38:31.753 回答