2010-05-12 29 views
0

Bonjour J'ai un problème avec la compilation d'un ghostscript à partir de ports dans openbsd 4.7."jpeglib.h: Aucun fichier ou répertoire" ghostscript port dans OPENBSD

SO j'ai jpeg-7 installé, j'ai le dernier arbre de port pour obsd4.7.

===> Building for ghostscript-8.63p11 
mkdir -p /usr/ports/pobj/ghostscript-8.63p11/ghostscript-8.63/obj 
gmake LDFLAGS='-L/usr/local/lib -shared' GS_XE=./obj/../obj/libgs.so.11.0 STDIO_IMPLEMENTATION=c DISPLAY_DEV=./obj/../obj/display.dev BINDIR=./obj/../obj GLGENDIR=./obj/../obj GLOBJDIR=./obj/../obj PSGENDIR=./obj/../obj PSOBJDIR=./obj/../obj CFLAGS='-O2 -fno-reorder-blocks -fno-reorder-functions -fomit-frame-pointer -march=i386 -fPIC -Wall -Wstrict-prototypes -Wmissing-declarations -Wmissing-prototypes -fno-builtin -fno-common -DGS_DEVS_SHARED -DGS_DEVS_SHARED_DIR=\"/usr/local/lib/ghostscript/8.63\"' prefix=/usr/local ./obj/../obj/gsc 
gmake[1]: Entering directory `/usr/ports/pobj/ghostscript-8.63p11/ghostscript-8.63' 
cc -I./obj/../obj -I./src -DHAVE_MKSTEMP -O2 -fno-reorder-blocks -fno-reorder-functions -fomit-frame-pointer -march=i386 -fPIC -Wall -Wstrict-prototypes -Wmissing-declarations -Wmissing-prototypes -fno-builtin -fno-common -DGS_DEVS_SHARED -DGS_DEVS_SHARED_DIR=\"/usr/local/lib/ghostscript/8.63\" -DGX_COLOR_INDEX_TYPE='unsigned long long' -o ./obj/../obj/sdctc.o -c ./src/sdctc.c 
In file included from src/sdctc.c:17: 
obj/jpeglib_.h:1:21: jpeglib.h: No such file or directory 
In file included from src/sdctc.c:19: 
src/sdct.h:58: error: field `err' has incomplete type 
src/sdct.h:70: error: field `err' has incomplete type 
src/sdct.h:72: error: field `cinfo' has incomplete type 
src/sdct.h:73: error: field `destination' has incomplete type 
src/sdct.h:84: error: field `err' has incomplete type 
src/sdct.h:87: error: field `dinfo' has incomplete type 
src/sdct.h:88: error: field `source' has incomplete type 
gmake[1]: *** [obj/../obj/sdctc.o] Error 1 
gmake[1]: Leaving directory `/usr/ports/pobj/ghostscript-8.63p11/ghostscript-8.63' 
gmake: *** [so] Error 2 
*** Error code 2 

Stop in /usr/ports/print/ghostscript/gnu (line 2225 of /usr/ports/infrastructure/mk/bsd.port.mk). 

J'ai essayé de placer un plus dans CFLAGS param Makefile avec la valeur "-I/usr/local", mais pas de chance = ( Les gens irc [serveur freenode, canal #openbsd] refuse toute aide pour donner ports du tout, et plus encore -. parce que c'est la version 4.7 instable

J'ai mes raisons d'utiliser cette version et les ports, croyez-moi) =

CFLAGS+=  -DSYS_TYPES_HAS_STDINT_TYPES \ 
       -I${LOCALBASE}/include   \ 
       -I${LOCALBASE}/include/ijs  \ 
       -I${LOCALBASE}/include/libpng \ 
+0

Avez-vous envisagé de demander la liste de diffusion OpenBSD ou d'obtenir sur le canal SILC? – Earlz

+0

Earlz: ils sont assez entêtés .. = (Ils ont vraiment très * BAD WORD * sur les problèmes de compilation .. J'ai essayé d'écrire sur cette liste de diffusion, maintenant j'ai deux idées ce qui ne va pas. le port est -STABLE et l'utilisateur est -RELEASE, ceci peut être un problème. Je dois recompiler l'utilisateur entier de -STABLE CVS repo. 2) quelque chose ne va pas avec CFLAGS, mais maintenant, comment pense ce mainteneur de port. il pense vraiment que je suis un idiot et que mon $ CFLASG /etc/mk.conf casse ce port, bien que vous le fassiez, le fichier makefile ajoute les CFLAGS actuels aux cflags qui sont dans Makefile. – holms

+0

donc vous mettez dans CFLAGS personnalisé? Je ne recommanderais pas cela. Et oui, c'est une communauté hostile, au mieux. Je voudrais obtenir l'utilisateur de l'utilisateur à -STABLE cependant. Il est complètement incompatible avec l'utilisation d'un système mixte et peut être la cause de vos problèmes. – Earlz

Répondre

1

ok tant pis, je viens tout recompilé userland et maintenant il est ok =)

+0

Ah, vous avez mis votre -release userland à -stable? – Earlz

+0

ouais je viens de récupérer OpenBSD-all, et recompilé userland, qui fonctionne .. – holms

0

Vous pouvez trouver où jpeglib.h est à l'aide find:

find/-name jpeglib.h 

Une fois que vous connaissez le chemin dans lequel il se trouve, vous pouvez ajouter le bon drapeau -I.

+0

ou emploient le (beaucoup plus maniable) 'localisent jpeglib.h'. vous devrez également ajouter un drapeau '-L'. – Earlz

+0

oui J'ai essayé déjà: # localiser jpeglib.h /usr/local/include/jpeglib.h /usr/ports/pobj/ghostscript-8.63p11/ghostscript-8.63/jasper/src/libjasper/jpg/ jpg_jpeglib.h /usr/ports/pobj/jpeg-7/jpeg-7/jpeglib.h jpeglib.h se trouve dans le répertoire/usr/local/include/=) – holms