生成obj文件与fortran obj链接出错:无法解析的外部符号
💡
原文中文,约1200字,阅读约需3分钟。
📝
内容提要
某工业软件需要使用Intel Fortran(f77)的obj文件来链接旧有功能,但f77难用。可以使用C++来链接,使用makefile编译。使用Rust编译时出现链接错误,可能是Rust引用了奇怪的符号。尝试使用lib文件进行链接,成功解决问题。
🎯
关键要点
- 某工业软件需要使用Intel Fortran(f77)的obj文件来链接旧有功能,但f77难用。
- 可以使用C++来链接,提供了相应的makefile和C++代码示例。
- 使用Rust编译时出现链接错误,提示无法解析的外部符号,可能是Rust引用了奇怪的符号。
- 尝试使用lib文件进行链接,最终成功解决了问题。
- 生成的C静态库文件较大,但功能正常。
❓
延伸问答
如何使用C++链接Intel Fortran的obj文件?
可以使用C++链接Intel Fortran的obj文件,提供的makefile示例可以编译相关代码并生成静态库。
使用Rust编译时出现的链接错误是什么?
使用Rust编译时,可能会出现无法解析的外部符号错误,提示Rust引用了奇怪的符号。
如何解决Rust链接时的外部符号错误?
尝试使用lib文件进行链接,可能会成功解决外部符号无法解析的问题。
生成的C静态库文件有什么特点?
生成的C静态库文件较大,但功能正常,可以用于链接。
为什么Intel Fortran(f77)难以使用?
Intel Fortran(f77)被认为难用,可能是因为其语法复杂或调试困难。
如何编译Rust代码以生成静态库?
使用命令rustc --crate-type=staticlib --emit=obj编译Rust代码以生成静态库。
🏷️
标签
➡️