G'day,
Об этом уже спрашивали для VC ++, но мне интересен ответ для Solaris.
Я компилирую и связываю следующий тривиальный код C:
#include <stdio.h>
int main() {
printf("Hello world!\n");
return 0;
}
с помощью команды:
cc -o hello1 hello.c
и сделать это пару раз, чтобы получить исполняемые файлы hello2 и hello3. Это делается на одной машине с одним и тем же компилятором и в одном и том же каталоге в разное время.
Размеры исполняемых файлов одинаковы, но diff сообщает, что двоичные файлы различаются, а cmp -l сходит с ума с длинным списком различных мест.
Кто-нибудь знает, что cc встраивает в исполняемые файлы, чтобы они отличались? Timestamps
Редактировать: Удаление исполняемых файлов, как предложил Крис ниже, заставляет diff сообщать о двух исполняемых файлах как идентичных.
ура