On Tue, Oct 11, 2005 at 01:44:28PM -0400, Brian Hammond wrote: > Anyone got a clue on this? >
I tried building on linux at the time but couldn't quite get it to work. After another quick look today it seems your problem may be solved by adding --shared to LDDLFLAGS. For my install( and maybe yours ) Inline seems to be telling gcc to build an executable when it should be telling it to build a shared lib ( Undefined symbols: _main ). With --share added the error messages reduce to Can't load '/tmp/_Inline/lib/auto/GLFW_ae09/GLFW_ae09.so' for module GLFW_ae09: /tmp/_Inline/lib/auto/GLFW_ae09/GLFW_ae09.so: undefined symbol: XF86VidModeQueryExtension at /usr/lib/perl/5.8/DynaLoader.pm line 225. at /usr/local/share/perl/5.8.2/Inline.pm line 500 which seems to be because libXxf86vm is not being included. Can not for the life of me manage to convince gcc to include it. > On 10/3/05 10:50 AM Brian Hammond wrote: > >Hello - > > > >This is my first time using Inline. > > > >I am trying to autowrap a C library called GLFW using Inline C (0.44) on > >Mac OS X. GLFW is a very nice cross-platform OpenGL Framework. It > >deals with the system issues and gets out of the way of your OpenGL > >app. Once I get this working I plan on wrapping a few other libraries > >and making a decent framework for developing games in Perl (ala PyGame > >for Python, but for 3D). > > > >GLFW is built as a static library (libglfw.a) and is installed in the > >usual location (/usr/local/lib). GCC finds it without issue. I am > >having an issue however. To use OpenGL on Mac OS X "natively" (read: > >not through X11), one must link using the -framework OpenGL option to > >GCC. You'll also end up needing -framework AGL (Apple OpenGL) and > >-framework Carbon (GLFW uses Carbon on Mac OS X). > > > >So I have GLFW.pm at the moment compiling fine but failing to find > >certain symbols that I find strange: > > > >ld: Undefined symbols: > >_main > >_Perl_Gthr_key_ptr > >_Perl_Isv_yes_ptr > >_Perl_Tcurpad_ptr > >_Perl_Tmarkstack_ptr_ptr > > > ><snip> > > > >Note that I have to use LDDLFLAGS for the -framework options and not > >LIBS as I get "unknown option to LIBS: -framework" otherwise. > > > >To make this easy for someone to help me, here's how to set this all up: > > > >* Download and install GLFW on Mac OS X 10.3 (I am running 10.3.9) > > > >http://easynews.dl.sourceforge.net/sourceforge/glfw/glfw-2.5.0.tar.bz2 > > > >make macosx-gcc > > > >sudo mkdir -p /usr/local/lib > > > >sudo cp libglfw.a /usr/local/lib > > > >sudo ranlib /usr/local/lib/libglfw.a > > > >sudo mkdir -p /usr/local/include/GL > > > >sudo cp glfw.h /usr/local/include/GL > > > >* Download my script (didn't want to make this email *too* big): > > > >http://brianhammond.com/perl/GLFW.pm > >http://brianhammond.com/perl/glfw-test.pl > > > >* Try my script > > > >perl -MInline=FORCE,NOISY ./glfw-test.pl > > > > > >Let me know if you have any insights on this! > > > >Thanks, Brian H. > > > >PS - I'm not sure it matters but I am using Fink's perl in /sw/bin/perl > >which is Perl 5.8.6 > > > >$ which perl > >/sw/bin/perl > > > >$ perl -v > >This is perl, v5.8.6 built for darwin-thread-multi-2level > > > > > > -- We exist to authoritatively leverage existing enterprise-wide data in order to solve business problems