Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 174651 - sci-mathematics/scilab-4.1 fails to compile due to missing symbols in cblas/atlas
Summary: sci-mathematics/scilab-4.1 fails to compile due to missing symbols in cblas/a...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Science Mathematics related packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-04-15 08:08 UTC by marty rosenberg
Modified: 2008-02-25 13:49 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description marty rosenberg 2007-04-15 08:08:12 UTC
when emerging scilab-4.1 on amd64, I seem to get a large number of missing symbols in /usr/lib64/libcblas.so and /usr/lib64/liblapack.so.  Checking the given files confirms that the symbols are undefined.  

Reproducible: Always

Steps to Reproduce:
1.emerge scilab
2.
3.

Actual Results:  
make[1]: Leaving directory `/var/tmp/portage/sci-mathematics/scilab-4.1/work/scilab-4.1/ocaml'
linking
/var/tmp/portage/sci-mathematics/scilab-4.1/work/scilab-4.1/libs/xsci.a(x_misc.o): In function `SysErrorM
x_misc.c:(.text+0x113): warning: `sys_errlist' is deprecated; use `strerror' or `strerror_r' instead
x_misc.c:(.text+0x106): warning: `sys_nerr' is deprecated; use `strerror' or `strerror_r' instead
/var/tmp/portage/sci-mathematics/scilab-4.1/work/scilab-4.1/libs/system.a(scicurdir.o): In function `scig
scicurdir.c:(.text+0x24): warning: the `getwd' function is dangerous and should not be used.
/var/tmp/portage/sci-mathematics/scilab-4.1/work/scilab-4.1/libs/os_specific.a(link.o): In function `Crea
link.c:(.text+0x491): warning: the use of `mktemp' is dangerous, better use `mkstemp'
/usr/lib64/liblapack.so: undefined reference to `cblas_dswap'
/usr/lib64/liblapack.so: undefined reference to `cblas_ssyrk'
/usr/lib64/liblapack.so: undefined reference to `cblas_icamax'
/usr/lib64/libcblas.so: undefined reference to `do_lio'
/usr/lib64/libcblas.so: undefined reference to `e_wsle'
/usr/lib64/liblapack.so: undefined reference to `cblas_isamax'
/usr/lib64/liblapack.so: undefined reference to `cblas_izamax'
/usr/lib64/liblapack.so: undefined reference to `cblas_dsyrk'
/usr/lib64/libcblas.so: undefined reference to `e_wsfe'
/usr/lib64/libcblas.so: undefined reference to `z_abs'
/usr/lib64/liblapack.so: undefined reference to `cblas_cgemm'
/usr/lib64/liblapack.so: undefined reference to `cblas_strsm'
/usr/lib64/libcblas.so: undefined reference to `c_sqrt'
/usr/lib64/liblapack.so: undefined reference to `cblas_cscal'
/usr/lib64/liblapack.so: undefined reference to `cblas_dtrsm'
/usr/lib64/liblapack.so: undefined reference to `cblas_dtrmm'
/usr/lib64/libcblas.so: undefined reference to `s_cmp'
/usr/lib64/libcblas.so: undefined reference to `z_exp'
/usr/lib64/liblapack.so: undefined reference to `cblas_dgemm'
/usr/lib64/liblapack.so: undefined reference to `cblas_zherk'
/usr/lib64/libcblas.so: undefined reference to `e_rsfi'
/usr/lib64/liblapack.so: undefined reference to `cblas_cherk'
/usr/lib64/liblapack.so: undefined reference to `cblas_ztrmm'
/usr/lib64/libcblas.so: undefined reference to `c_exp'
/usr/lib64/liblapack.so: undefined reference to `cblas_sscal'
/usr/lib64/libcblas.so: undefined reference to `i_indx'
/usr/lib64/liblapack.so: undefined reference to `cblas_ztrsm'
/usr/lib64/liblapack.so: undefined reference to `cblas_cswap'
/usr/lib64/liblapack.so: undefined reference to `cblas_sgemm'
/usr/lib64/libcblas.so: undefined reference to `s_rsfi'
/usr/lib64/libcblas.so: undefined reference to `do_fio'
/usr/lib64/libcblas.so: undefined reference to `z_sqrt'
/usr/lib64/libcblas.so: undefined reference to `e_wsfi'
/usr/lib64/libcblas.so: undefined reference to `s_cat'
/usr/lib64/liblapack.so: undefined reference to `cblas_ctrmm'
/usr/lib64/libcblas.so: undefined reference to `s_stop'
/usr/lib64/libcblas.so: undefined reference to `s_wsfi'
/usr/lib64/liblapack.so: undefined reference to `cblas_strmm'


