[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Octave-Forge on OS X
From: |
Per Persson |
Subject: |
Re: Octave-Forge on OS X |
Date: |
Wed, 13 Feb 2002 10:21:33 +0100 |
I got (most of) the octave-forge stuff up and running, a quick scan
tells me that the following stuff wasn't installed:
./extra/engine/NOINSTALL
./extra/fake-sparse/NOINSTALL
./extra/mex/NOINSTALL
./extra/patches/NOINSTALL
./extra/perl/NOINSTALL
./extra/tk_octave/NOINSTALL
./extra/ver20/NOINSTALL
./extra/Windows/NOINSTALL
./main/audio/NOINSTALL
./main/image/NOINSTALL
./main/linear-algebra/NOINSTALL
./main/plot/NOINSTALL
./main/sparse/NOINSTALL
./nonfree/gpc/NOINSTALL
./nonfree/splines/NOINSTALL
Some of those are disabled by default, some because they didn't compile
on *first try* and some because I don't have XWindows installed on that
machine.
It is a matter of working around the same bugs in Apples devtools as
with octave itself. This should all be set correctly in mkoctfile
**except** for the libstc++ bug that requires you to extract all the .o
from libstdc++.a and link them explicitly.
I did some poking around and pinpointed libstdc++/cstrmain.o as the
problem.
Try this: add an extra directory somewhere and inside that dir, do "ar
-x /usr/lib/libstdc++.a". Then add that directory to "objfiles" in
mkoctfile.
Follow the instructions for installing octave-forge. (I had to run "make
install" in each of the subdirs to get install to work)
That should be it, but I'm writing from memory with the aid of some
sketchy notes I took;-)
I'll attach part of my mkoctfile to serve as an example.
HTH,
Per
PS. If you do get it to work, let me know.
-----
#! /bin/sh
#
# mkoctfile -- create a .oct file suitable for dynamic linking by
# Octave.
# Exit immediately on any error.
set -e
# Default values for these variables are filled in when Octave is
# compiled.
: ${CPPFLAGS="-no-cpp-precomp -I/sw/include"}
: ${INCFLAGS="-I/sw/include/octave-2.1.35
-I/sw/include/octave-2.1.35/octave -I/sw/include"}
: ${F2C="f2c"}
: ${F2CFLAGS=""}
: ${F77=""}
: ${FFLAGS=""}
: ${FPICFLAG="-fPIC"}
: ${CC="cc"}
: ${CFLAGS="-g -O2 -Wall"}
: ${CPICFLAG="-fPIC"}
: ${CXX="c++"}
: ${CXXFLAGS="-g -O2 -Wall"}
: ${CXXPICFLAG="-fPIC"}
: ${XTRA_CFLAGS=""}
: ${XTRA_CXXFLAGS="-fno-coalesce-templates -fno-implicit-templates"}
: ${DEPEND_FLAGS="-M"}
: ${DEPEND_EXTRA_SED_PATTERN=""}
: ${SH_LD="c++"}
: ${SH_LDFLAGS="-bundle -bundle_loader /sw/bin/octave"}
: ${ALL_FFLAGS="$FFLAGS"}
: ${ALL_CFLAGS="$INCFLAGS $XTRA_CFLAGS $CFLAGS"}
: ${ALL_CXXFLAGS="$INCFLAGS $XTRA_CXXFLAGS $CXXFLAGS"}
# Local variables.
usage_msg="usage: mkoctfile [options] file ..."
cfiles=
ccfiles=
f77files=
objfiles=~/Documents/source/sandbox/examples/liba/cstrmain.o
octfiles=
octfile=
incflags=
defs=
ldflags=
dbg=:
strip=false
link=true
depend=false
compile=true
[snip to eof]
-------------------------------------------------------------
Octave is freely available under the terms of the GNU GPL.
Octave's home on the web: http://www.octave.org
How to fund new projects: http://www.octave.org/funding.html
Subscription information: http://www.octave.org/archive.html
-------------------------------------------------------------