gpt4 book ai didi

c - 在编译时重命名符号而不以跨平台方式更改代码

转载 作者:太空狗 更新时间:2023-10-29 17:19:23 26 4
gpt4 key购买 nike

在创建静态对象时,是否可以在编译时以跨平台方式重命名符号(不更改代码)?我最近推荐了 objcopy,但 linux 不是唯一的目标平台,它还必须在 mac 上运行。我正在使用 gcc 进行编译,所以我希望有某种 gcc 选项。

我听说过 .def 文件,但这可能是一种误导,因为我发现的有关它们的信息似乎是针对 Windows 的。

编辑:我正在尝试更改 C 和 Fortran 函数的名称,特别是在它们前面加上单词“wrap”以避免链接时的符号冲突。

最佳答案

is it possible to rename the symbols at compile time

您可以使用预处理器实现它:

gcc -c foo.c -Dfoo=foo_renamed

关于c - 在编译时重命名符号而不以跨平台方式更改代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7204836/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com