Use DYLD_INSERT_LIBRARIES em vez de LD_PRELOAD no Mac OS. Talvez seja necessário definir DYLD_FORCE_FLAT_NAMESPACE também. Por exemplo,
DYLD_INSERT_LIBRARIES=./libfaketime.so.1 DYLD_FORCE_FLAT_NAMESPACE=y FAKETIME="-15d" date
Executando o Mac OS 10.7.2 e tentando executar libfaketime e nada acontece. Eu instalei e corri exatamente como indicado apenas a hora e data ficar exatamente como estão definidas no sistema? Alguém mais é capaz de executar isso com sucesso no OSX?
$ date
Mon Jan 30 21:05:09 CST 2012
$ LD_PRELOAD=./libfaketime.so.1 FAKETIME="-15d" date
Mon Jan 30 21:05:32 CST 2012
Se você compilar a biblioteca assim:
gcc -shared -fPIC mylib.c -o mylib.so
Você pode criar variáveis de ambiente:
export DYLD_INSERT_LIBRARIES=./mylib.so
export DYLD_FORCE_FLAT_NAMESPACE=y
Em seguida, execute com a nova biblioteca carregada:
./program
Obs:
Working on macOS High Sierra (v 10.13.1)