我在Ubuntu系统上有一个GNAT Programming Studio(GPS)/ GNAT项目。该项目的Ada内容编译得很好;但是,我需要绑定并链接到外部“.a”库,其中包含(C ++)例程pragma由Ada软件导入。每次我尝试时,都会收到消息“库项目不能有主要指定。”
我不认为我的项目是“图书馆项目” - 我只想链接到图书馆。为什么这么难?是否有可能不重建世界?
警告:我不是Linux黑客,所以请用示例清楚解释。谢谢: - )
答案 0 :(得分:1)
您可能会误解“编辑项目属性”对话框中的“库”选项卡。当您将项目构建为库时,请填写该文档。所以空白了。
然后在“开关”选项卡/“Gnatmake”选项卡的底部文本框中,将“-llib”引用添加到需要链接的库中。 E.g:
-lmycpplib -lyourcpplib -lcppisnotforme
答案 1 :(得分:0)
除了Marc C的建议,如果它是一个魔术"库(即-lz链接到zlib,-lm链接到数学等)你应该将文件复制到GCC的外部lib文件夹中:
\lib\gcc\i686-pc-mingw32\4.5.3\
在我的Windows GNAT目录上,虽然linux应该有一些类似的结构。