如何制作在 Mac OS X 10.5 和 10.6 上运行的 fortran 可执行文件
我想用 gfortran 编译 fortran 代码,以便它可以在 Mac OS X 10.5 和 10.6 上运行。有办法做到这一点吗?我尝试在 10.6 上进行编译,并在 10.5 上运行可执行文件时收到此消息:
dyld:unknown required load command 0x80000022 跟踪/BPT 陷阱
I'd like to compile a fortran code with gfortran so that it will work on both Mac OS X 10.5 and 10.6. Is there a way to do this? I tried compiling on 10.6 and get this message when I run the executable on 10.5:
dyld: unknown required load command 0x80000022
Trace/BPT trap
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
该应用程序错误地在 OS X 10.6 计算机上为 10.5 计算机构建。开发人员可以通过考虑三件事来解决此问题:
解决此问题后,可以通过运行“otool”来检查应用程序是否为 OS X 10.5 正确构建:
otool -l 二进制文件
正确的二进制文件不应包含任何“LC_DYLD_INFO_ONLY”加载命令(仅限“LC_DYLD_INFO”命令)。
(另请参阅我的博客文章 http://grauonline.de/wordpress/?p=71 )
The application was incorrectly built on OS X 10.6 machine for a 10.5 machine. The developer can fix this by considering three things:
After this is fixed, one can check if the application was correctly built for OS X 10.5 by running 'otool':
otool -l binary
The correct binary should not contain any 'LC_DYLD_INFO_ONLY' load commands (only 'LC_DYLD_INFO' commands).
(also see my blog article http://grauonline.de/wordpress/?p=71 )
你用的是什么版本的10.5?根据 this (0x22) 是在 10.5 中添加的动态加载函数.6.您可以尝试升级到>10.5.6,看看问题是否仍然存在。
另外你从哪里得到你的gfortran?在 numpy 社区中,强烈推荐来自 att.com 的版本,以及来自 hpc 通常是 避免。
What version of 10.5 are you on? According to this (0x22) is a dynamic load function that got added at 10.5.6. You could try upgrading to >10.5.6 and see if the problem persists.
Also where did you get your gfortran from? In the numpy community the ones from att.com are highly recommended and the builds from hpc are generally to be avoided.