octave-maintainers
[Top][All Lists]
Advanced

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

Re: Unreliable OSX Builds


From: Benjamin Lindner
Subject: Re: Unreliable OSX Builds
Date: Mon, 24 Aug 2009 21:37:00 +0200
User-agent: Thunderbird 2.0.0.22 (Windows/20090605)

Joel LeBlanc wrote:
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,


The same error currently prevents the development sources build on mingw32 gcc. There have been changes in the compile&link code in the makefiles and it's apparently not fully fixed yet.

See also the thread at http://www.nabble.com/linking-liboctave-fails-%28lapack-missing-%29-td24958887.html

benjamin


reply via email to

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