在创建静态对象时,是否可以在编译时以跨平台方式重命名符号(无需更改代码)?我最近推荐了 objcopy,但 linux 不是唯一的目标平台,它也必须在 mac 上运行。我正在使用 gcc 进行编译,所以我希望有某种 gcc 选项。
我听说过 .def 文件,但这可能具有误导性,因为我发现的有关它们的信息似乎适用于 Windows。
编辑:
我正在尝试更改 C 和 Fortran 函数的名称,特别是在它们前面加上“wrap”一词,以避免链接时的符号冲突。
是否可以在编译时重命名符号
您也许可以使用预处理器来实现它:
gcc -c foo.c -Dfoo=foo_renamed
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)