所以最近我学习了一套关于编程、编译和其他工作原理的绝对堆栈,但这有点超出了我的深度。目前,我正在尝试安装pyigrf12,这样我就有了在Python中使用IGRF的方法(我大部分的工作都是在Python中完成的)。我的第一个问题是,因为这个模型是用Fortran开发的,所以要找到一个合适的编译器。我用MinGW安装了g77和gfortran等等。在
每个编译器给我不同的错误。什么时候设置.py默认使用g77,在这个过程中,由于“分配表单无效…”错误,我收到了“FailedwithExitStatus1”。所以我重命名了g77.exe二进制文件以便设置.py被迫使用gfortran.exe文件(我不确定如何指定要使用哪个编译器,这只是命令行)。在
这个编译器进一步完成了这个过程,但最终以“failed with exit status 1112”终止。通过查看输出,编译器似乎遇到了“致命错误LNK1112:模块计算机类型‘X86’与目标计算机类型‘x64’冲突”。在谷歌上搜索这个错误时,我遇到了几个关于这个问题的论坛。proposed solution in each case似乎假设我使用的是visualstudio环境,可以通过单击来更改'/机器:IX86'旗帜。在
这看起来很简单,但是可以在命令行中完成吗?如果是,怎么办?目前我所做的就是运行设置.py脚本是
python setup.py develop
在命令提示符下(我在Windows机器上)。任何帮助将不胜感激!在
编辑:我所写的全部输出如下。请注意,我没有对任何内容进行任何更改—到目前为止,我唯一能控制的就是编译器。其他一切都是pyigrf的一部分。虽然在这个模块的编译过程中似乎确实存在一些问题,但我想知道是否有办法解决它。因为它看起来像是一面旗帜。。。我不确定。真的希望奇迹出现。这里是:
^{pr2}$
从日志中我发现您安装了一个32位版本的gfortran。您需要64位版本才能与工具链的其他部分兼容。在
确保执行:
gfortran -v
并检查版本信息。在相关问题 更多 >
编程相关推荐