[Top][All Lists]

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

Re: Octave-Forge: Segmentation Fault

From: Thomas Treichl
Subject: Re: Octave-Forge: Segmentation Fault
Date: Fri, 23 Nov 2007 20:05:21 +0100
User-agent: Thunderbird (Macintosh/20071031)

Ben Abbott schrieb:

On Nov 23, 2007, at 12:53 PM, Thomas Treichl wrote:

Ben Abbott schrieb:
On Nov 22, 2007, at 3:35 PM, Thomas Treichl wrote:
Ben Abbott schrieb:
There's a thread on sourceforge here <> I've never encountered a seg-fault using a ppc. Further, I only encounter a seg-fault when I install SuiteSparse *without* libcsparse.a, build Octave-2.9.17, and try to install Octave-Forge-20071014. When I include libcsparse.a in the SuiteSparse install, or remove SuiteSparse entirely, I have no problem ... I've duplicated that effort twice.

Sounds to me being an optimization problem or something like that when building SuiteSparse?! I'm compiling SuiteSparse 3.0.0 since I compile Octave 2.9.12 and use libcsparse.a before I compile Octave. I also apply the patch SuiteSparse-3.0.0.diff before building SuiteSparse without metis (don't know if you have a current SVN of Octave-forge checked out, here is the link)

Modify Line 77 (+F77 = f2c) of that *.diff file into your needs for gfortran and then build another SuiteSparse,

  bash~:$ export CC=gcc
bash~:$ export CFLAGS="-fno-common -no-cpp-precomp -fexceptions -D_POSIX_C_SOURCE -D__NOEXTENSIONS__ -DNPARTITION"
  bash~:$ make

try to use that created libcsparse.a instead... I don't know which option actually fails for you but you can add one flag by another in F77FLAGS of ./SuiteSparse/UFconfig/ or in CFLAGS above (eg. -O3 -mieee-fp ...) - doesn't Fink already have a SuiteSparse package ready?
The sourceforge link you brought to my attention looks like it will be useful in resolving the problem with Octave and Octave-Forge using Fink. Unfortunately, I've not been able to get the diff's to apply using 'patch'. Can you tell me what specific syntax is needed? ... hmmm, perhaps I should tell you what I did, and you can tell me what I did wrong ;-) After placing the SuiteSparse folder and SuiteSparse-3.0.0.diff in the same location, I tried ...
patch <./SuiteSparse-3.0.0.diff

Hi Ben,

sorry for being late, yes you need to

  patch -p0 < SuiteSparse-3.0.0.diff

That should work.



Another question. Are you using Xcode to build Octave and its dependencies?

If so, and you have any desire to move on to gfortran (from f2c), MacResearch has instructions on doing so.

I haven't tried it out yet. Mainly because I have no experience with Xcode and doubt I'd be successful in creating an Xcode project for Octave. However, I am interested in such, since (I suspect) it would be useful in isolating the cause of the segmentation fault problem.


Yes, I'm using XCode's compilers and nothing else. I need to make sure that Mac users that run the have the same compilers then I have - original compilers are the only solution. We have gone through this whole discussion about gfortran for the (search Octave mailing lists of this year about the variuos threads we had before appeared) and to make sure that users have the same system we say 'use Apple's latest XCode tools' to make sure that packages are installed correctly...

Note: What you shouldn't do at all: Don't mix f2c with gfortran for the dependencies of Octave. Decide either to use one and the same Fortran compiler for building all dependencies and Octave or decide to use f2c for all dependencies and Octave. Don't mix Fortran compilers, problems like you explained may occur then and nobody knows why/where/when they appear.

Eg. if you use Apple's vecLib library and use the switch '-framework vecLib' from the Octave configure script then you must use f2c because Apple's blas library was compiled using f2c, so if you use gfortran then you must bring your own blas library that is also compiled with gfortran. This may be one problem that xan occur with SuiteSparse if you use gfortran but you also use Apple's blas library that was compiled with f2c...

A long story isn't it, it took us weeks of spare time to find out things like that before building Hope that helps for you...


reply via email to

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