Opened 11 years ago

Closed 11 years ago

#20638 closed defect (fixed)

xorg-server: undefined symbols _glProgramEnvParameters4fvEXT _glProgramLocalParameters4fvEXT on Tiger PowerPC

Reported by: ryandesign (Ryan Schmidt) Owned by: jeremyhu (Jeremy Huddleston Sequoia)
Priority: Normal Milestone:
Component: ports Version: 1.7.1
Keywords: Cc:
Port: xorg-server

Description

I can build xorg-server on Tiger Intel now, but not on Tiger PowerPC:

/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: Undefined symbols:
_glProgramEnvParameters4fvEXT
_glProgramLocalParameters4fvEXT

Attached are the build logs from the two machines. I've tried to minimize the differences between them. I'm not able to tell by diffing them why the PowerPC build fails.

I note xorg-server builds with dbus if it's present (see Intel log).

Attachments (4)

xorg-server-tiger-intel.txt.bz2 (25.6 KB) - added by ryandesign (Ryan Schmidt) 11 years ago.
successful build on Tiger Intel
xorg-server-tiger-ppc.txt.bz2 (23.2 KB) - added by ryandesign (Ryan Schmidt) 11 years ago.
unsuccessful build on Tiger PowerPC
glext.h (220.3 KB) - added by dbevans (David B. Evans) 11 years ago.
tiger ppc glext.h
xorg-tiger-ppc.patch (2.1 KB) - added by jeremyhu (Jeremy Huddleston Sequoia) 11 years ago.
updated xorg-tiger-ppc.patch

Download all attachments as: .zip

Change History (13)

Changed 11 years ago by ryandesign (Ryan Schmidt)

successful build on Tiger Intel

Changed 11 years ago by ryandesign (Ryan Schmidt)

unsuccessful build on Tiger PowerPC

comment:1 Changed 11 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Can you please try the attached patch?

comment:2 Changed 11 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Status: newassigned

comment:3 Changed 11 years ago by dbevans (David B. Evans)

This patch made no difference that I can see. Still fails as shown above.

comment:4 Changed 11 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Can you please do this on both your ppc and intel boxes:

grep GL_EXT_gpu_program_parameters /System/Library/Frameworks/OpenGL.framework/Headers/glext.h  

Actually, if you could attach your /System/Library/Frameworks/OpenGL.framework/Headers/glext.h, that would help a bit.

If the above patch didn't work, it looks like your glext.h is explicitly setting GL_EXT_gpu_program_parameters to 1 even though the symbols are not defined. That is naughty. Perhaps I should make these checks all runtime instead of compile-time... sigh.

comment:5 Changed 11 years ago by dbevans (David B. Evans)

Here's the grep output for the ppc case:

devans% grep GL_EXT_gpu_program_parameters /System/Library/Frameworks/OpenGL.framework/Headers/glext.h
#define GL_EXT_gpu_program_parameters       1
#if GL_EXT_gpu_program_parameters
#if GL_EXT_gpu_program_parameters

Full include file is attached

Ryan will have to supply the intel version as I don't have one.

Changed 11 years ago by dbevans (David B. Evans)

Attachment: glext.h added

tiger ppc glext.h

Changed 11 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Attachment: xorg-tiger-ppc.patch added

updated xorg-tiger-ppc.patch

comment:6 Changed 11 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Ok, it looks like OpenGL.framework flat out lies to us on Tiger/ppc ... Try the updated patch.

comment:7 Changed 11 years ago by dbevans (David B. Evans)

Building .... news at 11.

comment:8 Changed 11 years ago by dbevans (David B. Evans)

OK, build completed without error although still see these multiple definition warnins:

