integer type is defined as 64 bit on x86-64, but dgesv_ expects 32 bit
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
lapack3 (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
libf2c2 (Debian) |
Fix Released
|
Unknown
|
|||
libf2c2 (Ubuntu) |
Fix Released
|
Undecided
|
Evgeni Golov | ||
Bug Description
Binary package hint: libf2c2
I try to run the function dgesv_ in lapack. It compiles, links and runs, but the output is wrong.
In the lapack manual it says that it expects data of type integer array (arguments of type "integer *").
f2c.h defines integer as long int, which on x86-64 is 64 bit.
When I look at an integer array filled by dgesv_, it is clear that the integers are 32 bit. When I change the definition of integer in f2c.h to int, the function works.
Not sure if the error is in f2c.h, or in the lapack build.
I use liblapack3gf 3.1.1-0.3ubuntu2.
ProblemType: Bug
Architecture: amd64
Date: Fri Apr 25 20:49:25 2008
Dependencies:
libgcc1 1:4.2.3-2ubuntu7
gcc-4.2-base 4.2.3-2ubuntu7
libc6 2.7-10ubuntu3
DistroRelease: Ubuntu 8.04
NonfreeKernelMo
Package: libf2c2 20050501-2
PackageArchitec
ProcEnviron:
PATH=/
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: libf2c2
Uname: Linux 2.6.24-16-generic x86_64
Changed in libf2c2: | |
status: | Unknown → Fix Released |
That is fixed in 20061008-4.1 in Debian unstable (the problem was in f2c.h). Please sync.