octave-maintainers
[Top][All Lists]
Advanced

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

Unreliable OSX Builds


From: Joel LeBlanc
Subject: Unreliable OSX Builds
Date: Mon, 24 Aug 2009 11:08:06 -0400

I have been building (or trying to build) octave on OSX for some time now.  It didn't work, then I fixed a few things and it did for a couple of weeks, now it won't build again.  Surely I am doing something wrong.  I can't understand how the build process can be so fragile.  There also don't seem to be clear instructions on how to build, and from what I've read in the archives its far from autogen->configure->make.

For example here is what I'm doing:
__________________________________________________________
#! /bin/sh -ev

./autogen.sh

# Apple's vecLib:
export blas='--with-lapack=-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 --with-blas=-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'


# Similar to Fink's configure
./configure --prefix=/sw FLIBS=/sw/lib/gcc4.4/lib/libgfortran.dylib F77=/sw/bin/gfortran FC=/sw/bin/gfortran CC=gcc-4 CPP=cpp-4 CXX=g++-4 --infodir='${prefix}/share/info' --mandir='${prefix}/share/man' --libexecdir='${prefix}/lib' -enable-shared -enable-dl --disable-static --without-mpi --with-hdf5 --with-fftw CPPFLAGS="-g -I/sw/include -I/sw/include/freetype2 -I/sw/lib/flex/include" FFLAGS="-g -ff2c" LDFLAGS="-L/sw/lib/fltk-aqua/lib -L/sw/lib/flex/lib -L/sw/lib -lfltk_gl -lfltk -lpthread" $blas

make clean
make all
__________________________________________________________

And the results:

