Pregunta

Un script make intenta establecer una variable de la siguiente manera:

VER_DEC=$( perl -e "print hex(\"$(VER_HEX)\");" )

donde VER_HEX tiene un valor de 0a .

Perl parece pensar que VER_HEX es cero, lo que implica que la variable no está configurada (pero es , de acuerdo con un eco de depuración en el archivo MAKE).

¿Tiene make una forma más sencilla de convertir bases?

Si es así, ¿qué versión de make se requiere?

ACTUALIZACIÓN: Este es un Makefile GNU. A la invocación de perl le falta la palabra shell dentro del $ () y posiblemente tenga problemas de escape con las comillas dobles.

¿Fue útil?

Solución

VER_DEC=$(shell printf "%d" 0x$(VER_HEX))

si estás hablando de Makefile . Porque tu no se parece a Makefile para mí, más bien a shell. (Creo que $ (shell) es una extensión de GNU, pero la mayoría de las veces puede reemplazarlo de forma segura con backticks).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top