octave-maintainers
[Top][All Lists]
Advanced

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

Re: compiling development sources


From: Ben Abbott
Subject: Re: compiling development sources
Date: Thu, 11 Feb 2010 07:37:58 -0500

On Feb 11, 2010, at 3:16 AM, Carlo de Falco wrote:

> 
> On 11 Feb 2010, at 03:39, Ben Abbott wrote:
> 
>> It may be that your qr trouble has to do with lacking a qrupdate package?
>> 
>> I began constructing a qrupdate package for Fink, but gave up before 
>> completing it. However, the result is sufficient for Octave's purposes.
>> 
>>      
>> http://sourceforge.net/tracker/index.php?func=detail&aid=2861045&group_id=17203&atid=414256
>> 
>> If you place the info, patch, and tar.gz files in the locations below, Fink 
>> will see them and allow you to install qrupdate (you may need to 
>> scanpackages and index).
>> 
>>      /sw/fink/src/qrupdate-1.0.1.tar.gz
>>      /sw/fink/10.6/local/main/finkinfo/sci/qrupdate.info
>>      /sw/fink/10.6/local/main/finkinfo/sci/qrupdate.patch
>> 
>> You can find the qrupdate-1.0.1.tar.gz file at the link below.
>> 
>>      http://sourceforge.net/projects/qrupdate/files/
>> 
>> I haven't tried to produce a Fink package for the more recent 
>> qrupdate-1.1.x. If you are interested in trying, at a minimum, you'll need 
>> to modify qrupdate.info to reference the proper tar.gz file and change the 
>> associated MD5 as well.
>> 
>> Ben
> 
> Hi,
> 
> I have compiled qrupdate-1.1 with g95 and I am linkng against it.
> If, eventually, I get my Octave install working I will consider creating a 
> fink package and/or an application bundle
> but at the moment I am still stuck with the crashes during 'make check'
> 
> running the tests in qr.cc manually I can proceed without error until the 
> following:
> 
> 
> Ac = [0.620405 + 0.956953i  0.480013 + 0.048806i  0.402627 + 0.338171i;
>      0.589077 + 0.658457i  0.013205 + 0.279323i  0.229284 + 0.721929i;
>      0.092758 + 0.345687i  0.928679 + 0.241052i  0.764536 + 0.832406i;
>      0.912098 + 0.721024i  0.049018 + 0.269452i  0.730029 + 0.796517i;
>      0.112849 + 0.603871i  0.486352 + 0.142337i  0.355646 + 0.151496i ];
> 
> uc = [0.20351 + 0.05401i;
>      0.13141 + 0.43708i;
>      0.29808 + 0.08789i;
>      0.69821 + 0.38844i;
>      0.74871 + 0.25821i ];
> 
> vc = [0.85839 + 0.29468i;
>      0.20820 + 0.93090i;
>      0.86184 + 0.34689i ];
> 
> 
> [Q,R] = qr(Ac);
> [Q,R] = qrupdate(Q,R,uc,vc);
> 
> Program received signal EXC_BAD_ACCESS, Could not access memory.
> Reason: 13 at address: 0x00000000
> 0x8fe18c02 in __dyld_misaligned_stack_error ()
> (gdb)
> 
> so it seems qrupdate works for real matrices/vectors but fails for complex?
> any clue what can be wrong? is there any more information I should provide?
> 
> c.

Carlo, 

I have two suggestions.

(1) Try gfortran for gcc 4.2.

        http://r.research.att.com/tools/ 

I was unable to successfully build with object code compiled with a non-Apple 
variant of gcc. When I tried, the result was bus-errors and seg-faults. I 
eventually traced the problem to linking to two versions of the libstdc++ 
library (maybe other duplicate conflicts existed as well). This only occurred 
when the fortran routine linked to one of Apple's Frameworks. For me the 
problem was with Carbon and OpenGL. In your case, it *may be* Accelerate.

(2) If you try gfortran for gcc 4.2, look over my patch below for the MacOS X 
specific additions that are needed.

Binary files qrupdate.orig/.Makeconf.swp and qrupdate-1.0.1/.Makeconf.swp differ
diff -urN -x .DS_Store qrupdate.orig/Makeconf qrupdate-1.0.1/Makeconf
--- qrupdate.orig/Makeconf      2009-03-11 02:08:32.000000000 -0400
+++ qrupdate-1.0.1/Makeconf     2009-09-17 08:46:54.000000000 -0400
@@ -1,14 +1,14 @@
 # set this to your compiler's executable name (e.g. gfortran, g77)
 FC=gfortran
 # requested flags
-FFLAGS=-fimplicit-none -O3 -funroll-loops 
+FFLAGS=-fimplicit-none -O3 -funroll-loops -ff2c
 # set if you need shared library
 FPICFLAGS=-fPIC
 
 # BLAS library (only required for tests)
-BLAS=-lblas
+BLAS=-framework Accelerate
 # LAPACK library (only required for tests)
-LAPACK=-llapack
+LAPACK=-framework Accelerate
 
 # Library version
 VERSION=1.0
@@ -16,5 +16,5 @@
 
 # set default prefix to /usr/local
 ifeq ($(strip $(PREFIX)),)
-  PREFIX=/usr/local
+  address@hidden@
 endif

Ben





reply via email to

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