[转载]nmake不是内部命令或外部命令,也不是可运行程序
(2013-03-19 08:18:49)
标签:
转载 |
原文地址:nmake不是内部命令或外部命令,也不是可运行程序作者:无名
nmake不是内部命令或外部命令,也不是可运行程序
2009-11-18 16:53
1)推荐我在编译UDF时出现如下错误:
Error: Floating point error: divide by zero Error Object: () > "nmake"不是内部命令或外部命令,也不是可运行程序 Error Object: () Error: open_udf_library:系统找不到指定目录 Error: Floating point error: divide by zero Error Object: () 我原来装的时turbo c/c++编译器,可能时环境变量没有设好的缘故。换用vc++6.0以后就没有这个问题了,另外,我用的是fluent6.2.16,希望遇到同样问题的同学借鉴一下,呵呵。 udf编译的经验总结1)安装vc时候,只要选择了“环境变量”这一项,就不需要在“我的电脑 > 属性 > 高级 > 环境变量”中 更改“include”“lib”“path”变量的值,保持默认状态即可; 2)如果是fluent6.1以上的版本,读入你的case文件,只要在define->user-defined->functions->complied中, add你的udf源文件(*.c)和“udf.h”头文件,然后确定用户共享库(library name)的名称,按“build”,就相当于nmake用户共享库;在这一步中常出现的错误: (a)(system "move user_nt.udf libudfntx862d")0 (system "copy C:Fluent.Incfluent6.1.22srcmakefile_nt.udf libudfntx862dmakefile")已复制 1 个文件。 0 (chdir "libudf")() (chdir "ntx862d")() 'nmake' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 'nmake' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 Done. 而点击load时则出现不可编译的错误: Opening library "libudf"... Error: open_udf_library: 系统找不到指定的文件。 Error Object: () 原因:没有安装vc或者没有选择环境变量。 解决方法:安装vc,并选择环境变量;没有正确设置环境变量的,按以下方法: . 在我的电脑 > 属性 > 高级 > 环境变量中设置“include”“lib”“path”变量的值, . include:D:Program FilesMicrosoft Visual Studio .NETVc7include . lib:D:Program FilesMicrosoft Visual Studio .NETVc7lib . 找到Microsoft Visual Studio .NETVc7bincl.exe的动态链接库mspdb70.dll, 将mspdb70.dll的路径加入到path的值。 (b)(system "move user_nt.udf libudfntx863d")0 (system "copy C:fluent.incfluent6.1srcmakefile_nt.udf libudfntx863dmakefile")已复制 1 个文件。 0 (chdir "libudf")() (chdir "ntx863d")() udf.c # Generating udf_names.c because of makefile udf.obj udf_names.c udf_names.c(7) : error C2059: syntax error : '}' udf_names.c(8) : warning C4034: sizeof returns 0 我在c里调试已经通过了,但是在fluent编译时出现问题,我该怎么调试呀? Done. 解决方法:找到一个带udf的例题,如果udf能正确运行,将该例题的udf源文件example.c另存为一个新文件; 然后,将上面的内容全部删除,将你编写的udf源文件的内容copy到新文件中去,存储这个新文件后, 最后编译和创建用户共享库(build),就不会出现上述问题了。 原因:可能是自己编写udf源文件的模板不对,具体原因我也不太清楚,请大家指教了。 3)然后在define->user-defined->functions->complied中按“load”,即连接共享库到fluent可执行文件中。 参考一下吧,应该照着做就可以解决这个问题了. 或者你不要用compile编译,用interupt(如果udf比较简单的话) 4)如果你安装的是Microsoft Visual Studio 9.0 (SDK) 然后,如下设置系统路径:(也就是把下面的路径分别添加到INCLUDE, LIB, Path里去。INCLUDE和LIB可能需要你新建路径): INCLUDE=C:ProgrammeMicrosoft Visual Studio 9.0VCINCLUDE; LIB =C:ProgrammeMicrosoft Visual Studio 9.0VCLIB; Path =C:ProgrammeMicrosoft Visual Studio 9.0Common7IDE; |
前一篇:ICEM CFD 问题结合