Hi William,
Ok, I've taken your suggestions and tried it, but with identical results. 

Here are my export option. I still get the same error without the -g option

export CFLAGS="-arch i386 -Os" 
export CXXFLAGS="-arch i386 -Os" 
export LDFLAGS="-arch i386 -Os" 
export NAD2BIN=/Library/Frameworks/PROJ.framework/Programs/nad2bin 

./configure --with-cxx --prefix=/Applications/GRASS --enable-macosx-app --with-x --with-cxx --with-opengl

I still get the same error

checking for gluBeginCurve in -lGLU... yes
checking for glXCreatePbuffer... no
configure: error: *** Unable to locate .

I have attached the config.log file here. Please note that configure command did not complete successfully. So, I haven't had a chance to run make, so the glXCreatePBuffer() error is in the config.log.

Any ideas on how I can resolve this or what might be causing this?

Attachment: config.log
Description: Binary data


Best regards,

Elvis Dowson


On Sep 21, 2008, at 10:20 PM, William Kyngesburye wrote:

On Sep 21, 2008, at 12:20 PM, Elvis Dowson wrote:

Hi William,
                     Upon looking more closely at the config.log

configure:11340: gcc -o conftest -g -O2      conftest.c    -lGL   1>&5
ld: library not found for -lGL
collect2: ld returned 1 exit status
configure: failed program was:


I see that ld could not find the GL libraries for some reason.

One thing to watch out for is the -g flag.  This causes configure errors with the latest Xcode.  export CFLAGS and CXXFLAGS with -Os before configuring.

export CFLAGS=-Os
export CXXFLAGS=-Os

If you need debug symbols, add -g back into platform.make after configuration (to CFLAGS1 & CXXFLAGS1).

However, I have put this in my .profile. The location I have put is usr/X11/lib . Is this the correct location?

# environment variables
export QTROOT=/usr/local/qt-4.4.1
export GRASS_TCLSH=/usr/X11R6/bin/tclsh
export GRASS_WISH=/usr/X11R6/bin/wish
export VTK_DIR=/Users/elvis/Tool/vtk-5.2.0/src
export VTK_LIB_DIR=/usr/local/lib/vtk-5.2
export X11_LIB_DIR=/usr/X11/lib
#export OPENGL_LIB_DIR=/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries

# the path is initially set to "/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin"
export PATH=$PATH:$QTROOT/bin
export LD_LIBRARY_PATH=$VTK_LIB_DIR:$X11_LIB_DIR:$LD_LIBRARY_PATH
export DYLD_LIBRARY_PATH=$VTK_LIB_DIR:$X11_LIB_DIR:$DYLD_LIBRARY_PATH

Setting DYLD_LIBRARY_PATH is unnecessary on OSX.  If you have to do it for VTK, then the VTK build is broken.  LD_LIBRARY_PATH is the linux version of this and is not needed on OSX.

DYLD_LIBRARY_PATH only affects the finding of libraries at runtime, not linking as in configure tests.  And properly built libraries on OSX should have the path built into them so they're found at runtime without DYLD_LIBRARY_PATH.  Though GRASS does use this as a neat trick (as a side effect) to make the binaries relocatable.




Here is my configure command

./configure --with-cxx --prefix=/Applications/GRASS --enable-macosx-app --with-x --with-cxx --with-opengl=aqua --without-readline --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib --with-opengl-includes=/usr/X11R6/include

This is probably what is confusing the build - you set --with-opengl=aqua, yet set the opengl includes and libs to X11.  These options can't be used together.  Configure should force the includes and libs based on the opengl value, but to be sure just use --with-opengl, which defaults to X11, and you probably won't need the includes/libs options.

Also note that you need to compile your own tcltk for X11, and set those options for the GRASS configure.  See the grass source osx readme for details.


If I use the -with-opengl=x11 option, I get the following configuration error

checking for location of OpenGL library...
checking for glBegin in -lGL... yes
checking for gluBeginCurve in -lGLU... yes
checking for glXCreatePbuffer... no
configure: error: *** Unable to locate .


configure:10998: checking for location of OpenGL library
configure:11027: checking for glBegin in -lGL
configure:11044: gcc -o conftest -g -O2      conftest.c -lGL  -L/usr/X11R6/lib  -lSM -lICE -lX11     1>&5
configure:11214: checking for gluBeginCurve in -lGLU
configure:11231: gcc -o conftest -g -O2      conftest.c -lGLU  -lGL   -L/usr/X11R6/lib  -lSM -lICE -lX11     1>&5
configure:11314: checking for glXCreatePbuffer
configure:11340: gcc -o conftest -g -O2      conftest.c    -lGL   1>&5
ld: library not found for -lGL
collect2: ld returned 1 exit status


This is strange - configure is inserting the X11 lib path for the glBegin and gluBeginCurve tests, but not for the glXCreatePbuffer test.  Oh, I'm getting that also, but it's not keeping compilation from working.  This is just testing for the availability of pbuffers, and GRASS has a fallback if that's not available.

So, your make error log doesn't have the needed info.  You need to look way back in the shell scrollback to see what the actual error is.  You may need to change your Terminal window settings to unlimited scrollback.

-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

Earth: "Mostly harmless"

- revised entry in the HitchHiker's Guide to the Galaxy



_______________________________________________
grass-user mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-user

Reply via email to