FAQ之 Intel Fortran + VS 安装配置

使用dlib中,发现错误:

Severity	Code	Description	Project	File	Line	Suppression State
Error	LNK2019	unresolved external symbol dgesvd_ referenced in function "long __cdecl dlib::lapack::binding::gesvd(char,char,long,long,double *,long,double *,double *,long,double *,long,double *,long)" (?gesvd@binding@lapack@dlib@@YAJDDJJPEANJ00J0J0J@Z)	Dlib	D:\c++\Dlib\Dlib\faceDetect.obj	1	

需要加载lpack库,从 http://www.netlib.org/lapack/ 下载源码准备编译时, CMAKE报错:

104129_HviB_523053.png

于是准备安装fortran编译器。

MinGW下有gfortran编译器,但是不适合在VS下运行,主流的编译器是IVF,具体安装介绍如下:

原文地址:http://fcode.cn/guide-30-1.html 

第一,配置 IVF + VS 之前的准备工作

首先应该了解,IVF 和 VS 分别是什么?他们在我们的使用过程中,各自发挥什么作用?

IVF 是 Intel Visual Fortran 的简称,是一款主流的 Fortran 编译器。windows 上的占有率很高,linux 下的表现能力也不错。

VS 是 Visual Studio 的简称,它是微软公司开发的一款开发平台,内含多种微软出品的编译器产品,比如 VC++,VB.NET,等等。除此之外,它还具有一个开放的集成开发环境(IDE),而我们在使用时,基本只是借用它的 IDE 进行工程管理和操作环境。

在另一个FAQ系列介绍中,介绍了一款比较商业化的编译器产品,应当包含(或其中几部分):编译器,链接器,调试器,编辑器,函数库,集成开发环境(IDE)及其他。
在 IVF+VS 这个组合中,编译器,调试器,函数库是 IVF 的组成部分。而链接器,编辑器,集成开发环境(IDE)是属于 VS 的。另外我们也需要VS提供的VC++运行库

IVF编译器是IVF的核心,具有32位,64位的差异
调试器是IVF的重要组成部分,具有32位,64位的差异
函数库IVF的函数库以 MKL 为主,具有32位,64位的差异
VS链接器免费产品,也被包含在IVF中
编辑器书写代码的部分。高版本的VS提供了Fortran的折叠和自动完成功能
集成开发环境是我们主要借助的部分,实际上是 nmake 工程管理的可视化版本
VC++运行库和开发库IVF虽然是Fortran的编译器,但实现过程使用了不少VC++提供的运行时库,因此,我们需要它。


第二,VS 是不是必须的?安装IVF必须安装VS吗?

根据上面的说法,只有IVF的部分才是必须的。我们可以使用命令行和make/nmake来管理工程,这样就不需要集成开发环境了。链接器是免费的,也包含在IVF中。编辑器,我们可以使用记事本(notepad),UltraEdit,Notepad++ 等等文本编辑器来代替。

至于 VC++运行库和开发库,微软发布有单独的版本,可以直接使用。所以,VS并不是必须的。只不过,单独配置这些,需要程序员有一定的基础知识,而且在很多时候IDE确实方便一些,因此,我们建议初学者还是安装IVF+VS更容易上手。在熟练之后,可了解命令行编译或集成到第三方环境中。

第三,我应该安装什么版本的 IVF 和 什么版本的 VS ?

理论上来说,版本越高的 IVF 越好,可以支持更多的新语法,优化效果也做得更好。VS 也是一样的。

但是要注意的是,不是所有版本的 IVF 都可以嵌入到所有版本的 VS 里。选购或获取时,应确保两者能够集成。

目前必须要 IVF XE 2013 SP1 update 1 (或以上)才能集成到 VS2013 中,如果您不确定自己手上的版本能集成到哪些版本的 VS 里,可以插入光盘(或iso虚拟光驱镜像),找到光盘目录:\installs\1033 下面,查看类似下面的文件夹:
\
可知,当前版本可集成到 VS2008,2010,2012,2013当中。其他版本的不再支持,包括更早的VS2005。

至于该选用32位,还是64位,要取决于你的计算机环境。最重要的是操作系统的位数。有条件的朋友,如果你的操作系统是64位的,可以安装64位的IVF。

关于VS的语言版本,我建议使用英文原版的,在中文的VS里,使用IVF的项目向导可能会有点问题(这不严重)

第四,安装 VS 和 IVF 的问题?

安装的顺序一般是:先 VS,后 IVF。安装过程难度不大,需要注意几点:
1. 尽管IVF和VS都支持中文路径,但我们依然建议把它们安装在简单的英文路径下。
2. VS 安装时,如果你不做其他的工作,可以只安装 VC++ 一个组件。其他组件均不安装。
3. 安装 IVF 时,一般都会勾选 integration to Visual Studio 的组件。只要不特意取消,都会安装的。
4. 如果安装时,让你确认是否修改环境变量(envionment variables )请选择 Yes。
5. 安装过程最好暂时关闭杀毒软件。
\
\

如果你使用的是 win7,但使用了更早版本的 IVF,可能会出现 “reading license” 的时候卡死。这是因为 IVF 的许可读取了你的 CPU 的编号,而在 win7 中这需要更高的权限。所以,早期版本的 IVF 安装时候就无法读取lincense,请换用更新版本的 IVF 安装。

在 VS 和 IVF 都安装好以后,请打开 VS ,选择帮助(Help)菜单,关于(about)选项,检查是否存在 IVF 的版本信息了。
\

然后在文件(File),新建(New),项目(Project)菜单里查看,是否已经有了 Intel Visual Fortran 的工程类型。

\

如果一切都正常的话,你就可以开始使用 IVF 和 VS 了

转载于:https://my.oschina.net/u/523053/blog/1825762

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值