Opened 15 years ago

Closed 15 years ago

#5165 closed defect (fixed)

BUG: xrender installation fails

Reported by: vincent-opdarw@… Owned by: blb@…
Priority: Normal Milestone:
Component: ports Version: 1.0
Keywords: Cc:
Port:

Description

I've installed Apple X11 and X11SDK. Then "sudo port -v install xrender" fails:

[...] if /bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I. -I/usr/X11R6/include -DXTHREADS -g -O2 -MT AddTrap.lo -MD -MP -MF ".deps/AddTrap.Tpo" \

-c -o AddTrap.lo test -f 'AddTrap.c' || echo './'AddTrap.c; \

then mv -f ".deps/AddTrap.Tpo" ".deps/AddTrap.Plo"; \ else rm -f ".deps/AddTrap.Tpo"; exit 1; \ fi

gcc -DHAVE_CONFIG_H -I. -I. -I. -I/usr/X11R6/include -DXTHREADS -g -O2 -MT

AddTrap.lo -MD -MP -MF .deps/AddTrap.Tpo -c AddTrap.c -fno-common -DPIC -o .libs/AddTrap.o AddTrap.c: In function 'XRenderAddTraps': AddTrap.c:38: error: 'xRenderAddTrapsReq' undeclared (first use in this function) AddTrap.c:38: error: (Each undeclared identifier is reported only once AddTrap.c:38: error: for each function it appears in.) AddTrap.c:38: error: 'req' undeclared (first use in this function) AddTrap.c:47: error: 'sz_xRenderAddTrapsReq' undeclared (first use in this function) AddTrap.c:47: error: parse error before ')' token AddTrap.c:47: error: 'X_RenderAddTraps' undeclared (first use in this function) AddTrap.c:54: error: 'sz_xTrap' undeclared (first use in this function) make[1]: * [AddTrap.lo] Error 1 make: * [all] Error 2

Attachments (1)

config.log (34.5 KB) - added by vincent-opdarw@… 15 years ago.
/opt/local/var/db/dports/build/file._opt_local_var_db_dports_sources_rsync.rsync.opendarwin.org_dpupdate_dports_x11_xrender/work/libXrender-0.9.0/config.log

Download all attachments as: .zip

Change History (11)

comment:1 Changed 15 years ago by toby@…

Owner: changed from darwinports-bugs@… to blb@…
severity: majornormal

comment:2 Changed 15 years ago by mww@…

Summary: xrender installation failsBUG: xrender installation fails

comment:3 Changed 15 years ago by blb@…

Looks like it isn't properly picking up the render includes. You do have the render port, version 0.9, installed, correct?

If so, can you attach the config.log file after it fails (this file is found in /opt/local/var/db/dports/ build/ file._opt_local_var_db_dports_sources_rsync.rsync.opendarwin.org_dpupdate_dports_x11_xrender/ work/libXrender-0.9.0 assuming a default install of DarwinPorts.

Changed 15 years ago by vincent-opdarw@…

Attachment: config.log added

/opt/local/var/db/dports/build/file._opt_local_var_db_dports_sources_rsync.rsync.opendarwin.org_dpupdate_dports_x11_xrender/work/libXrender-0.9.0/config.log

comment:4 Changed 15 years ago by vincent-opdarw@…

I've just found this on Google:

http://mail.gnome.org/archives/gnome-love/2004-September/msg00002.html

but this is quite old.

comment:5 Changed 15 years ago by blb@…

Looks like the issue is:

configure:20705: checking for RENDER_CFLAGS configure:20713: $PKG_CONFIG --exists "render >= $RENDER_VERSION" >/dev/null 2>&1 configure:20716: $? = 0 configure:20726: result:

That result should be coming back with something like "-I/opt/local/include". This could be caused by several things. First is that render's pkgconfig file could be wonky, so can you post your /opt/local/lib/ pkgconfig/render.pc file? Second, in Terminal, what is the result of "echo $RENDER_CFLAGS" (in case that's been set somehow)?

comment:6 Changed 15 years ago by vincent-opdarw@…

prunille:~> cat /opt/local/lib/pkgconfig/render.pc prefix=/opt/local exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include

Name: Render Description: Render extension headers Version: 0.9 Cflags: -I${includedir}

And $RENDER_CFLAGS is not defined.

comment:7 Changed 15 years ago by vincent-opdarw@…

Also, "pkg-config --cflags render" outputs a blank line, and

prunille:~> pkg-config --debug render [...] Reading 'render' from file '/opt/local/lib/pkgconfig/render.pc' Parsing package file '/opt/local/lib/pkgconfig/render.pc'

line>prefix=/opt/local

Variable declaration, 'prefix' has value '/opt/local'

line>exec_prefix=${prefix}

Variable declaration, 'exec_prefix' has value '/opt/local'

line>libdir=${exec_prefix}/lib

Variable declaration, 'libdir' has value '/opt/local/lib'

line>includedir=${prefix}/include

Variable declaration, 'includedir' has value '/opt/local/include'

line> line>Name: Render line>Description: Render extension headers line>Version: 0.9 line>Cflags: -I${includedir}

Path position of 'Render' is 1 Package Render has -I/opt/local/include in Cflags Removing -I/opt/local/include from cflags for render Adding 'render' to list of known packages, returning as package 'render'

I have $C_INCLUDE_PATH defined to "/Users/vinc17/include:/opt/local/include". If I undefine it, then "pkg-config --cflags render" outputs -I/opt/local/include.

Anyway, even though /opt/local/include isn't listed in the -I, it is in the C include path. Could the error come from a conflict between headers?

Also, I think that when installing things, such user-defined environment variables should be reset by "port".

comment:8 Changed 15 years ago by blb@…

(In reply to comment #6)

... I have $C_INCLUDE_PATH defined to "/Users/vinc17/include:/opt/local/include". If I undefine it, then "pkg-config --cflags render" outputs -I/opt/local/include.

Anyway, even though /opt/local/include isn't listed in the -I, it is in the C include path. Could the error come from a conflict between headers?

Ah, that would be it; when pkgconfig sees /opt/local/include in C_INCLUDE_PATH, it removes it from needing it for render, so gcc doesn't use a "-I" switch for it. Because of this, gcc then picks up the stuff in /usr/X11R6/include first, and the render headers there are old, hence the undefined errors.

I take it 'env C_INCLUDE_PATH="" port install xrender' works fine then?

Also, I think that when installing things, such user-defined environment variables should be reset by "port".

This has come up before on the DP mailing list, but unfortunately nothing's come of it yet (although I can't find any links at the moment). I'd suggest a new bug against base for such a thing.

comment:9 Changed 15 years ago by vincent-opdarw@…

I take it 'env C_INCLUDE_PATH="" port install xrender' works fine then?

Yes, I could install it with that.

comment:10 Changed 15 years ago by blb@…

Resolution: fixed
Status: newclosed

Resolving this since bug 5268 covers the issue.

Note: See TracTickets for help on using tickets.