如果在w/gcc的不同时间构建相同的代码,则生成的二进制文件将具有不同的内容.好吧,我对此并不狂热,但事实就是如此.
但是,我最近遇到的情况是,使用相同版本的gcc构建的相同代码生成的二进制文件大小与先前版本不同(大约1900字节).
有谁知道可能导致这些情况的原因是什么?这是某种ELF问题吗?是否有任何工具(除了ldd)可用于转储二进制文件的内容以查看究竟有什么不同?
提前致谢.
我有3台造型机.一个运行在Windows 2000上,一个运行XP SP3,另一个运行64位Windows Server 2008.我有一个原生的C++项目要构建(我正在使用visual studio 2005 SP1构建).我的目标是使用这些构建机器"完全"构建相同的dll.
确切地说,我的意思是一点一点(当然除了构建时间戳).
有了win2k和winxp,我就得到了相同的dll.但它们与使用win2008服务器构建的dll不同.我已经设法得到几乎相同的dll,但有一些差异.在反汇编文件后,我发现函数顺序不一样(3个函数的顺序不同).
有谁知道这可能是什么原因?
还有一个问题:在vcbuild.exe中我找到了一个开关/ ORDER.以功能订单文件为输入.任何人都知道该文件应该是什么样的?