Sustitución de la dependencia DarwinPorts con otro paquete
-
19-09-2019 - |
Pregunta
¿Hay una manera de satisfacer una cierta dependencia de puertos con otro paquete (de la especificada) en MacPorts? Más específicamente, para usar el paquete XYZ-devel en lugar de sólo XYZ para un segundo puerto que requiere XYZ?
Gracias de antemano.
Solución
Si el puerto -devel
no se ofrece como una variante, entonces la única forma es editar el portfile.
$ sudo port edit $the_port
se abrirá el puerto especificado en un editor. Puede cambiar la dependencia desde el puerto de liberación al puerto -devel
allí.
Tenga en cuenta que:
- Esto puede romper el puerto, ya que no puede funcionar con la versión
-devel
(poco probable, pero posible). - Los cambios realizados en el portfile conseguirá revertido en cualquier momento que hacen un
port selfupdate
. Si no quiere tener que "fijar" el portfile cada vez que actualice, es posible que desee establecer un local de portfile repositorio .
Otros consejos
Puede utilizar el "puerto de variantes de" comando para mostrar la lista de variantes disponibles para un puerto determinado. Ej:
[michaelsafyan@codemage ~]$ port variants ffmpeg ffmpeg has the variants: darwin_10: Platform variant, selected automatically no_gpl: disallow use of GPL code, license will be LGPL no_mmx: disable all x86 asm optimizations speex: enable Speex decoding via libspeex
A continuación, puede utilizar "+ Variantname " para activar o "- Variantname " para desactivar una variante dada para la instalación (por ejemplo, se puede utilizar "sudo port instalar ffmpeg + speex" para instalar ffmpeg con la variante speex). Esta es la única manera (que no se rompa MacPorts) que se puede seleccionar entre diferentes configuraciones y dependencias.