Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#11958 - Can't dynamically link with Lapack using -llapack

Attached to Project: Arch Linux
Opened by Simon Lipp (moonz) - Friday, 31 October 2008, 22:30 GMT
Last edited by Jan de Groot (JGC) - Monday, 03 November 2008, 11:02 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Ronald van Haren (pressh)
Architecture All
Severity Low
Priority Normal
Reported Version None
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
lapack doesn't ship a symbolic link liblapack.so (to liblapak.so.3). This causes a strange behavior:

$ cc -llapack test.c -o test
/tmp/cceccmis.o: In function `main':
test.c:(.text+0x12): undefined reference to `lsame_'
collect2: ld returned 1 exit status
$? = 1

$ cc test.c -llapack -o test
$? = 0

Both commands works after doing "ln -s /usr/lib/liblapack.so.3 /usr/lib/liblapack.so" (as root)

I found this problem with scilab: the configure scripts try the second form, deduce that it can use the system lapack, try to link with the first form, and fails. I will report this problem to scilab too and make a workaround, but it would be nice to be able to dynamically link with lapack. Creating the dynamic link solved the problem, too.

Lapack version: 3.1.1-3

------
test.c
------

extern void lsame_();

int main(int ac, char **av) {
lsame_();
return 0;
}

This task depends upon

Closed by  Jan de Groot (JGC)
Monday, 03 November 2008, 11:02 GMT
Reason for closing:  Fixed
Additional comments about closing:  Fixed in 3.1.1-4.
Comment by Jan de Groot (JGC) - Monday, 03 November 2008, 09:18 GMT
Linking with -lapack will try to link to lapack.so with fallback to lapack.a. The static library is broken. I would advise to add the .so symlink and get rid of the .a file by disabling static library creation.

Loading...