Bug 1479567

Summary: /usr/lib64/liblapack.so: undefined references
Product: [Fedora] Fedora Reporter: Antonio T. (sagitter) <anto.trande>
Component: lapackAssignee: Tom "spot" Callaway <tcallawa>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: urgent    
Version: rawhideCC: anto.trande, c.david86, fkluknav, fweimer, normand, tcallawa
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-08-11 14:46:11 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Antonio T. (sagitter) 2017-08-08 20:13:02 UTC
Description of problem:

Undefined references in liblapack.so library:

Linking C executable cmTC_932b0
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_932b0.dir/link.txt --verbose=1
/usr/bin/cc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -DCHECK_FUNCTION_EXISTS=cheev_  -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld  -rdynamic CMakeFiles/cmTC_932b0.dir/CheckFunctionExists.c.o  -o cmTC_932b0 /usr/lib64/liblapack.so /usr/lib64/libblas.so 
/usr/lib64/liblapack.so: undefined reference to `clarfy_'
/usr/lib64/liblapack.so: undefined reference to `dlarfy_'
/usr/lib64/liblapack.so: undefined reference to `zlarfy_'
/usr/lib64/liblapack.so: undefined reference to `slarfy_'
/usr/lib64/liblapack.so: undefined reference to `iparam2stage_'
collect2: error: ld returned 1 exit status

Version-Release number of selected component (if applicable):
lapack-3.7.1

How reproducible:
Link error when i compile 'COPASI' on rawhide.


Actual results:
$ mock --no-clean -r fedora-rawhide-x86_64 --shell 'rpm -qa |grep lapack && ldd -r /usr/lib64/liblapack.so'

Start: shell
lapack-3.7.1-1.fc27.x86_64
lapack-devel-3.7.1-1.fc27.x86_64
	linux-vdso.so.1 (0x00007fff093f9000)
	libblas.so.3 => /lib64/libblas.so.3 (0x00007f62f3068000)
	libm.so.6 => /lib64/libm.so.6 (0x00007f62f2d13000)
	libgfortran.so.4 => /lib64/libgfortran.so.4 (0x00007f62f2937000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f62f2552000)
	/lib64/ld-linux-x86-64.so.2 (0x00005635004c0000)
	libquadmath.so.0 => /lib64/libquadmath.so.0 (0x00007f62f2312000)
	libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f62f20f9000)
undefined symbol: clarfy_	(/usr/lib64/liblapack.so)
undefined symbol: dlarfy_	(/usr/lib64/liblapack.so)
undefined symbol: zlarfy_	(/usr/lib64/liblapack.so)
undefined symbol: slarfy_	(/usr/lib64/liblapack.so)
undefined symbol: iparam2stage_	(/usr/lib64/liblapack.so)
Finish: shell

Comment 1 Tom "spot" Callaway 2017-08-09 16:51:18 UTC
Yeah, this is an easy fix, working on it now. I wish there was a sane way for CMake to make properly versioned shared libraries. :/

Comment 2 Tom "spot" Callaway 2017-08-09 18:50:39 UTC
Fixed in 3.7.1-2.

Comment 3 Antonio T. (sagitter) 2017-08-09 19:57:49 UTC
Not yet unfortunately:

$ mock --no-clean -r fedora-rawhide-x86_64 --shell 'rpm -qa |grep lapack && ldd -r /usr/lib64/liblapack.so'
INFO: mock.py version 1.4.2 starting (python version = 3.6.2)...
lapack-3.7.1-2.fc27.x86_64
lapack-devel-3.7.1-2.fc27.x86_64
	linux-vdso.so.1 (0x00007ffd0d988000)
	libblas.so.3 => /lib64/libblas.so.3 (0x00007f4bd98b1000)
	libm.so.6 => /lib64/libm.so.6 (0x00007f4bd955c000)
	libgfortran.so.4 => /lib64/libgfortran.so.4 (0x00007f4bd9180000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f4bd8d9b000)
	/lib64/ld-linux-x86-64.so.2 (0x0000555e0d548000)
	libquadmath.so.0 => /lib64/libquadmath.so.0 (0x00007f4bd8b5b000)
	libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f4bd8942000)
undefined symbol: spotrs_	(/usr/lib64/liblapack.so)
undefined symbol: cgetrf_	(/usr/lib64/liblapack.so)
undefined symbol: cpotrs_	(/usr/lib64/liblapack.so)
undefined symbol: sgetrs_	(/usr/lib64/liblapack.so)
undefined symbol: spotrf_	(/usr/lib64/liblapack.so)
undefined symbol: sgetrf_	(/usr/lib64/liblapack.so)
undefined symbol: cgetrs_	(/usr/lib64/liblapack.so)
undefined symbol: cpotrf_	(/usr/lib64/liblapack.so)
Finish: shell

Comment 4 Tom "spot" Callaway 2017-08-10 19:34:04 UTC
Okay. How about 3.7.1-3? :)

Comment 5 Antonio T. (sagitter) 2017-08-11 12:38:24 UTC
(In reply to Tom "spot" Callaway from comment #4)
> Okay. How about 3.7.1-3? :)

It's okay now.
Thank you.