libtool: link: /usr/bin/gcc-4.0 -O2 -DROOTLESS_WORKAROUND -DROOTLESS_SAFEALPHA -DNO_ALLOCA -Objc -Wl,-u -Wl,_miDCInitialize -Wl,-framework -Wl,Carbon -Wl,-framework -Wl,Cocoa -Wl,-framework -Wl,CoreAudio -Wl,-framework -Wl,IOKit -Wl,-framework -Wl,OpenGL -o X11.bin bundle-main.o mach_startupServer.o mach_startupUser.o ../../../dix/.libs/dixfonts.o -Wl,-framework -Wl,CoreServices -Wl,-framework -Wl,ApplicationServices  -L/System/Library/Frameworks/OpenGL.framework/Libraries -lGL -L/opt/local/lib ../../../hw/xquartz/.libs/libXquartz.a ../../../hw/xquartz/xpr/.libs/libXquartzXpr.a ../../../miext/rootless/.libs/librootless.a ../../../hw/xquartz/pbproxy/.libs/libxpbproxy.a /opt/local/lib/libAppleWM.dylib /opt/local/lib/libXext.dylib /opt/local/lib/libXfixes.dylib /opt/local/lib/libX11.dylib ../../../fb/.libs/libfb.a ../../../xfixes/.libs/libxfixes.a ../../../Xext/.libs/libXext.a ../../../dbe/.libs/libdbe.a ../../../render/.libs/librender.a ../../../randr/.libs/librandr.a ../../../damageext/.libs/libdamageext.a ../../../miext/damage/.libs/libdamage.a ../../../miext/shadow/.libs/libshadow.a ../../../Xi/.libs/libXi.a ../../../xkb/.libs/libxkb.a ../../../xkb/.libs/libxkbstubs.a ../../../dix/.libs/libxpstubs.a ../../../dix/.libs/libdix.a ../../../config/libconfig.a ../../../mi/.libs/libmi.a ../../../os/.libs/libos.a /opt/local/lib/libXfont.dylib -lbz2 /opt/local/lib/libfreetype.dylib /opt/local/lib/libXau.dylib /opt/local/lib/libfontenc.dylib -lz /opt/local/lib/libpixman-1.dylib /opt/local/lib/libXdmcp.dylib -lcrypto -lXplugin ../../../hw/xquartz/GL/.libs/libCGLCore.a ../../../glx/.libs/libglx.a -lm -framework ApplicationServices
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning multiple definitions of symbol _Xalloc
../../../os/.libs/libos.a(utils.o) definition of _Xalloc in section (__TEXT,__text)
/opt/local/lib/libXdmcp.dylib(Alloc.o) definition of _Xalloc
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning multiple definitions of symbol _Xfree
../../../os/.libs/libos.a(utils.o) definition of _Xfree in section (__TEXT,__text)
/opt/local/lib/libXdmcp.dylib(Alloc.o) definition of _Xfree
/usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning multiple definitions of symbol _Xrealloc
../../../os/.libs/libos.a(utils.o) definition of _Xrealloc in section (__TEXT,__text)
/opt/local/lib/libXdmcp.dylib(Alloc.o) definition of _Xrealloc

Started the server, ran gimp and all seems to work.

On start of the server, the following console warnings appear though (did with earlier versions as well). Is there some configuration missing or is this just noise?

.Xquartz starting:
X.Org X Server 1.5.3-apple14
Build Date: 20090827
.
(EE) XKB: Couldn't open rules file /opt/local/share/X11/xkb/rules/base
(EE) XKB: No components provided for device Virtual core keyboard
(EE) XKB: Couldn't open rules file /opt/local/share/X11/xkb/rules/base
(EE) XKB: No components provided for device keyboard
Could not init font path element /Library/Fonts, removing from list!
Could not init font path element /System/Library/Fonts, removing from list!

Thanks for the help!

comment:9 Changed 11 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Resolution: fixed
Status: assignedclosed

The XKB stuff is just noise.

The multiple definitions are annoying but fine. They're the same code in two places, so as long as the linker finds one of the two, we're fine...

r56456

Note: See TracTickets for help on using tickets.