¿cómo consigo homebrew compilar un paquete (clisp) con el conjunto de indicadores de depuración?

1

¿Existe un comando de estilo de paquete brew --with-debug-flag-set disponible para que brew genere un paquete que incluya información de depuración?

Específicamente, me gustaría que se construyera el clisp de esta manera para que el desmontaje funcione en la respuesta.

Me imagino algo en la línea de:

brew install clisp --with-debug

o somesuch.

    
pregunta decuser 07.02.2017 - 17:07

2 respuestas

1

Según Mike McQuaid (responsable principal de Homebrew) esto no es posible.

    
respondido por el decuser 20.02.2017 - 00:41
1

Una fórmula de elaboración es un archivo Ruby ( .rb ) que contiene las opciones de compilación que contiene. Homebrew's brew install|reinstall permite especificar una URL en lugar de un nombre de fórmula, por lo que se pueden agregar indicadores de compilación a una copia en línea de la fórmula y alojarlos en un servicio como gist.github.com .

Aquí hay un ejemplo de archivo ruby que tiene una opción de compilación anulada.

def install
   args = std_cmake_args

   # OVERRIDE: Force cmake to use debug flags
   args << "-DCMAKE_BUILD_TYPE=Debug"

   system "cmake", ".", *args
end

std_cmake_args , definido en la parte interna de Homebrew formula.rb es una variable interna de toda la fórmula de Homebrew cmake y proporciona valores predeterminados sanos a cada cmake de compilación antes de agregar argumentos adicionales.

Este ejemplo utiliza cmake , cada proyecto tendrá sus propias herramientas de compilación y, por lo tanto, potencialmente diferentes técnicas para agregar indicadores de compilación. Por ejemplo, para indicar a cmake que use marcas de depuración, es args << "-DCMAKE_BUILD_TYPE=Debug"

Una vez que se hayan realizado estos cambios en el archivo .rb y alojados en línea, puede reinstalar el paquete con las nuevas opciones utilizando la opción de línea de comando --build-from-source .

brew reinstall --build-from-source https://<path to formula>.rb
  1. ADVERTENCIA : si usa gist.github.com , tenga en cuenta que la versión "Raw" es la URL que desea. De lo contrario, intentará instalar el HTML (por ejemplo, la vista previa del código) de la página, que no funcionará. :)

  2. ADVERTENCIA : recuerde que esto volverá a instalar el paquete especificado en el directorio de Homebrew con marcas de depuración, por lo que la versión antigua "lanzada" u "optimizada" ya no estará disponible. Así que recuerde volver a instalar la versión sin depuración utilizando la técnica estándar brew install una vez que se haya completado la solución de problemas o de lo contrario tendrá una versión de depuración de una biblioteca en su computadora hasta que se actualice manualmente. :)

respondido por el tresf 20.06.2018 - 17:03

Lea otras preguntas en las etiquetas