如何解决如何获取gnatmake为Ada .dll创建映射文件?
所以,我正在尝试让gnatmake给我要构建的dll的映射文件。
但是我拒绝一切努力。 --create-map-file仅适用于可执行文件,它确实为此创建了一个文件,但我无法将其用于.dll。
我尝试了-M --print-map -M save.map 但我什么都没出来。
有想法吗?
解决方法
您可以尝试使用gnatdll
构建DLL。这是一个(非常简单的)示例(没有初始化/完成代码):
制作文件
all:
gnatmake -v demo.adb
gnatdll -v -d demo.dll .\demo.ali -largs -Wl,-Map,demo.map
demo.ads
package Demo is
function Add (X,Y : Integer) return Integer
with Export,Convention => C;
end Demo;
demo.adb
package body Demo is
---------
-- Add --
---------
function Add (X,Y : Integer) return Integer is
begin
return X + Y;
end Add;
end Demo;
demo.def
LIBRARY LIBDEMO
EXPORTS
add
输出(构建后的目录内容)
demo.adb
demo.ads
demo.ali
demo.def
demo.dll
demo.map <<<<<< A .map file
demo.o
libdemo.dll.a
Makefile
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。