octave-maintainers
[Top][All Lists]
Advanced

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

Re: build trouble on MacOS 10.5


From: Ben Abbott
Subject: Re: build trouble on MacOS 10.5
Date: Mon, 21 Dec 2009 12:14:09 -0500

On Dec 21, 2009, at 7:26 AM, Ben Abbott wrote:

> On Dec 21, 2009, at 3:26 AM, Ben Abbott wrote:
> 
>> On Dec 21, 2009, at 2:28 AM, Ben Abbott wrote:
>> 
>>> On Dec 21, 2009, at 12:47 AM, Rob Mahurin wrote:
>>> 
>>>> On Mon, Dec 21, 2009 at 12:36:55AM -0500, Rob Mahurin wrote:
>>>>> On Sun, Dec 20, 2009 at 02:52:28PM -0500, Ben Abbott wrote:
>>>>>> On Dec 20, 2009, at 2:34 PM, Rob Mahurin wrote:
>>>>>>> On the theory that it's a library conflict, I complied with 
>>>>>>> 
>>>>>>>         ./configure CC=gcc-mp-4.3 CXX=g++-mp-4.3 F77=gfortran-mp-4.3
>>>>>>>         LDFLAGS=-L/opt/local/lib --without-framework-carbon
>>>>>>>         --without-qhull --without-z --without-hdf5 --without-fftw3
>>>>>>>         --without-fftw3f --without-glpk --without-curl
>>>>>>>         --without-framework-opengl --without-qrupdate --without-amd
>>>>>>>         --without-camd --without-colamd --without-ccolamd
>>>>>>>         --without-cholmod --without-cxsparse --without-umfpack
>>>>>>>         --without-arpack --disable-readline
>>>>>>> 
>>>>>>> That gives me a run-octave that runs without crashing.  
>>>>> [...]
>>>>>>> Now the build succeeds.  
>>>>>>> 
>>>>>>>         $ make check
>>>>>>>           PASS   5321
>>>>>>>           FAIL      5
>>>>>> 
>>>>>> Maybe we should see if it is just one of the libraries that is
>>>>>> responsible. Perhaps multiple builds with just one of the
>>>>>> --without-foobar will tell us which one is the problem?
>>>>> 
>>>>> I'm going the other way, removing --withouts one at a time.  I started
>>>>> with qhull, since that was mentioned in the patch I submitted (thanks
>>>>> to Rik for applying it).  I got extra failures when I removed
>>>>> cxsparse, so I left that one.  About half the --withouts are gone,
>>>>> with three test failures.
>>>>> 
>>>>>> BTW, you mention that run-octave didn't crash. I assume you mean you
>>>>>> can run and then quit without error?
>>>>> 
>>>>> Right.  With linking to external libraries restricted, I haven't yet
>>>>> reproduced the bus error on startup whose backtrace we compared
>>>>> earlier.
>>>> 
>>>> Strike that: if I configure with 
>>>> 
>>>>    ./configure CC=gcc-mp-4.3 CXX=g++-mp-4.3 F77=gfortran-mp-4.3
>>>>    LDFLAGS=-L/opt/local/lib --without-framework-carbon
>>>>    --without-z --without-hdf5 --without-fftw3 --without-fftw3f
>>>>    --without-glpk --without-curl --without-cholmod
>>>>    --without-cxsparse --without-umfpack
>>>> 
>>>> then I get
>>>> 
>>>>    Making check in test
>>>>    ../run-octave --norc --silent --no-history ./fntests.m .
>>>>    make[2]: *** [check] Bus error
>>>> 
>>>> The previous build included --without-framework-opengl, and that build
>>>> proceeded through "make check" with only three test failures.  Do you
>>>> also have trouble with this library?
>>>> 
>>>> Cheers,
>>>> Rob
>>> 
>>> The first attempt I made, after reading your results, was a build with 
>>> --without-framework-carbon and --without-framework-opengl.
>>> 
>>> For me the bus error remained. I'm now trying to build including all the 
>>> --without-xxx's.
>>> 
>>> Ben
>> 
>> I've run configure as shown below ...
>> 
>> $ ./configure --prefix=/sw --infodir=${prefix}/share/info 
>> --mandir=${prefix}/share/man --libexecdir=${prefix}/lib 
>> --with-blas=-Wl,-framework -Wl,vecLib --without-framework-carbon 
>> --without-framework-opengl --without-qhull --without-hdf5 --without-fftw3 
>> --without-fftw3f --without-glpk --without-curl --without-qrupdate 
>> --without-amd --without-camd --without-colamd --without-ccolamd 
>> --without-cholmod --without-cxsparse --without-umfpack --without-arpack      
>>  --without-z --disable-readline
>> 
>> "make"  still fails with ...
>> 
>> Making all in interpreter
>> /run-octave -f -q -H -p . --eval "geometryimages ('voronoi', 'txt');"
>> /bin/sh: /run-octave: No such file or directory
>> make[3]: *** [voronoi.txt] Error 127
>> make[2]: *** [all-recursive] Error 1
>> make[1]: *** [all-recursive] Error 1
>> make: *** [all] Error 2
>> 
>> While Octave does run, it core-dumps when quit.
>> 
>> ...........................................................................................
>>  done
>> GNU Octave, version 3.3.50+
>> Copyright (C) 2009 John W. Eaton and others.
>> This is free software; see the source code for copying conditions.
>> There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
>> FITNESS FOR A PARTICULAR PURPOSE.  For details, type `warranty'.
>> 
>> Octave was configured for "i386-apple-darwin10.2.0".
>> 
>> Additional information about Octave is available at http://www.octave.org.
>> 
>> Please contribute if you find this software useful.
>> For more information, visit http://www.octave.org/help-wanted.html
>> 
>> Report bugs to <address@hidden> (but first, please read
>> http://www.octave.org/bugs.html to learn how to write a helpful report).
>> 
>> For information about changes from previous versions, type `news'.
>> 
>> Reading symbols for shared libraries . done
>> Reading symbols for shared libraries . done
>> Reading symbols for shared libraries . done
>> Reading symbols for shared libraries . done
>> Reading symbols for shared libraries . done
>> octave:1> quit
>> 
>> Program received signal EXC_BAD_ACCESS, Could not access memory.
>> Reason: KERN_PROTECTION_FAILURE at address: 0x00000001
>> 0x00000001 in ?? ()
>> (gdb) bt
>> #0  0x00000001 in ?? ()
>> Cannot access memory at address 0x1
>> (gdb) 
>> 
>> I'm going to remove my FLTK libs and try again (is there a --without-fltk 
>> option?).
>> 
>> Ben
> 
> With no FLTK libs, I'm back to the same result as before (i.e. no FLTK but 
> with everything else).
> 
> $ ./configure --prefix=/sw --infodir=${prefix}/share/info 
> --mandir=${prefix}/share/man --libexecdir=${prefix}/lib 
> --with-blas=-Wl,-framework -Wl,vecLib --without-framework-carbon 
> --without-framework-opengl --without-qhull --without-hdf5 --without-fftw3 
> --without-fftw3f --without-glpk --without-curl --without-qrupdate 
> --without-amd --without-camd --without-colamd --without-ccolamd 
> --without-cholmod --without-cxsparse --without-umfpack --without-arpack 
> --without-z --disable-readline
> 
> Program received signal EXC_BAD_ACCESS, Could not access memory.
> Reason: KERN_PROTECTION_FAILURE at address: 0x00000000
> 0x0280b02f in std::locale::operator= ()
> (gdb) bt
> #0  0x0280b02f in std::locale::operator= ()
> #1  0x02809c9e in std::ios_base::_M_init ()
> #2  0x0281f25a in std::basic_ios<char, std::char_traits<char> >::init ()
> #3  0x0014f8d3 in global constructors keyed to pager.cc () at ostream:362
> #4  0x8fe0ed6d in 
> __dyld__ZN16ImageLoaderMachO18doModInitFunctionsERKN11ImageLoader11LinkContextE
>  ()
> #5  0x8fe0d31e in 
> __dyld__ZN11ImageLoader23recursiveInitializationERKNS_11LinkContextEj ()
> #6  0x8fe0d2c2 in 
> __dyld__ZN11ImageLoader23recursiveInitializationERKNS_11LinkContextEj ()
> #7  0x8fe0d3d1 in 
> __dyld__ZN11ImageLoader15runInitializersERKNS_11LinkContextE ()
> #8  0x8fe024a9 in __dyld__ZN4dyld24initializeMainExecutableEv ()
> #9  0x8fe07950 in __dyld__ZN4dyld5_mainEPK12macho_headermiPPKcS5_S5_ ()
> #10 0x8fe018b1 in __dyld__ZN13dyldbootstrap5startEPK12macho_headeriPPKcl ()
> #11 0x8fe01057 in __dyld__dyld_start ()
> 
> Looking at the linked dylibs, I still have a conflict between Fink's freetype 
> and X11's (Mac OS 10.6). I'll resolve that and try again.
> 
> Ben

