首页/文章/ 详情

Fortran知识 | DLL缺失

7月前浏览6516

编写代码的目的是计算得到结果。或者是发布一个程序(exe或其他)给别人,甚至是作为商业软件出售给别人使用。有时编译后的exe程序再复 制到其他计算机上独立运行会出现类似下面的错误:


我们不禁会问:Fortran是编译型语言,编译好的程序(exe等)是完全可以独立于编译器运行的。而编译器编译后的程序,还会依赖这些DLL?

事实上在我们编写的代码中,有一些通用性的代码需要由编译器来提供。比如读写文件,或者一些常见的内置函数,这些通常被称为运行时库(Runtime library)。有些编译器会将运行时库(或部分)写入到DLL里。这样做的好处是:

1.减少编译后exe文件的大小。

2.提高编译链接速度。

3.提高通用代码的可重复使用。

4.便于升级。

对于这类的编译器,写到DLL里的运行时库,我们编译后的程序就会依赖它。

解决这个问题,最简单的办法是将源代码重新编译,或者将这些DLL和exe程序一同拷贝。




来源:数值分析与有限元编程
通用
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-04-01
最近编辑:7月前
太白金星
本科 慢慢来
获赞 5粉丝 12文章 325课程 0
点赞
收藏
作者推荐

打造Python开发环境

本文摘要(由AI生成):MATLAB虽易用但费用高,用户购买产品时需额外购买软件。相比之下,Python开源免费。然而,Python的扩展库管理和版本问题在Windows系统上尤为突出。为解决这些问题,Anaconda等发行版应运而生,它预装了Python、众多科学计算工具及包管理器conda,支持多系统,方便管理多版本Python和第三方包。安装Anaconda后,用户可轻松查看其包含的扩展库,并使用Spyder这一类似MATLAB界面的集成开发环境进行编程。MATLAB易学易用,用户众多,终究是商业软件,要掏银子滴。设想一下,当用户在买你用MATLAB开发的产品的同时,还要买MATLAB才行。Python就不一样了,因为它是开源的,买Python开发的产品,就不用花那冤枉钱了。Python虽是开源的,但也有麻烦之处。其中比较头疼的就是各种扩展库的管理和Python不同版本的问题,这个问题在Windows系统最为凸出。为了解决这些问题,有人将Python和许多常用的package打包,方便coders直接使用,比如WinPython、Anaconda等。Anaconda是一个用于科学计算的Python发行版,可以简单的理解为这是一个打包的集 合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等。Anaconda支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda包含了Python和相关的配套工具,其利用命令conda来进行package和environment的管理。安装好Anaconda之后,运行Anaconda prompt ,输入conda list > D:python.txt,在D盘会生成一个python-list.txt文件,里面有Anaconda所包含的众多扩展库,其中也包括集成开发环境(IDE)Spyder。Spyder界面和MATLAB类似,他的Variable Explorer类似于MATLAB的workpace,可以查看变量的类型,尺寸等等。在编辑区输入代码后,按F5在控制台输出结果。来源:数值分析与有限元编程

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