回 帖 发 新 帖 刷新版面

主题:vs2005+ifort,编译时能否指定编译顺序?

如题,如果工程中有5个源码文件,能否指定顺序,先编译谁后编译谁~~??

回复列表 (共18个回复)

沙发

没必要吧,程序会自动判断依赖关系的:)

板凳

[quote]没必要吧,程序会自动判断依赖关系的:)[/quote]
恩,是这样。现在发现不是顺序的问题,而是Debug和Release模式的问题,Release模式可以顺利build出来,但debug就会报错,似乎错误检查更严格了一些(例如某参数声明为real,但传递了0而非0.0,就会报错说类型不匹配~~)哪里可以调整呢?

3 楼

可以了,是debug和release两种模式的错误检查机制不同,在工程属性=>FORTRAN=>RUNTIME里面修改相应设置就可以了~

4 楼

看了你另一个帖子, 如果楼主你连debug和release是用来做什么的都不清楚, 还是不要自作聪明去调那些设置了.

5 楼

[quote]看了你另一个帖子, 如果楼主你连debug和release是用来做什么的都不清楚, 还是不要自作聪明去调那些设置了.[/quote]
解决问题才是目的,各有所长,不要上来就摆出一副高深的姿态,除了显得自己NB一点,对解决困难完全没有帮助的~~

6 楼

不是NB, 错就是错, 这个是态度. 你觉得你解决了问题就算了. 到时候得不到"物理"的结果就自己慢慢找问题吧. 我就不信之后不需要修改别人的代码!!
我只是好意提醒你这个是危险的操作, 函数不写接口就不会检查数据类型, 现在编译器帮你检查出错误来是他负责任. 用别人的老代码要么就还原别人的环境.

7 楼

yeg001 您消消气吧,我上次不是也遇到一个,让他多看看书都觉得心里不舒服吗。所以,近来我少回复了,不想得罪人,对一些问题,往往一笑而过,自己想清楚得了;有时候心情好,偶尔回复一下。

8 楼

是啊, 可能是我语气重了. 我出发点只是提醒那样会埋下个隐患. 楼主认为没关系就算了.
如果楼主在修改代码的时候能够足够小心也没什么. 我多虑了.

9 楼

[quote]是啊, 可能是我语气重了. 我出发点只是提醒那样会埋下个隐患. 楼主认为没关系就算了.
如果楼主在修改代码的时候能够足够小心也没什么. 我多虑了.[/quote]
    cpp程序员初入fortran,不是天天搞这个的,难免有所疏漏。vs+ifort的环境,新工程默认debug和release的检查级别是不同的,漏掉这点应该也是很正常的事情....我自己发现了问题所在,并贴出了解决方法供后来人参考。
    但您那个“@#¥#%……用来做什么的都不清楚, 还是不要自作聪明去调那些设置了.”是不是太武断了些呢?是一种交流的态度么?

    对于提醒我完全接受,其它的不做评论。

    说明一点:手头的代码是nasa发展了20 y+的计算工具,规模比较庞大,我也知道它不完美,但现阶段不可能进行大规模的翻新、规范化和测试。

    对yeg001等长期混迹于pfan fortran版的同志们有些建议:
    (1)不要武断的去批评别人或怀疑别人的工作态度;
    (2)作为过来人,您在学习的时候一定也遇到过很多头痛的时候,这种时候更需要的是真诚的交流和指点,而非摆架子和批评~
    (3)多看书是应该的,但上述编译环境的东西,如果是完全没接触过vs或ifort的人,书翻破也很难找到解决方法的,这种时候需要的就是大家的经验和建议~而不是类似“……用来做什么的都不清楚, 还是不要自作聪明去调那些设置了”

    pfan是个好坛子,也关注很多年了,只是以前很少来fortran版。共同进步需要大家一起营造一个良好的交流环境,摆谱和装_是解决不了任何问题的。
    
    只是发了个帖子,描述了个问题,突然又找到原因所在,贴了解决方案。却被一通鄙视~哎,放谁都会稍稍不爽吧~

    觉得上述言论有错可以批评,版主认为不和谐欢迎删帖。这么多年看过了很多人的这种态度,有感而发~~请大家拍砖。

10 楼

我想他的意思是,出现 Debug 和 Release 结果不一样,多半是因为程序中存在隐含的错误。

如果你修改了 DEBUG 的设置而解决问题,事实上你差不多把 Debug 变成 release 了,其实问题还隐含着,只是你逃避了。

这无异于掩耳盗铃。

我来回复

您尚未登录,请登录后再回复。点此登录或注册