I tried Octave's freetype options, --with-ft-prefix=/usr/X11 
--with-ft-exec-prefix=/usr/X11, but the resulting dynamic libraries still 
included links to both Fink and Apple's dylibs.

I'm getting no where very slow. With no FLTK libs ...

$ ./configure --prefix=/sw --infodir=${prefix}/share/info 
--mandir=${prefix}/share/man --libexecdir=${prefix}/lib 
--with-blas=-Wl,-framework -Wl,vecLib --without-framework-carbon 
--without-framework-opengl --without-qhull --without-hdf5 --without-fftw3 
--without-fftw3f --without-glpk --without-curl --without-qrupdate --without-amd 
--without-camd --without-colamd --without-ccolamd --without-cholmod 
--without-cxsparse --without-umfpack --without-arpack --without-z 
--disable-readline  --without-x

The configure process ends with …

Octave is now configured for i386-apple-darwin10.2.0

  Source directory:            .
  Installation prefix:         /sw
  C compiler:                  gcc-4  -mieee-fp  -Wall -W -Wshadow -Wformat 
-I/sw/include -O1 -g -D_THREAD_SAFE 
  C++ compiler:                g++-4  -mieee-fp -I/sw/include/freetype2 
-I/sw/include -I/usr/X11/include    -Wall -W -Wshadow -Wold-style-cast -Wformat 
-I/sw/include -O1 -g
  Fortran compiler:            /sw/bin/gfortran -O1 -ff2c -g -mieee-fp
  Fortran libraries:           /sw/lib/gcc4.4/lib/libgfortran.dylib
  Lex libraries:               
  LIBS:                        -lm  

  AMD CPPFLAGS:                
  AMD LDFLAGS:                 
  AMD libraries:               
  ARPACK libraries:            
  BLAS libraries:              -Wl,-framework -Wl,vecLib
  CAMD CPPFLAGS:               
  CAMD LDFLAGS:                
  CAMD libraries:              
  CARBON libraries:            
  CCOLAMD CPPFLAGS:            
  CCOLAMD LDFLAGS:             
  CCOLAMD libraries:           
  CHOLMOD CPPFLAGS:            
  CHOLMOD LDFLAGS:             
  CHOLMOD libraries:           
  COLAMD CPPFLAGS:             
  COLAMD LDFLAGS:              
  COLAMD libraries:            
  CURL CPPFLAGS:               
  CURL LDFLAGS:                
  CURL libraries:              
  CXSPARSE CPPFLAGS:           
  CXSPARSE LDFLAGS:            
  CXSPARSE libraries:          
  DL libraries:                -ldl
  FFTW3 CPPFLAGS:              
  FFTW3 LDFLAGS:               
  FFTW3 libraries:             
  FFTW3F CPPFLAGS:             
  FFTW3F LDFLAGS:              
  FFTW3F libraries:            
  fontconfig CFLAGS:           -I/usr/X11/include  
  fontconfig LIBS:             -L/usr/X11/lib -lfontconfig
  FT2_CFLAGS:                  -I/sw/include/freetype2 -I/sw/include
  FT2_LIBS:                    -L/sw/lib -lfreetype -lz 
