octave-maintainers
[Top][All Lists]
Advanced

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

Re: Building Octave on Mac OS 10.10 (Yosemite)


From: Ben Abbott
Subject: Re: Building Octave on Mac OS 10.10 (Yosemite)
Date: Mon, 20 Oct 2014 09:11:16 -0400

> On Oct 19, 2014, at 10:06 PM, Alexander Hansen <address@hidden> wrote:
> 
> On 10/19/14, 4:59 PM, Ben Abbott wrote:
>> 
>>> On Oct 19, 2014, at 7:57 PM, Ben Abbott <address@hidden> wrote:
>>> 
>>> For any who upgrade to Yosemite (MacOS 10.10), it is necessary to install 
>>> Xcode 6.1 and the command line tools (i.e. not Xcode 6.0.1).  The 6.1 
>>> release includes a fix that allows cmake to be built, cmake is needed to 
>>> build gl2ps.
>>> 
>>> I had to download the Xcode 6.1 tools directly from Apple's developers 
>>> website.
>>> 
>>>     https://developer.apple.com/downloads/index.action#
>>> 
>>> Ben
>> 
>> I just noticed the command line tools for Xcode 6.1 are beta 3.
>> 
>> Ben
>> 
> 
> I've had consistent problems building Octave-3.6.4 or 3.8.2 with any 6.x 
> Xcode Command Line Tools.  The error is of the following form ("oct-cxx" is 
> really clang++ --I'm using wrapper scripts to make maintenance easier for 
> me-- and we're using libc++ to build all of our C++ libraries because it's 
> the default on OS X 10.9 and later:
> 
> libtool: compile:  oct-cxx -DHAVE_CONFIG_H -I. -I.. -I./array -I./cruft/misc 
> -Inumeric -I./numeric -Ioperators -I./operators -I./system -I./util 
> -I../libgnu -I../libgnu -I/usr/X11/include -I/sw/include -Wall -W -Wshadow 
> -Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align 
> -Wcast-qual -O3 -MD -D_THREAD_SAFE -pthread -MT 
> array/array_libarray_la-int32NDArray.lo -MD -MP -MF 
> array/.deps/array_libarray_la-int32NDArray.Tpo -c array/int32NDArray.cc  
> -fno-common -DPIC -o array/.libs/array_libarray_la-int32NDArray.o
> In file included from array/int16NDArray.cc:28:
> In file included from ./array/int16NDArray.h:26:
> In file included from ./array/intNDArray.h:26:
> In file included from ./array/MArray.h:28:
> In file included from ./array/Array.h:32:
> In file included from 
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/algorithm:624:
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/type_traits:1169:21:
>  error:
>      call to '__test' is ambiguous
>   typedef decltype(__test(declval<_Tp>())) type;
> 
> My understanding is that Macports has determined that this a clang bug and 
> has blacklisted the Xcode Command Line Tools version 6 or newer (optional on 
> 10.9, mandatory on 10.10) to build Octave for this reason.
> 
> Is this something which has been addressed in the post-3.8.2 Octave code?  Or 
> is this not triggered on Yosemite?  Or would I have to use libstdc++, in 
> which case I'll blacklist Xcode >= 6 and Octave won't be available for 
> Yosemite in Fink at all until it gets resolved, since we're only using libc++.
> 
> -- 
> Alexander Hansen, Ph.D.
> Fink User Liaison
> My package updates: http://finkakh.wordpress.com/

I didn't encounter this problem (yet?).  I tried to build on 10.10 the same way 
I have on 10.9, and am encountering a segfault when I Octave runs.

./run-octave 
octave: no graphical display found
octave: disabling GUI features
panic: Segmentation fault: 11 -- stopping myself...

I've build using the Carbon libs (not X11), so the "no graphical display found" 
warning doesn't make sense to me.

My config info confirms that the Carbon libs are linked to ...
Octave is now configured for x86_64-apple-darwin14.0.0

  Source directory:            .
  Installation prefix:         /usr/local/octave/4.1.0
  C compiler:                  ccache gcc-mp-4.8   -Wall -W -Wshadow -Wformat 
-Wpointer-arith -Wmissing-prototypes -Wstrict-prototypes -Wwrite-strings 
-Wcast-align -Wcast-qual -pipe -O2 -m64 -g -D_THREAD_SAFE -pthread
  C++ compiler:                ccache g++-mp-4.8   -Wall -W -Wshadow 
-Wold-style-cast -Wformat -Wpointer-arith -Wwrite-strings -Wcast-align 
-Wcast-qual -pipe -O2 -m64 -D_THREAD_SAFE -pthread
  Fortran compiler:            ccache gfortran-mp-4.8 -pipe -O2 -m64
  Fortran libraries:            -L/opt/local/lib 
-L/opt/local/lib/gcc48/gcc/x86_64-apple-darwin14/4.8.3 
-L/opt/local/lib/gcc48/gcc/x86_64-apple-darwin14/4.8.3/../../.. -lgfortran 
-lquadmath -lm
  Lex libraries:               
  LIBS:                        -lm  

  AMD CPPFLAGS:                
  AMD LDFLAGS:                 
  AMD libraries:               -lamd
  ARPACK CPPFLAGS:             
  ARPACK LDFLAGS:              
  ARPACK libraries:            -larpack
  BLAS libraries:              -lcblas -lf77blas -latlas -lgfortran
  CAMD CPPFLAGS:               
  CAMD LDFLAGS:                
  CAMD libraries:              -lcamd
  CARBON libraries:            
  CCOLAMD CPPFLAGS:            
  CCOLAMD LDFLAGS:             
  CCOLAMD libraries:           -lccolamd
  CHOLMOD CPPFLAGS:            
  CHOLMOD LDFLAGS:             
  CHOLMOD libraries:           -lcholmod
  COLAMD CPPFLAGS:             
  COLAMD LDFLAGS:              
  COLAMD libraries:            -lcolamd
  CURL CPPFLAGS:               
  CURL LDFLAGS:                
  CURL libraries:              -lcurl
  CXSPARSE CPPFLAGS:           
  CXSPARSE LDFLAGS:            
  CXSPARSE libraries:          -lcxsparse
  DL libraries:                -ldl
  FFTW3 CPPFLAGS:              
  FFTW3 LDFLAGS:               
  FFTW3 libraries:             -lfftw3_threads -lfftw3
  FFTW3F CPPFLAGS:             
  FFTW3F LDFLAGS:              
  FFTW3F libraries:            -lfftw3f_threads -lfftw3f
  fontconfig CFLAGS:           -I/opt/local/include 
-I/opt/local/include/freetype2 -I/opt/local/include 
-I/opt/local/include/libpng16 -I/opt/local/include 
-I/opt/local/include/freetype2 -I/opt/local/include 
-I/opt/local/include/libpng16 
  fontconfig libraries:        -L/opt/local/lib -lfontconfig -lfreetype 
  FreeType2 CFLAGS:            -I/opt/local/include/freetype2 
-I/opt/local/include -I/opt/local/include/libpng16 
  FreeType2 libraries:         -L/opt/local/lib -lfreetype 
  GLPK CPPFLAGS:               
  GLPK LDFLAGS:                
  GLPK libraries:              -lglpk
  graphics CFLAGS:             -I/opt/local/include -pipe -Os 
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_THREAD_SAFE -D_REENTRANT
  graphics libraries:          -L/opt/local/lib 
-Wl,-headerpad_max_install_names -lfltk_gl -framework AGL -framework OpenGL 
-framework ApplicationServices -lfltk -lpthread -framework Cocoa
  HDF5 CPPFLAGS:               
  HDF5 LDFLAGS:                
  HDF5 libraries:              -lhdf5
  Java home:                   
  Java JVM path:               
  Java CPPFLAGS:               
  Java libraries:              
  LAPACK libraries:            -llapack -latlas -lgfortran
  LLVM CPPFLAGS:               
  LLVM LDFLAGS:                
  LLVM libraries:              
  Magick++ CPPFLAGS:           -I/opt/local/include/GraphicsMagick 
  Magick++ LDFLAGS:            -L/opt/local/lib 
  Magick++ libraries:          -lGraphicsMagick++ -lGraphicsMagick 
  OPENGL libraries:            -L/opt/local/lib -lfontconfig -lfreetype  
-Wl,-framework -Wl,OpenGL
  PCRE CPPFLAGS:               -I/opt/local/include
  PCRE libraries:              -L/opt/local/lib -lpcre
  PTHREAD flags:               -D_THREAD_SAFE -pthread
  PTHREAD libraries:           
  QHULL CPPFLAGS:              
  QHULL LDFLAGS:               
  QHULL libraries:             -lqhull
  QRUPDATE CPPFLAGS:           
  QRUPDATE LDFLAGS:            
  QRUPDATE libraries:          -lqrupdate
  Qt CPPFLAGS:                 -I/opt/local/include 
-I/opt/local/include/QtNetwork -I/opt/local/include 
-I/opt/local/include/QtOpenGL -I/opt/local/include -I/opt/local/include/QtGui 
-I/opt/local/include -I/opt/local/include/QtCore 
  Qt LDFLAGS:                  -L/opt/local/lib 
  Qt libraries:                -lQtNetwork -lQtOpenGL -lQtGui -lQtCore  
-lqscintilla2
  READLINE libraries:          -lreadline
  TERM libraries:              -lncurses
  UMFPACK CPPFLAGS:            
  UMFPACK LDFLAGS:             
  UMFPACK libraries:           -lumfpack
  X11 include flags:           
  X11 libraries:               
  Z CPPFLAGS:                  
  Z LDFLAGS:                   
  Z libraries:                 -lz

  Default pager:               less
  gnuplot:                     gnuplot

  Build Octave GUI:                   yes
  JIT compiler for loops:             no
  Build Java interface:               no
  Do internal array bounds checking:  no
  Use octave_allocator:               no
  Build static libraries:             no
  Build shared libraries:             yes
  Dynamic Linking:                    yes (dlopen)
  Include support for GNU readline:   yes
  64-bit array dims and indexing:     no
  Experimental SMP multithreading:    no

I am able to get Octave to run by "./run-octave -x --no-gui".  From there I can 
confirm that Octave isn't able to detect the screen size or resolution.

 get (0, 'screenpixelsperinch')
+ get (0, 'screenpixelsperinch')
ans =  72
get (0, 'screensize')
+ get (0, 'screensize')
ans =

   1   1   1   1

Perhaps something in the configure/preprocessing process is now broken. I 
recall working on that part of the code in the past, but don't recall where it 
is :-(

Can someone point me in the right direction?

Also, any idea why "+x" avoids the seg-fault?

Ben





reply via email to

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