octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Configuring the latest default hg on OSX


From: Jaroslav Hajek
Subject: Re: Configuring the latest default hg on OSX
Date: Sun, 29 Jun 2008 20:09:48 +0200

On Sun, Jun 29, 2008 at 7:17 PM, Ben Abbott <address@hidden> wrote:
>
> On Jun 29, 2008, at 3:38 AM, Jaroslav Hajek wrote:
>
>> On Sun, Jun 29, 2008 at 2:50 AM, Ben Abbott <address@hidden> wrote:
>>>
>>> Today I tried to configure the latest sources with the intent of using
>>> the
>>> Fink package manager on OSX. I'm concerned about the OpenGL part (as I
>>> have
>>> no experience with it).
>>>
>>> I'd appreciate any comments respecting "the good, the bad, and the ugly"
>>> with regards the results of the configure process below.
>>>
>>> Octave is now configured for i386-apple-darwin9.3.0
>>>
>>> Source directory:     .
>>> Installation prefix:  /sw
>>> C compiler:           gcc  -mieee-fp  -Wall -W -Wshadow -O3
>>> -I/usr/X11R6/include
>>> C++ compiler:         g++  -mieee-fp  -Wall -W -Wshadow -Wold-style-cast
>>> -g
>>> -O3
>>> Fortran compiler:     /sw/bin/gfortran -fbounds-check -ff2c -g -O3
>>> -mieee-fp
>>> Fortran libraries:    /sw/lib/gcc4.3/lib/libgfortran.dylib
>>> BLAS libraries:
>>>
>>> -Wl,-framework,Accelerate,-dylib_file,/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib:/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
>>> FFTW libraries:       -lfftw3 -lfftw3f
>>> GLPK libraries:       -lglpk
>>> UMFPACK libraries:    -lumfpack
>>> AMD libraries:        -lamd
>>> CAMD libraries:       -lcamd
>>> COLAMD libraries:     -lcolamd
>>> CCOLAMD libraries:    -lccolamd
>>> CHOLMOD libraries:    -lcholmod
>>> CXSPARSE libraries:   -lcxsparse
>>> HDF5 libraries:       -lhdf5
>>> CURL libraries:       -lcurl
>>> REGEX libraries:      -L/sw/lib -lpcre
>>> QHULL libraries:      -lqhull
>>> LIBS:                 -lreadline  -lncurses
>>>
>>> -Wl,-framework,Accelerate,-dylib_file,/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib:/System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
>>> -lhdf5 -lz -lm
>>> Default pager:        less
>>> gnuplot:              gnuplot
>>> OPENGL libraries:
>>> fltk backend libs:    -L/sw/lib/fltk-aqua/lib -L/sw/lib -lfltk_gl
>>> -framework AGL -framework OpenGL -lfltk -lpthread -framework Carbon
>>> -framework ApplicationServices
>>>
>>> Do internal array bounds checking:  false
>>> Build static libraries:             false
>>> Build shared libraries:             true
>>> Dynamic Linking:                    true (dyld)
>>> Include support for GNU readline:   true
>>> 64-bit array dims and indexing:     false
>>>
>>> configure: WARNING: A BLAS library was detected but found incompatible
>>> with
>>> your Fortran 77 compiler.  The reference BLAS implementation will be
>>> used.
>>> To improve performance, consider using a different Fortran compiler or a
>>> switch like -ff2c to make your Fortran compiler use a calling convention
>>> compatible with the way your BLAS library was compiled, or use a
>>> different
>>> BLAS library.
>>> configure:
>>>
>>> Ben
>>>
>>
>> I can't help much with the GL libraries (and I don't see what your
>> problem is, or if there is any), but your report reveals a bug in the
>> acx_lapack script: In case of missing or invalid BLAS (like in your
>> case), the check for LAPACK should be skipped entirely, and
>> LAPACK_LIBS should probably be nullified. I'll submit a patch for the
>> autoconf archive. By the way, does the warning about invalid BLAS
>> occur even if you omit the -ff2c option? If no, then you'll probably
>> want to turn it off.
>>
>> If yes, then that's really weird (as it implies that the BLAS lib is
>> compatible with neither gfortran nor g77). I'd consider it a bug if a
>> system-provided library is incompatible with the default compiler. Or
>> is g77 the default? Perhaps this is a bug in OSX?
>
> I tried using Carlo's configure options
>
>        http://www.nabble.com/Re%3A-Latest-from-hg-on-OSX-p17932976.html
>
> I modified his prefix to reflect Finks. Specificlally
>
> ./configure LDFLAGS="-L/sw/lib -framework OpenGL" CPPFLAGS="-I/sw/include
> -FOpenGL" F77=gfortran FFLAGS="-ff2c" --prefix=/sw
>
> As before, the summary form configure came up empty for the OpenGL Library.
> However, in this instance the  BLAS Library also came up empty and was
> accompanied by the same warning (respecting BLAS) at the end of the
> configure process. That the BLAS Library came up empty it to be expected (I
> think) since the no configure options pointed to a BLAS Library (correct?).

