Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.

vmlinux MD5 sum

Altera_Forum
Honored Contributor II
1,485 Views

Hi all, 

I have a requirement to meet certain software certification specifications that require me to be able to verify that a build of the same source tree can be reproduced exactly with identical binaries. This means that if I compile my source code and calculate a MD5 sum of the ouput binary, then recompile again and recalculate the MD5 on the new binary, the two should match. This does not occur with the vmlinux file. If I compile the uClinux tree, take a md5 of the vmlinux file, then recompile again the MD5 sum of the new vmlinux file does not match the previous one. I did not change any code. just simply remake. 

One thing I do know is that the linux kernel contains a timestamp string indicating when the last compile was done. This would be the source of one difference. However, when doing a binary compare of the two files, I find that there are allot of differences, more than just these timestamp strings. Some differences show up in the ELF header section. 

Does anyone know how I can identifiy that the two binaries are in fact the same? Does anyone know how I can build the kernel and get the same binary twice? 

 

Thanks in advanced, 

Tony
0 Kudos
1 Reply
Altera_Forum
Honored Contributor II
757 Views

OK. So it seems that the differences trace back to the System.map file. Does anyone know what could cause the addressing of the kernel symbols to relocate and cause differing map files? 

 

Tony
0 Kudos
Reply