-Wl,-framework,CoreServices -Wl,-framework,ApplicationServices
  GLPK CPPFLAGS:               
  GLPK LDFLAGS:                
  GLPK libraries:              
  graphics CFLAGS:             
  graphics LIBS:               
  GraphicsMagick++ CPPFLAGS:   -I/sw/include/GraphicsMagick  
  GraphicsMagick++ LDFLAGS:    -L/sw/lib  
  GraphicsMagick++ libraries:  -lGraphicsMagick++ -lGraphicsMagick
  HDF5 CPPFLAGS:               
  HDF5 LDFLAGS:                
  HDF5 libraries:              
  LAPACK libraries:            
  OPENGL libraries:            -L/usr/X11/lib -lfontconfig -L/usr/X11R6/lib 
-lGL -lGLU
  PTHREAD flags:               -D_THREAD_SAFE 
  PTHREAD libraries:           
  QHULL CPPFLAGS:              
  QHULL LDFLAGS:               
  QHULL libraries:             
  QRUPDATE libraries:          
  READLINE libraries:          
  REGEX libraries:             -L/sw/lib -lpcre
  TERM libraries:              -lncurses
  UMFPACK libraries:           
  X11 include flags:           
  X11 libraries:               
  Z CPPFLAGS:                  
  Z LDFLAGS:                   
  Z libraries:                 

  Default pager:               less
  gnuplot:                     gnuplot

  Do internal array bounds checking:  false
  Build static libraries:             false
  Build shared libraries:             true
  Dynamic Linking:                    true (dlopen)
  Include support for GNU readline:   false
  64-bit array dims and indexing:     false

