如何让 gcc 为所有符号名称添加前缀
How can I get gcc to add a prefix to all symbol names
我知道过去有一个选项-fprefix-function-name
可以为所有生成的符号添加前缀,它似乎不再是 gcc 的一部分。还有其他方法可以做到这一点吗?
我相信这个答案会给你解决方案。
简而言之,您可以使用如下objcopy
在现有库中"前缀"符号:
objcopy --prefix-symbols=foo_ foo.o
*编辑:乔治·斯科普佐夫的解决方案比我的:)更好不过,nm
技巧可能会派上用场。
这不是您要找的,但我过去不得不做类似的事情(重命名库导出的符号)
如果您知道要重新定义的符号的名称,则可以尝试使用 objcopy --redefine-syms old=new
。有关输入的更多详细信息,请参阅 objcopy 的手册页(objcopy 可能会覆盖您的文件,因此请小心)
如果您不知道符号的名称,可以尝试使用 nm
获取符号列表。同样,由于我不确定您要查找哪种符号,因此手册页可能是您最好的选择。
相关文章:
- 为什么我必须在C++中添加一个赋值符号来声明一个数组
- 添加符号 libgtest.so 错误:命令行中缺少 DSO
- libstdc++.so.6:添加符号时出错:命令行中缺少 DSO
- 当 lib 已添加到其他依赖项时,如何在 VS 中调试未解析的外部符号错误
- 如何将空文件夹和符号链接添加到存档 - libarchive
- ctypes,添加静态库时未定义的符号
- 计算机使用什么方法添加无符号整数
- 添加有符号和无符号整数
- 为什么隐藏的符号仍然添加到 DSO 中
- 在 gdb (Windows) 中添加 dll 的调试符号
- MySQL C++连接器:添加符号时出错:文件格式无法识别
- 当我尝试将文件添加到另一个文件时出现怪异符号时
- Openssl C++ AES 解密添加意外符号
- 英特尔 MKL 和 JNI:如何添加 ld 从中搜索符号的共享库?
- gcc添加符号时出现无效版本(max)错误:值错误
- 为什么RGB组件被打印为符号,直到我添加+'0'-'0'?
- C 实现CNN错误添加符号:命令行中缺少DSO
- 不使用 符号的添加
- 如何为宏符号添加前缀
- 在c++中调用函数时未定义的符号添加随机字符