g++-4 -dynamiclib -single_module -L/sw/lib/fltk-aqua/lib -L/sw/lib/flex/lib -L/sw/lib -lfltk_gl -lfltk -lpthread -L/sw/lib/fltk-aqua/lib -L/sw/lib/flex/lib -L/sw/lib -lfltk_gl -lfltk -lpthread -install_name /sw/lib/octave-3.1.55/liboctinterp.dylib -o liboctinterp.dylib pic/Cell.o pic/bitfcns.o pic/c-file-ptr-stream.o pic/comment-list.o pic/cutils.o pic/data.o pic/debug.o pic/defaults.o pic/defun.o pic/dirfns.o pic/display.o pic/dynamic-ld.o pic/error.o pic/file-io.o pic/gl-render.o pic/graphics.o pic/gripes.o pic/help.o pic/input.o pic/lex.o pic/load-path.o pic/load-save.o pic/ls-hdf5.o pic/ls-mat-ascii.o pic/ls-mat4.o pic/ls-mat5.o pic/ls-oct-ascii.o pic/ls-ascii-helper.o pic/ls-oct-binary.o pic/ls-utils.o pic/main.o pic/mappers.o pic/matherr.o pic/mex.o pic/oct-fstrm.o pic/oct-hist.o pic/oct-iostrm.o pic/oct-map.o pic/oct-obj.o pic/oct-prcstrm.o pic/oct-procbuf.o pic/oct-stream.o pic/octave.o pic/zfstream.o pic/oct-strstrm.o pic/oct-lvalue.o pic/pager.o pic/parse.o pic/pr-output.o pic/procstream.o pic/sighandlers.o pic/siglist.o pic/sparse-xdiv.o pic/sparse-xpow.o pic/strfns.o pic/syscalls.o pic/symtab.o pic/sysdep.o pic/token.o pic/toplev.o pic/txt-eng-ft.o pic/unwind-prot.o pic/utils.o pic/variables.o pic/xdiv.o pic/xnorm.o pic/xpow.o pic/ov-base.o pic/ov-ch-mat.o pic/ov-cs-list.o pic/ov-list.o pic/ov-re-mat.o pic/ov-cx-mat.o pic/ov-range.o pic/ov-scalar.o pic/ov-complex.o pic/ov-str-mat.o pic/ov-struct.o pic/ov-colon.o pic/ov-bool-mat.o pic/ov-bool.o pic/ov-null-mat.o pic/ov-cell.o pic/ov.o pic/ov-fcn.o pic/ov-builtin.o pic/ov-dld-fcn.o pic/ov-mex-fcn.o pic/ov-usr-fcn.o pic/ov-fcn-handle.o pic/ov-fcn-inline.o pic/ov-class.o pic/ov-typeinfo.o pic/ov-flt-re-mat.o pic/ov-flt-cx-mat.o pic/ov-float.o pic/ov-flt-complex.o pic/ov-re-diag.o pic/ov-flt-re-diag.o pic/ov-cx-diag.o pic/ov-flt-cx-diag.o pic/ov-perm.o pic/ov-int8.o pic/ov-int16.o pic/ov-int32.o pic/ov-int64.o pic/ov-uint8.o pic/ov-uint16.o pic/ov-uint32.o pic/ov-uint64.o pic/ov-base-sparse.o pic/ov-bool-sparse.o pic/ov-cx-sparse.o pic/ov-re-sparse.o pic/pt.o pic/pt-arg-list.o pic/pt-assign.o pic/pt-bp.o pic/pt-binop.o pic/pt-cbinop.o pic/pt-cell.o pic/pt-check.o pic/pt-cmd.o pic/pt-colon.o pic/pt-const.o pic/pt-decl.o pic/pt-eval.o pic/pt-except.o pic/pt-exp.o pic/pt-fcn-handle.o pic/pt-id.o pic/pt-idx.o pic/pt-jump.o pic/pt-loop.o pic/pt-mat.o pic/pt-misc.o pic/pt-pr-code.o pic/pt-select.o pic/pt-stmt.o pic/pt-unop.o pic/op-b-b.o pic/op-b-bm.o pic/op-bm-b.o pic/op-bm-bm.o pic/op-cell.o pic/op-chm.o pic/op-class.o pic/op-list.o pic/op-range.o pic/op-str-m.o pic/op-str-s.o pic/op-str-str.o pic/op-struct.o pic/op-double-conv.o pic/op-cm-cm.o pic/op-cm-cs.o pic/op-cm-m.o pic/op-cm-s.o pic/op-cs-cm.o pic/op-cs-cs.o pic/op-cs-m.o pic/op-cs-s.o pic/op-m-cm.o pic/op-m-cs.o pic/op-m-m.o pic/op-m-s.o pic/op-s-cm.o pic/op-s-cs.o pic/op-s-m.o pic/op-s-s.o pic/op-float-conv.o pic/op-fcm-fcm.o pic/op-fcm-fcs.o pic/op-fcm-fm.o pic/op-fcm-fs.o pic/op-fcs-fcm.o pic/op-fcs-fcs.o pic/op-fcs-fm.o pic/op-fcs-fs.o pic/op-fm-fcm.o pic/op-fm-fcs.o pic/op-fm-fm.o pic/op-fm-fs.o pic/op-fs-fcm.o pic/op-fs-fcs.o pic/op-fs-fm.o pic/op-fs-fs.o pic/op-int-concat.o pic/op-int-conv.o pic/op-i8-i8.o pic/op-i16-i16.o pic/op-i32-i32.o pic/op-i64-i64.o pic/op-ui8-ui8.o pic/op-ui16-ui16.o pic/op-ui32-ui32.o pic/op-ui64-ui64.o pic/op-bm-sbm.o pic/op-b-sbm.o pic/op-cm-scm.o pic/op-cm-sm.o pic/op-cs-scm.o pic/op-cs-sm.o pic/op-m-scm.o pic/op-m-sm.o pic/op-sbm-b.o pic/op-sbm-bm.o pic/op-sbm-sbm.o pic/op-scm-cm.o pic/op-scm-cs.o pic/op-scm-m.o pic/op-scm-s.o pic/op-scm-scm.o pic/op-scm-sm.o pic/op-sm-cm.o pic/op-sm-cs.o pic/op-sm-m.o pic/op-sm-s.o pic/op-sm-scm.o pic/op-sm-sm.o pic/op-s-scm.o pic/op-s-sm.o pic/op-cdm-cdm.o pic/op-cdm-cm.o pic/op-cdm-cs.o pic/op-cdm-dm.o pic/op-cdm-m.o pic/op-cdm-s.o pic/op-cm-cdm.o pic/op-cm-dm.o pic/op-dm-cdm.o pic/op-dm-cm.o pic/op-dm-cs.o pic/op-dm-dm.o pic/op-dm-m.o pic/op-dm-s.o pic/op-m-cdm.o pic/op-m-dm.o pic/op-dm-sm.o pic/op-dm-scm.o pic/op-fcdm-fcdm.o pic/op-fcdm-fcm.o pic/op-fcdm-fcs.o pic/op-fcdm-fdm.o pic/op-fcdm-fm.o pic/op-fcdm-fs.o pic/op-fcm-fcdm.o pic/op-fcm-fdm.o pic/op-fdm-fcdm.o pic/op-fdm-fcm.o pic/op-fdm-fcs.o pic/op-fdm-fdm.o pic/op-fdm-fm.o pic/op-fdm-fs.o pic/op-fm-fcdm.o pic/op-fm-fdm.o pic/op-cm-pm.o pic/op-fcm-pm.o pic/op-fm-pm.o pic/op-pm-fcm.o pic/op-pm-fm.o pic/op-m-pm.o pic/op-pm-cm.o pic/op-pm-m.o pic/op-pm-pm.o pic/op-pm-sm.o pic/op-pm-scm.o pic/Array-os.o pic/Array-tc.o pic/oct-errno.o pic/builtins.o pic/ops.o ../libcruft/blas-xtra/pic/xerbla.o  -L../liboctave -loctave -L../libcruft -lcruft  -lfftw3 -lfftw3f  -lhdf5  -lz -L/usr/X11/lib -lfontconfig -lftgl -L/sw/lib -lfreetype -lz -Wl,-framework,CoreServices -Wl,-framework,ApplicationServices -Wl,-framework -Wl,OpenGL -L/usr/X11/lib -lX11 -Wl,-framework -Wl,Carbon -lreadline -lm 
Undefined symbols:
  "__gfortran_st_write", referenced from:
      _xerbla_ in xerbla.o
  "__gfortran_st_write_done", referenced from:
      _xerbla_ in xerbla.o
  "__gfortran_transfer_character", referenced from:
      _xerbla_ in xerbla.o
  "__gfortran_transfer_integer", referenced from:
      _xerbla_ in xerbla.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[2]: *** [liboctinterp.dylib] Error 1
make[1]: *** [src] Error 2
make: *** [all] Error 2
miys02-leblanpb2:octave leblanc$


Is there a reliable way to get things built?  Do any of the developers work on OSX, or is there a procedure that SHOULD result in a successful build?  How do I get to the current stable code (I'm assuming the HEAD is the "testing/devepment" code).

I apologize in advance for my ignorance,

~Joel

reply via email to

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