2009-10-02 8 views
6

He tratado de obtener postgresql 8.4 a través de MacPorts (en Snow Leopard), pero parece que las dependencias son infinitas, incluida la versión anterior de cosas que ya están disponibles en Snow Leopard, el fregadero de la cocina y quién sabe si finalmente terminaré con Windows 7 ...¿Cómo evitar la instalación de dependencias innecesarias con MacPorts?

¿Hay alguna forma de obtener solo aquellas dependencias absolutamente necesarias para ejecutar cosas desde la línea de comandos en Mac?

Especialmente estoy tratando de evitar la instalación de la versión anterior de python, paquetes Xorg, etc.

¿Alguna idea? Hasta ahora parece que es mejor evitar los MacPorts por completo.

+0

No veo ninguna dependencia de postgresql84 en xorg- * o py2 *. ¿Qué paquetes exactamente intentas instalar? – outis

+0

¿Qué variantes está cargando? 0 ¿Cuál es la línea de comando que usa younare para hacer la instalación – Mark

+0

Estaba usando: puerto sudo install postgresql84 + python – stefanB

Respuesta

8

En cuanto a la port file for postgresql84, la variante +python significa en realidad python2.5. La dependencia del módulo python tkinter en Tk probablemente construya la mayoría de las dependencias que de manera predeterminada crean una versión X11 de Tk en lugar de la variante + de cuarzo. Puede cambiar eso especificando esa variante y reinstalando. La forma más sencilla de tratar las variantes es agregar las opciones que normalmente desea usar como predeterminadas a las del /opt/local/etc/macports/variants.conf.

Lamentablemente, por el momento, la versión de la variante tk +quartz es broken on Snow Leopard. Por lo tanto, si usted no está planeando utilizar tkinter (o libre) con el python2.5 MacPorts, se puede forzar la eliminación después de los hechos de los módulos deseados:

port installed 
port -f uninstall tk Xft2 xorg-libX11 ... 

Es posible que desee hacer primero un seco ejecute agregando la opción -y para ver exactamente cuáles serán los efectos del uninstall.

Tenga en cuenta que el puerto python26 tiene una práctica variante +no_tkinter que podría ser útil una vez que los puertos portgresql se hayan actualizado a python2.6.

+0

gracias por el análisis en profundidad, parece que por ahora intentaré compilar lo que necesito a mano, si eso falla ' Intentaré MacPorts otra vez ... – stefanB

+0

Creé un boleto en MacPorts para que la variante de python use python2.6. http://trac.macports.org/ticket/22075 –

6

Es potencialmente un poco de trabajo pesado (y definitivamente infringe la navaja de Occam para este escenario particular) ... pero si eres positivo, sabes qué dependencias no quieres/necesitas, siempre se pueden pasar como guiones args -delimited después de la llamada de puerto:

port install sweetPort -depYouDontWant -depYouDontNeed ... 

yo sé que ha pasado un tiempo desde el PO, pero espero que esto ayude ... alguien.

+0

me ayudó. ¡¡¡Gracias!!! –

+0

Esto no funciona en macports 2.3.4 ... 'sudo port install ImageMagick -ghostscript' aún busca e instala ghostscript – Normadize

+0

crea tu propio repositorio, modifica el archivo de puerto, aumenta la velocidad, ejecuta portindex, instala tu versión –

Cuestiones relacionadas