MPICH-mpicc创建的可执行文件不反映代码中的更改
我遇到了一个奇怪的问题,当我编译“project_3.c”代码时,“project_3”可执行文件并没有反映代码中的新变化 我通常打字:MPICH-mpicc创建的可执行文件不反映代码中的更改,c,compilation,executable,mpich,C,Compilation,Executable,Mpich,我遇到了一个奇怪的问题,当我编译“project_3.c”代码时,“project_3”可执行文件并没有反映代码中的新变化 我通常打字: mpicc -o project_3 project_3.c MyMPI.c -lm 为了证明代码中的新更改没有反映在可执行文件中,我尝试注释了大量代码并在vi中编写“printf(“Hello World!\n”);”,然后保存并关闭。当我编译并执行该文件时,新的更改没有反映在程序中 我试图解决的问题: 我特意在project_3.c中写了一些乱七八糟的信
mpicc -o project_3 project_3.c MyMPI.c -lm
为了证明代码中的新更改没有反映在可执行文件中,我尝试注释了大量代码并在vi中编写“printf(“Hello World!\n”);”,然后保存并关闭。当我编译并执行该文件时,新的更改没有反映在程序中
我试图解决的问题:
我肯定错过了一些明显的东西,有什么想法吗?什么会导致这样的问题?首先,我将使用
-echo
运行,从您的描述中查看这件事实际上在做什么,您表示您删除了可执行文件,但它仍在运行(假设不执行另一个编译/链接)我看到了两种可能性:1)您不执行您认为正在执行的文件。2) 该文件有一个错误,这使得它可以编译,就像代码的很大一部分被注释掉一样。正是在被注释掉的部分中,你做出了改变。建议您发布代码,或者至少足够(干净地编译)显示问题您是否检查了可执行文件的时间,以确保实际生成了新的可执行文件?我没有。但我会试试那个用户3629249,谢谢你的建议。是的,我也可以发布代码,但我会先检查可执行文件的时间。