完美解决win7 64bit系统环境中用ANSYS12.fluent+vs2010编译UDF
很兴奋,刚刚成功设置了环境变量。让我在FLUENT中可以直接调用VS2010编译UDF程序。(By AYA)
以前用的win7系统是32位的,最近买了根4G的内存换了上去,刚开始很兴奋,期盼我的TOSHIBA可以奔到快一点。把内存插好以后很惊讶的发现,系统只能控制2.74G,心里拔凉的。心里不甘啊,一狠心决定把系统换成64bit的。换系统是个苦力活,要耗时间耗体力去装很多软件。
ANSYS12.0、vs2010这两个软件都有五六G,装了三个多小时才搞定。按照以前32位系统的方法设置环境变量:
1. 变量名:path 变量值:C:\\Program Files\\Microsoft Visual Studio 10.0\\VC\\bin;C:\\Program Files\\Microsoft Visual Studio 10.0\\Common7\\IDE;
2.变量名: include 变量值:C:\\Program Files\\Microsoft Visual Studio 10.0\\VC\\include;
3.变量名:lib 变量值:C:\\Program Files\\Microsoft Visual Studio 10.0\\VC\\lib;C:\\Program Files\\Microsoft SDKs\\Windows\\v7.0A\\Lib;
设置好以后,在FLUENT中编译,总是出现标志符错误。
没办法,只好网上搜罗别人的宝贵经验。其中最靠谱的一个就是,用vs2010自带的工具里的win64命令提示。从这个命令提示中找到fluent,然后启动它。本人实验了一下,确实奏效,成功编译。因为平时经常修改UDF,这种启动方法对我来说太耗体力。于是决定自己想办法解决它。
既然通过命令提示启动fluent并成功,说明vs2010和fluent能够协作起来,肯定通过合理的设置能够解决这个难题。个人直觉肯定是上面的环境变量没有设置正确。决定从这里入手。 首先看一下path的路径C:\\Program Files\\Microsoft Visual Studio 10.0\\VC\\bin中所包含的东西。其中有个批处理文件名字叫vcvars32.bat。记得看到网上有个文章中提到,这个东西是设置环境变量的。看文件名就知道这个是设置32位系统的环境变量。那64位系统的环境变量又是在哪里设置的呢?上面提到通过命令提示启动FLUENT并编译成功的事情,让我想起这个命令提示的路径或许能提供点信息。命令提示的路径为%comspec% /k \Files (x86)\\Microsoft Visual Studio 10.0\\VC\\vcvarsall.bat\。我想这个vcvarsall.bat肯定就是设置环境变量的。但是把路径设置为C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC以后编译还是失败。到这个地方就陷入一个死胡同了。
会不会其他地方还有这个设置环境变量的东西呢?我打开VC\\bin文件夹,发现其中有几个文件夹的名字里含有64这个比较敏感的数字。我打开其中amd64这个文件夹。忽然发现,这个文件夹中的很多文件根VC\\bin中含有的文件基本相同,而且其中还有一个vcvars64.bat这个文件。于是我把路径修改为:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\bin\\amd64;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE;。然后重新进行编译,发现错误与以前不同了。前面的编译前半部分是正确的,后半部分创建库的时候出现一些错误。这个时候,我恍然大悟,原来编译的文件在原文件夹的一个子文件夹里。我又根据这个思路,修改了其他几个变量里的路径。
设置好以后,再一次编译的时候,很顺利的通过了,像之前32位系统设置的一样。 --------( By AYA_sjy)-------
我修改后的环境变量如下,仅供大家参考:
1. 变量名:path 变量值:C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\bin\\amd64;C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\Common7\\IDE;
2.变量名: include 变量值:C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\include; 3.变量名:lib 变量值:C:\\Program Files (x86)\\Microsoft Visual Studio 10.0\\VC\\lib\\amd64;C:\\Program Files (x86)\\Microsoft SDKs\\Windows\\v7.0A\\Lib\\x64;