configure:43565: WARNING: command editing and history features require GNU 
Readline
configure:43601: WARNING: UMFPACK not found.  This will result in some lack of 
functionality for sparse matrices.
configure:43607: WARNING: qrupdate not found.  The QR & Cholesky updating 
functions will be slow.
configure:43613: WARNING: AMD library not found.  This will result in some lack 
of functionality for sparse matrices.
configure:43619: WARNING: COLAMD library not found.  This will result in some 
lack of functionality for sparse matrices.
configure:43625: WARNING: CCOLAMD library not found.  This will result in some 
lack of functionality for sparse matrices.
configure:43631: WARNING: CHOLMOD library not found.  This will result in some 
lack of functionality for sparse matrices.
configure:43637: WARNING: CXSparse library not found.  This will result in some 
lack of functionality for sparse matrices.
configure:43643: WARNING: arpack not found.  The eigs function will be disabled.
configure:43649: WARNING: cURL library not found.  The ftp objects, urlread and 
urlwrite functions will be disabled.
configure:43661: WARNING: GLPK library not found.  The glpk function for 
solving linear programs will be disabled.
configure:43673: WARNING: HDF5 library not found.  Octave will not be able to 
save or load HDF5 data files.
configure:43691: WARNING: Qhull library not found -- this will result in loss 
of functionality of some geometry functions.
configure:43808: WARNING: FLTK config script not found.  Native graphics will 
be disabled.
configure:43824: WARNING: 
configure:43826: WARNING: I didn't find the necessary libraries to compile 
native
configure:43828: WARNING: graphics. It isn't necessary to have native graphics
configure:43830: WARNING: but you will have to use gnuplot or you won't be able
configure:43832: WARNING: to use any of Octave's plotting commands
configure:43834: WARNING: 
configure:43840: 
configure:43842: NOTE: libraries may be skipped if a library is not found OR
configure:43844: NOTE: if the library on your system is missing required 
features.

"make" ended with …

Making all in interpreter
../../run-octave -f -q -H -p . --eval "geometryimages ('voronoi', 'txt');"
make[3]: *** [voronoi.txt] Bus error
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Running from the debugger ...

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000000
0x0255e02f in std::locale::operator= ()
(gdb) bt
#0  0x0255e02f in std::locale::operator= ()
#1  0x0255cc9e in std::ios_base::_M_init ()
#2  0x0257225a in std::basic_ios<char, std::char_traits<char> >::init ()
#3  0x0256b049 in std::basic_ofstream<char, std::char_traits<char> 
>::basic_ofstream ()
#4  0x0014e76d in global constructors keyed to pager.cc () at pager.cc:59
#5  0x8fe0ed6d in 
__dyld__ZN16ImageLoaderMachO18doModInitFunctionsERKN11ImageLoader11LinkContextE 
()
#6  0x8fe0d31e in 
__dyld__ZN11ImageLoader23recursiveInitializationERKNS_11LinkContextEj ()
#7  0x8fe0d2c2 in 
__dyld__ZN11ImageLoader23recursiveInitializationERKNS_11LinkContextEj ()
#8  0x8fe0d3d1 in __dyld__ZN11ImageLoader15runInitializersERKNS_11LinkContextE 
()
#9  0x8fe024a9 in __dyld__ZN4dyld24initializeMainExecutableEv ()
#10 0x8fe07950 in __dyld__ZN4dyld5_mainEPK12macho_headermiPPKcS5_S5_ ()
#11 0x8fe018b1 in __dyld__ZN13dyldbootstrap5startEPK12macho_headeriPPKcl ()
#12 0x8fe01057 in __dyld__dyld_start ()

Looking at pager.cc

 55 // The name of the current diary file.
 56 static std::string diary_file;
 57 
 58 // The diary file.
 59 static std::ofstream external_diary_file;
 60 
 61 static std::string
 62 default_pager (void)

std::ofstream is from /sw/lib/gcc4.4/lib/libstdc++.6.dylib or from 
/usr/lib/libstdc++.6.dylib. The latter is linked to via 
/usr/X11/lib/libGLU.1.dylib, and was built using gcc 4.2.1.

I'm out of ideas.

Rob, I'll be tracking your progress. If I have the time and motivation, I may 
dig up an old Mac running 10.5 and try to duplicate your success.

Ben







reply via email to

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