Expected Results:  
no linking errors, and a successful install

[ebuild     U ] sci-mathematics/scilab-4.1 [2.7-r3] USE="Xaw3d%* ocaml%* tk%* -debug% -gtk -java% (-X%*) (-ifc%) (-tcltk%)" 0 kB 

emerge --info
Portage 2.1.2.3 (default-linux/amd64/2006.1, gcc-4.1.2, glibc-2.5-r1, 2.6.18-gentoo-r1 x86_64)
=================================================================
System uname: 2.6.18-gentoo-r1 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4400+
Gentoo Base System release 1.12.10
Timestamp of tree: Sat, 14 Apr 2007 03:20:01 +0000
dev-java/java-config: 1.3.7, 2.0.31-r5
dev-lang/python:     2.4.4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.15-r1
sys-devel/libtool:   1.5.23b
virtual/os-headers:  2.6.20-r2
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -O3 -pipe -fomit-frame-pointer -fgcse-las -fgcse-sm"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.llarian.net/ http://gentoo.mirrors.pair.com"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/stuart-server /usr/portage/local/layman/sunrise /usr/portage/local/layman/chtekk-syscp /usr/portage/local/layman/science /usr/portage/local/layman/mozilla /usr/portage/local/layman/emacs /usr/portage/local/layman/stuart-desktop /usr/portage/local/layman/haskell /usr/portage/local/layman/pro-audio /usr/portage/local/layman/common-lisp /usr/portage/local/layman/xeffects /usr/portage/local/layman/wschlich-testing /usr/portage/local/layman/wschlich /usr/portage/local/layman/wrobel /usr/local/portage"
SYNC="rsync://192.168.0.1/gentoo-portage"
USE="64bit X aac aalib aiglx alsa amd64 auctex bcmath berkdb binary-drivers bitmap-fonts blas blender-game cairo cblas cdrw cli clisp clock-screen cluster colordiff cracklib crosscompile crypt cups directfb divx dmx dri dvd esd ffmpeg fftw figlet firefox flac fortran fortran95 fping gcj gcl gd gdbm gimp ginac glgd glut gmedia gmp gpm graphviz gs guile iconv imagemagick ipv6 isdnlog jack key-screen lame lapack ldb libcaca libedit libg++ mad mastroka matroska midi mp3 mp4 mpe-sdk mpeg mplayer mupad-noscilab musepack nas ncurses netboot netjack network nis nls nptl nptlonly nvidia objc objc++ objc-gc ocaml octave offensive ogg opengl pam pcre perl ppds pppd python qhull readline realmedia reflection sbcl screen scsh sdl search-screen server session shorten slang smp spl ssl tcpd tetex theora threads truetype-fonts type1-fonts unicode usb vorbis wavpack wmp x11vnc x264 xfs xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Markus Dittrich (RETIRED) gentoo-dev 2007-04-15 13:52:51 UTC
Hi Marty,

What cblas/lapack are you using on your system and could you please
post the output of

ldd /usr/lib64/libcblas.so
ldd /usr/lib64/liblapack.so

Could you please recompile both of them using 
CFLAGS/FFLAGS="-march=athlon64 -O2 -pipe"
and try again. 

