Actualizando timestamp al compilar

Este es un tip corto, que lleva cierto tiempo pasándome y lo comparto con ustedes, por si les sale. Mi PC por razones de batería[la cual acabo de cambiar] a veces me pierde[perdía] el tiempo del sistema, y a veces ante la compilación de un proyecto[Mystiq] me daba el siguiente error, por ejemplo:

make: Warning: File ‘mystiq.pro’ has modification time 12915 s in the future

Investigando un poco, leo que a veces esto también sucede con la diferencia horaria, es decir, que el proyecto que intentas compilar es subido a un repo con la hora en el futuro, es decir, que el proyecto se subio a github o a otra forja de código, desde un lugar donde está adelantada la hora.

Resolver este ligero problema es fácil, es solo actualizar el ‘timestamp’, o en español, ‘marca temporal’. Lo cual logramos ejecutando en la carpeta donde está el proyecto:

find ./ -type f -exec touch {} +

Y listo. Se debe proceder a hacer ‘make clean’ nuevamente y comenzar a compilar de nuevo, pues los archivos de la compilación anterior están con el timestamp erróneo.

Entonces… Hasta acá el tip y espero les sirva. Saludos a todos.

 

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en una estrella para puntuar!

Promedio de puntuación 5 / 5. Recuento de votos: 1

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.

2 comentarios


  1. Warning: Undefined array key 1 in /var/www/html/sysadminsdecuba/wp-content/plugins/wp-useragent/wp-useragent-detect-os.php on line 668
    Firefox 72.0 Firefox 72.0 Ubuntu x64 Ubuntu x64
    Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0

    Hum… o tienes la hora mal o no tienes bien configurada la zona horaria…

    Revisa eso…

    A mi nunca me ha pasado eso ‘sudo dpkg-reconfigure tzdata’ y chequea que esté correcto (America/Havana)

    Saludos.

  2. Firefox 72.0 Firefox 72.0 GNU/Linux x64 GNU/Linux x64
    Mozilla/5.0 (X11; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0

    Puedes mirar unos tips sobre eso que dan en ReproducibleBuilds, para evitar problemas incluso mucho mayores… ya no programo en C/C++ (llegué al siglo 21) pero es bueno saber estas cosa…

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.