当前位置: 技术问答>linux和unix
同一个文件GCC每次编译出来的二进制文件都一样的吗?
来源: 互联网 发布时间:2017-05-21
本文导语: 如果所有CPP文件都不变动,重新编译整个工程,最后生成的二进制可执行文件是一模一样的吗?[我用二进制比较工具比较了可执行文件,结果一模样] 生成的文件跟什么有关?机器?时间? 如果每次生成的文件都...
如果所有CPP文件都不变动,重新编译整个工程,最后生成的二进制可执行文件是一模一样的吗?[我用二进制比较工具比较了可执行文件,结果一模样]
生成的文件跟什么有关?机器?时间?
如果每次生成的文件都一模样的话,那么就不用像windows下的vc那样每次发布程序还要保留对应的PDB了,只要保留一模样的源码就行了?
生成的文件跟什么有关?机器?时间?
如果每次生成的文件都一模样的话,那么就不用像windows下的vc那样每次发布程序还要保留对应的PDB了,只要保留一模样的源码就行了?
|
第一个问题,既然变化了,二进制应该是变化的,如果只是时间变化了(如 touch 文件),二进制可能是不变的,自己可以测试一下
第二个问题可以 google “release core 调试”,列出几个
http://www.cnblogs.com/np10/archive/2013/01/24/2875573.html
http://blog.csdn.net/sky_qing/article/details/8556128
jbuilder运行时会编译整个工程的文件,请问大家如何改成只编译当前文件。
iis7站长之家
第二个问题可以 google “release core 调试”,列出几个
http://www.cnblogs.com/np10/archive/2013/01/24/2875573.html
http://blog.csdn.net/sky_qing/article/details/8556128
|
#include
static const char compile_time[] = __DATE__ " " __TIME__;
int
main(int argc, char *argv[])
{
printf("compile_time: %sn", compile_time);
return 0;
}