Thanks,
Markus
Comment 2 marty rosenberg 2007-04-15 15:22:36 UTC
(In reply to comment #1)
> Hi Marty,
> 
> What cblas/lapack are you using on your system 
When I was attempting to compile scilab, I was using acml for both.  

> and could you please
> post the output of
 
> ldd /usr/lib64/libcblas.so
        libacml_mv.so => /usr/lib/libacml_mv.so (0x00002ad1c1dd7000)
        libc.so.6 => /lib/libc.so.6 (0x00002ad1c1f07000)
        /lib64/ld-linux-x86-64.so.2 (0x0000555555554000)

> ldd /usr/lib64/liblapack.so
        libacml_mv.so => /usr/lib/libacml_mv.so (0x00002b44e5552000)
        libc.so.6 => /lib/libc.so.6 (0x00002b44e5682000)
        /lib64/ld-linux-x86-64.so.2 (0x0000555555554000)

Seeing that they were both linked to libacml, I tried switching both settings to atlas.  It gave similar link errors with /usr/lib/libacml.so.  unmerging acml resulted in the following error (scilab doesn't depend on acml.  This shouldn't happen.)  Since acml isn't compiled, I can't imagine that changing CFLAGS would have any effect.  Not that I think it will have any affect, I'm currently recompiling every blas/lapack implementation with sane use flags.  I'll post the results when that's done in a few hours.  Here are the results of running ldd on all of the .so's from acml.  A side note, there's a new acml out.  I'll try making an ebuild for it.

        libacml_mv.so => /usr/lib/libacml_mv.so (0x00002ac586918000)
        libc.so.6 => /lib/libc.so.6 (0x00002ac586a48000)
        /lib64/ld-linux-x86-64.so.2 (0x0000555555554000)


        libc.so.6 => /lib/libc.so.6 (0x00002b86eff7a000)
        /lib64/ld-linux-x86-64.so.2 (0x0000555555554000)



Creating html help files
/var/tmp/portage/sci-mathematics/scilab-4.1/work/scilab-4.1/bin/scilab -l eng  \
                -nwni  -e "xmltohtml([],[],'html-rev.xsl');quit" -args -nouserstartup
/var/tmp/portage/sci-mathematics/scilab-4.1/work/scilab-4.1/bin/scilex: error while loading shared libraries: libacml.so: cannot open shared object file: No such file or directory

Comment 3 Markus Dittrich (RETIRED) gentoo-dev 2007-04-16 13:06:44 UTC
(In reply to comment #2)
> to atlas.  It gave similar link errors with /usr/lib/libacml.so.  unmerging
> acml resulted in the following error (scilab doesn't depend on acml.  This
> shouldn't happen.)  Since acml isn't compiled, I can't imagine that changing

scilab depends on virtual/blas and virtual/lapack which acml provides, hence
there is not problem here. 
Your issue is due to acml not scilab as far as I can tell and if recompiling/installing 
doesn't help we should probably file this as an acml bug so the developer in charge 
of acml can have a look.

Thanks,
Markus
Comment 4 Markus Dittrich (RETIRED) gentoo-dev 2008-01-19 11:42:20 UTC
Has this problem been solved or is it still an issue?

Thanks,
Markus
Comment 5 Gasper Azman 2008-01-31 09:36:55 UTC
I get something similar with scilab-4.1.2: again, a linker error.

The exact error is

### SNIPPET ###
make[3]: Leaving directory `/var/tmp/portage/sci-mathematics/scilab-4.1.2/work/scilab-4.1.2/pvm3/pvmgs/LINUX'
done building group server and library
make[2]: Leaving directory `/var/tmp/portage/sci-mathematics/scilab-4.1.2/work/scilab-4.1.2/pvm3'
make[1]: Leaving directory `/var/tmp/portage/sci-mathematics/scilab-4.1.2/work/scilab-4.1.2/pvm3'
linking
gfortran: /usr/lib/liblapack.so: No such file or directory
make: *** [bin/scilex] Error 1


### END SNIPPET ###

I must say that this happens on a system that had emerge -uDN world and revdep-rebuild run on it and then repeated.

Reproducible: always
Steps: emerge scilab

Portage says I should provide this:
GENTOO_VM=sun-jdk-1.6  CLASSPATH="" JAVA_HOME="/opt/sun-jdk-1.6.0.04"
JAVACFLAGS="-source 1.4 -target 1.4" COMPILER=""

Plus, emerge --info:

Portage 2.1.4 (default-linux/x86/2007.0/desktop, gcc-4.2.2, glibc-2.7-r1, 2.6.24-gentoo i686)
=================================================================
System uname: 2.6.24-gentoo i686 Intel(R) Pentium(R) 4 CPU 3.20GHz
Timestamp of tree: Thu, 31 Jan 2008 02:00:01 +0000
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.4
dev-lang/python:     2.5.1-r5
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.24
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium4 -pipe -finline-functions"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -march=pentium4 -pipe -finline-functions"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS=""
FEATURES="distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ http://gentoo.mirror.icd.hu/ http://www.gigaload.org/gentoo.org/ http://ftp.easynet.nl/mirror/gentoo/ http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
LANG="en_US"
LC_ALL="en_US.utf8"
LINGUAS="en sl"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/xeffects /usr/portage/local/layman/d /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac aalib acl acpi alsa asf bash-completion berkdb bidi bitmap-fonts browserplugin bzip2 cairo ccache cddb cdr cdrom cjk cli cracklib crypt css cups curl dba dbus directfb divx4linux dlloader dri dts dvd dvdr dvdread eds encode evo fam fame fbcon ffmpeg firefox flac fortran freetype ftp gd gdbm gif gimpprint gkrellm glx gpm gstreamer gtk gtk2 hal iconv imap isdnlog jack java javascript jikes jpeg kde kdeenablefinal kdexdeltas kerberos ldap libcaca live logitech-mouse mad maildir matroska midi mikmod mime mmap mmx mmxext mozilla mp3 mp4 mpeg mplayer mtrr mudflap musepack musicbrainz nas ncurses nls no-old-linux nptl nptlonly nsplugin nvidia ogg oggvorbis opengl openmp opera pam pcre pdf perl pic png pppd python qt qt3 qt3support qt4 quicktime readline reflection sblive screen sdl session skins sndfile spell spl sse sse2 ssl stream subtitles subversion svg tcpd tga theora threads tiff truetype truetype-fonts type1-fonts unicode usb utf8 vcd vim-syntax vorbis win32codecs wmf x x86 xcomposite xml xml2 xorg xpm xv xvid zlib" ALSA_CARDS="emu10k1" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" APACHE2_MPMS="worker" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en sl" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

### END EMERGE --INFO ###
Comment 6 Markus Dittrich (RETIRED) gentoo-dev 2008-01-31 13:48:02 UTC
Please try using

eselect lapack list

to list all available lapack packages on your system
and then

eselect lapack set <some lapack package>

to select one of them. There should now be a symbolic
link /usr/lib/liblapack.so and scilab should compile.

Thanks,
Markus
Comment 7 Markus Dittrich (RETIRED) gentoo-dev 2008-02-24 11:42:25 UTC
Has this issue been resolved or does it persist?

Thanks,
Markus
Comment 8 Gasper Azman 2008-02-24 20:13:14 UTC
Have 4.1.2 happily installed (which means it compiled)...

eix says:
Installed versions:  4.1.2(09:33:42 PM 01/31/2008)(gtk java -Xaw3d -debug -elibc_FreeBSD -ocaml)

Guess upstream fixed it...


Cheers,

G
Comment 9 Markus Dittrich (RETIRED) gentoo-dev 2008-02-25 13:49:02 UTC
Great, thanks! Closing this one then ....

cheers,
Markus