Una fórmula de cerveza es un Rubí ( .rb
) que contiene las opciones de compilación. El archivo brew install|reinstall
permite especificar una URL en lugar de un nombre de fórmula, por lo que se pueden añadir banderas de compilación a una copia en línea de la fórmula y alojada 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
definida en el interior de Homebrew formula.rb
es una variable interna de todos los Homebrew cmake
y proporciona valores predeterminados sanos para cada cmake
antes de añadir argumentos adicionales.
Este ejemplo utiliza cmake
Cada proyecto tendrá sus propias herramientas de compilación y, por lo tanto, técnicas potencialmente diferentes para añadir banderas de compilación. Por ejemplo, para decirle a cmake
para utilizar las banderas de depuración, es args << "-DCMAKE_BUILD_TYPE=Debug"
Una vez realizados estos cambios en el .rb
archivo y alojado en línea, puede reinstalar el paquete con las nuevas opciones utilizando el --build-from-source
opción de línea de comandos.
brew reinstall --build-from-source https://<path to formula>.rb
-
ADVERTENCIA : Si se utiliza gist.github.com
, tenga en cuenta que la versión "Raw" es la URL que desea. Si no, intentará instalar el HTML (por ejemplo, la vista previa del código) de la página, lo que no funcionará. :)
-
ADVERTENCIA : Recuerde que esto reinstalará el paquete especificado en el directorio Homebrew con banderas de depuración, por lo que la antigua versión "release" u "optimizada" ya no estará disponible. Por lo tanto, recuerde reinstalar la versión sin depuración utilizando el método estándar brew install
técnica una vez que se haya completado la resolución de problemas o, de lo contrario, tendrá una versión de depuración de una biblioteca en su ordenador hasta que se actualice manualmente. :)