To a certain extent, correct. The configure script does, however, try
to find a suitable BLAS library itself.


>
> Regarding the back end ...
>
>  gnuplot:              gnuplot
>  OPENGL libraries:
>  fltk backend libs:    -L/sw/lib -L/usr/X11R6/lib -framework OpenGL
> -dylib_file
> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
> -lfltk_gl -lGLU -lGL -lfltk -lXft -lpthread -lXext -lX11
>
> As Jaroslav suggested I also tried removing the "-ff2c" option. However, the
> BLAS warning remains.
>
> Regarding BLAS, I'm using gfortran 4.3, but Apple's vecLib is built with gcc
> 4.0. This resulted in some problems in the past. If I recall correctly the
> manner in which values of complex functions returned their values changed in
> gfortran 4.1 (?).
>
> Using Fink's ATLAS (which depends upon gcc 4.3),  instead of Apple's vecLib,
> the configure process does find the intended BLAS ...
>
>  Fortran libraries:    /sw/lib/gcc4.3/lib/libgfortran.dylib
>  BLAS libraries:       /sw/lib/liblapack.dylib
>

It does not. Note that it is LAPACK what is there. The output variable
BLAS_LIBS is actually
"BLAS and LAPACK libs". What you see is the result of the bug in
acx_lapack.m4 I've mentioned. LAPACK should not be checked for if BLAS
is not found, but it is. When using static libraries, it wouldn't work
anyway, but with shared libraries it works on many systems.
However, as the associated BLAS library is invalid, this leaves you
with a dangerous configuration that may result in segfaults.


> ... but still issues the same warning as before :-(
>

If you are sure that this configuration should work (i.e. that the
BLAS is built against gcc 4.3),
can you please post your config.log?

> My original question was with regards to the OpenGL/backend part. After
> mergine Carlo's and Fink's configure options, I get
>
>  gnuplot:              gnuplot
>  OPENGL libraries:
>  fltk backend libs:    -L/sw/lib -L/usr/X11R6/lib -framework OpenGL
> -dylib_file
> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib:/System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
> -lfltk_gl -lGLU -lGL -lfltk -lXft -lpthread -lXext -lX11
>
> It appears to me that there is a problem with OpenGL. Can some one confirm?
> Am I missing a configure option specific to OpenGL? Below are the options I
> used without the BLAS part.
>
> ./configure --prefix=/sw FLIBS=/sw/lib/gcc4.3/lib/libgfortran.dylib
> F77=/sw/bin/gfortran --infodir='${prefix}/share/info'
> --mandir='${prefix}/share/man' --libexecdir='${prefix}/lib' -enable-shared
> -enable-dl --disable-static --without-mpi --with-hdf5 --with-fftw
> LDFLAGS="-L/sw/lib -framework OpenGL" CPPFLAGS="-I/sw/include -FOpenGL"
> FFLAGS="-ff2c"
>
> Regarding BLAS, it appears that I get the same result using Apple's vecLib,
> Fink's ATLAS package, and that included in Octave. Are any other OSX users
> seeing this?
>
> Ben
>
>
>
>
>
>
>

Perhaps we should not mix the two issues together. If you want to
continue resolving the BLAS issue, will you please start a new thread?

regards

-- 
RNDr. Jaroslav Hajek
computing expert
Aeronautical Research and Test Institute (VZLU)
Prague, Czech Republic
url: www.highegg.matfyz.cz


reply via email to

[Prev in Thread] Current Thread [Next in Thread]