This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好!
我有一个.lib 文件、该文件之前由较旧版本的编译器(版本 C2000_5.1.3)构建。
现在、我将使用更新版本的编译器(版本 c2000_20.2.5.LTS)。 当我尝试链接.lib 文件时、链接器出现以下错误。
未解析的符号__memcpy_ff,首先在 xxx.lib 中引用
未解析的符号_memcpy、首先在 yyy.obj 中引用
链接器选项"-symbol_map=_memcpy_ff=_memcpy"可以阻止链接器的抱怨。
我的问题是:
1.这是否是一个好的解决方案?
2.是否有更好的方法使编译器和链接 器向前兼容?
3. 是否有不同编译器版本和链接器版本之间不兼容的点列表?
谢谢你。
如果您使用较新的编译器重建旧库、会更好。 但是、如果这不切实际、那么使用-symbol_map 是一种合理的解决方案。
[引用 userid="52828284" URL"~μ C/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1120309/TMS320F28335-linker-error-when -linking-lib-file-was by-build-by-older 版本编译器未解析-symbol-__memcpy_ff]3. 不同编译器版本和链接器版本之间是否存在不兼容点列表?不是。 我们非常努力避免这种情况。 但这个已经通过了我们的所有测试。
谢谢、此致、
乔治
3. 是否有不同编译器版本和链接器版本之间不兼容的点列表?
不是。 我们非常努力避免这种情况。 但这个已经通过了我们的所有测试。
[/报价]乔治
我能不能理解您喜欢这样的方式:
编译器/链接器的设计是向前兼容的、这个"memcpy"问题应该是一个意外问题。 目前没有其他已知的不兼容问题。
有关兼容性的更完整的声明、请参阅文章 编译器版本号及其含义。 搜索标题为 "不同编译器版本之间的兼容性"的子部分。
谢谢、此致、
乔治