Configuración de ghostscript rota

8

Algo ha salido mal con mi configuración de ghostscript, por lo que obtengo los siguientes errores cuando, por ejemplo, uso epstopdf


 ./base/gsicc_manage.c:1088: gsicc_open_search(): Could not find default_gray.icc 
| ./base/gsicc_manage.c:1914: gsicc_init_iccmanager(): cannot find default icc profile
  ./base/gsicc_manage.c:1088: gsicc_open_search(): Could not find default_rgb.icc 
| ./base/gsicc_manage.c:1708: gsicc_set_device_profile(): cannot find device profile

**** Unable to open the initial device, quitting.
  ./base/gsicc_manage.c:1088: gsicc_open_search(): Could not find default_gray.icc 
| ./base/gsicc_manage.c:1708: gsicc_set_device_profile(): cannot find device profile
Unrecoverable error: unknownerror in .special_op
  ./base/gsicc_manage.c:1088: gsicc_open_search(): Could not find default_gray.icc 
+ ./base/gsicc_manage.c:2650: gs_setdefaultgrayicc(): cannot find default gray icc profile

Descubrí la siguiente solución (insertada en mi .bashrc)

alias gs='gs -sICCProfilesDir=/usr/share/color/icc/ghostscript/'<br>
alias epstopdf='epstopdf --gsopt=-sICCProfilesDir=/usr/share/color/icc/ghostscript/' <br>
alias ps2pdf='ps2pdf -sICCProfilesDir=/usr/share/color/icc/ghostscript/'

Sin embargo, no pude encontrar una manera de hacer que esta configuración sea 'global'. Por ejemplo, cuando digamos que epstopdf se llama desde export_fig matlab, produce errores similares a los anteriores, a menos que implemente una solución alternativa similar.

Creo que esto ha tenido efectos negativos al evitar que la impresión funcione correctamente en mi sistema.

Ubuntu 16.04  
ghostscript, Version: 9.18~dfsg~0-0ubuntu2.6

Cualquier ayuda muy apreciada.

James
fuente
Complete SWAG, pero ¿ha intentado reinstalar el libgs9-commonpaquete?
steeldriver
Lo hice con sudo dpkg --purge --force-depends libgs9-common... sudo apt-get install libgs9-common. Parece que se solucionó epstopdfpero detuvo el funcionamiento de la solución alternativa gs. ¿Debo seguir adelante y purgar libgs9-common completamente (desinstalar dependencias) y luego reinstalar todos los paquetes?
James
No lo sé . . . Hubiera intentado en sudo apt install --reinstall libgs9-commonlugar del nivel inferior dpkg, pero no sé si el resultado sería diferente. ¿Sabes de dónde /usr/share/color/icc/ghostscript/vienen los archivos? No puedo encontrar un paquete que los proporcione (los perfiles de color predeterminados parecen vivir /usr/share/ghostscript/9.18/iccprofiles/)
steeldriver
Reinstalar a través de apt fue lo mismo. La solución alternativa necesitaba actualizarse /usr/share/ghostscript/9.18/iccprofiles/como usted dice. ¿Alguna otra cosa culpable para intentar reinstalar?
James
Ejecute gs --helpy copie la lista de Search paths en su pregunta. ¿Se han definido variables de entorno relevantes ( env | grep GS_)?
steeldriver

Respuestas:

20

Esto es lo que funcionó para mí:

sudo rmdir /usr/share/ghostscript/9.25/iccprofiles
sudo apt-get install --reinstall libgs9-common

Algo había dejado un directorio vacío en /usr/share/ghostscript/9.25/iccprofiles. Parece que libgs9-commoncrea un enlace simbólico de /usr/share/ghostscript/9.25/iccprofilesa /usr/share/color/icc/ghostscript, pero silenciosamente no puede crearlo si ya hay algo en el sistema de archivos.

Ville Laurikari
fuente
66
También funcionó para mí, en 18.04.
kaleissin
1
Asombroso. Tenía la impresión completamente rota en Ubuntu 18.04 y luego en 18.10, luego me di cuenta de que Evince no podía abrir archivos PS. Tu solución funciona perfectamente.
Andrea Lazzarotto
¡Ville, también trabajó para mí! ¡Muchas gracias de hecho! Estaba teniendo problemas con cups-pdf no imprimiendo en ~ / PDF; resultó que gs estaba fallando con el código 255 (gracias a Volker por señalar eso) y a ti por tu receta, ya que finalmente trajo a gs de un estado roto.
Robert