Make builds reproducible
Opened this issue · 1 comments
Benjamin-Loison commented
For Shortcut
that is the simplest program, .o
are reproducible on the same machine but the .exe
isn't even if we switch to Console application
to not have any additional arguments in addition to those necessary for building a binary from the object file.
Benjamin-Loison commented
Even on simplest example:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello world!" << endl;
return 0;
}
MinGW g++ isn't deterministic (while Linux g++ is deterministic) with:
g++ main.cpp
even with -frandom-seed=0 -Werror=date-time -fno-guess-branch-probability
.
However stripping (with strip.exe
) brings determinism.
Being able to reproduce without stripping would be nice.
Should deepen Compiler Flags
from Project build options
.