Using mkl-gfortran-threads as blas, cblas and lapack library, R and gsl fail in the ld phase. This error is robust against different versions of mkl, gcc, R and gsl. I cannot rule out that this relates to Bug #233932, but do not think so. The error when compiling R: i686-pc-linux-gnu-gcc -std=gnu99 -Wl,--export-dynamic -o R.bin Rmain.o -L../../lib -lR /opt/intel/mkl/10.0.5.025/lib/32/libiomp5.so: undefined reference to `pthread_atfork' collect2: ld returned 1 exit status make[3]: *** [R.bin] Error 1 make[3]: Leaving directory `/var/tmp/portage/dev-lang/R-2.7.2/work/R-2.7.2/src/main' make[2]: *** [R] Error 2 make[2]: Leaving directory `/var/tmp/portage/dev-lang/R-2.7.2/work/R-2.7.2/src/main' make[1]: *** [R] Error 1 make[1]: Leaving directory `/var/tmp/portage/dev-lang/R-2.7.2/work/R-2.7.2/src' make: *** [R] Error 1 * * ERROR: dev-lang/R-2.7.2 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 3336: Called die * The specific snippet of code: * emake || die "emake failed"; * The die message: * emake failed And in gsl: i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -o .libs/gsl-randist gsl-randist.o -Wl,--no-as-needed ./.libs/libgsl.so -L/opt/intel/mkl/10.0.5.025/lib/32 -lmkl_gf -lmkl_gnu_thread -lmkl_core -liomp5 -lpthread -lm i686-pc-linux-gnu-gcc -O2 -march=i686 -pipe -o .libs/gsl-histogram gsl-histogram.o -Wl,--no-as-needed ./.libs/libgsl.so -L/opt/intel/mkl/10.0.5.025/lib/32 -lmkl_gf -lmkl_gnu_thread -lmkl_core -liomp5 -lpthread -lm //opt/intel/mkl/10.0.5.025/lib/32/libmkl_gnu_thread.so: undefined reference to `_gfortran_malloc' /opt/intel/mkl/10.0.5.025/lib/32/libmkl_gnu_thread.so: undefined reference to `_gfortran_free' collect2: ld returned 1 exit status opt/intel/mkl/10.0.5.025/lib/32/make[2]: libmkl_gnu_thread.so*** [gsl-randist] Error 1: undefined reference to `_gfortran_malloc' /opt/intel /mkl/10.0.5.025/lib/32/libmkl_gnu_thread.so: make[2]: undefined*** Waiting for unfinished jobs.... reference to `_gfortran_free' collect2: ld returned 1 exit status make[2]: *** [gsl-histogram] Error 1 make[2]: Leaving directory `/var/tmp/portage/sci-libs/gsl-1.11/work/gsl-1.11' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/sci-libs/gsl-1.11/work/gsl-1.11' make: *** [all] Error 2 * * ERROR: sci-libs/gsl-1.11 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 2831: Called die * The specific snippet of code: * emake || die "emake failed" * The die message: * emake failed Reproducible: Always Steps to Reproduce: 1. eselect {blas|cblas|lapack} mkl-gfortran-threads 2. emerge {gsl|R} Actual Results: Compilation dies with ld exit status 1 Expected Results: Compile Fine My emerge --info: Portage 2.2_rc14 (default-linux/x86/2007.0/desktop, gcc-4.1.2, glibc-2.6.1-r0, 2.6.25.17 i686) ================================================================= System uname: Linux-2.6.25.17-i686-Intel-R-_Pentium-R-_4_CPU_3.00GHz-with-glibc2.0 Timestamp of tree: Wed, 12 Nov 2008 14:00:01 +0000 app-shells/bash: 3.2_p33 dev-java/java-config: 1.3.7, 2.1.6 dev-lang/python: 2.5.2-r7 dev-util/cmake: 2.4.6-r1 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r2 sys-devel/automake: 1.4_p6, 1.7.9-r1, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=i686 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/init.d /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d /usr/share/X11" CXXFLAGS="-O2 -march=i686 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="" MAKEOPTS="-j3" 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" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X acpi alsa bash-completion berkdb blas bzip2 cairo cdr cli cracklib crypt cups curl dri dvd dvdr dvdread emacs emboss encode evo fftw firefox fortran ftp gdbm gif glib gnutls gpm gtk gtk2 iconv ipv6 isdnlog java jpeg lapack latex mad midi mikmod mmx mp3 mpeg mudflap mysql ncurses nptl nptlonly nsplugin ogg opengl openmp oss pcre pdf perl png posix ppds pppd python qt4 quicktime readline reflection sdl session spl sse ssl svg tcpd tetex tiff truetype unicode vim-syntax vorbis win32codecs wmf x86 xml xorg xv zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 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 mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon 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 deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="mouse keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="intel" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Bug 233932 concerns the method of specifying blas flags when compiling user programs, so you are right that these broken emerges are a separate (though not unrelated) issue. These packages are not linking with -lpthread. Looking at the R configure script, I see certain supported blas implementations with extra libraries specified, but mkl is not called out as a known implementation... so it doesn't get to have any extra libraries (such as pthread). Assigning to maintainers of these ebuilds.
Same error trying to compile R and gsl, but different setup. emerge --info Portage 2.2_rc14 (default/linux/amd64/2008.0, gcc-4.3.2, glibc-2.8_p20080602-r0, 2.6.27-gentoo-r2 x86_64) ================================================================= System uname: Linux-2.6.27-gentoo-r2-x86_64-Intel-R-_Xeon-R-_CPU_X5482_@_3.20GHz-with-glibc2.2.5 Timestamp of tree: Fri, 14 Nov 2008 14:05:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7, 2.1.6-r1 dev-lang/python: 2.5.2-r8 dev-util/ccache: 2.4-r8 dev-util/cmake: 2.6.2 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.3.0-r1 sys-apps/sandbox: 1.2.18.1-r3 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.19 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="amd64 ~amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-mtune=core2 -march=core2 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /opt/openjms/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-mtune=core2 -march=core2 -O2 -pipe" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="" FEATURES="ccache distlocks metadata-transfer parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo http://gentoo.osuosl.org http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo" INSTALL_MASK="" LDFLAGS="-Wl,-O1 -Wl,--sort-common -s" LINGUAS="en en_US en_GB" MAKEOPTS="-j12" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_EXTRA_OPTS="" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="R X Xaw3d a52 aac aalib acl acpi akode alsa amd64 apm arts atm audiofile automount avahi bash-completion berkdb bidi bindist bl blas bluetooth bzip2 cairo caps cblas cddb cdio cdparanoia cli clisp consolekit cracklib crypt cscope cups curl dbus dga disk-partition djvu dmx doc dri drm dv dvb emacs encode esd examples exif expat ffmpeg fftw flac fontconfig fortran gcdmaster gd gdbm ggi gif gimp glep glib gmp gnutls gphoto2 gpm gs gstreamer gtk gtk+ gtkhtml guile hal hddtemp hfs html iconv ieee1394 imagemagick imlib ipv6 isdnlog jack java javascript jbig jpeg jpeg2k kde kdehiddenvisibility kerberos lapack latex lcms ldap libcaca libedit libffi libsamplerate lirc lm_sensors lzo mad midi mikmod mime mmap mmx mmxext mng mono motif mp2 mp3 mp3rtp mpeg mplayer mudflap multilib mysql mzscheme nas ncurses nis nls nptl nptlonly nsplugin nvidia ocaml octave odbc ogg openal openexr opengl openmp oss pam pccts pch pcre pda pdf perl plotutils png pnm postgres povray ppds pppd pulseaudio pvr python qt3 qt3support qt4 quicktime radius rar readline reflection rle ruby samba scanner sdl seamonkey sensord session slang sndfile snmp soundfile speex spell spl sqlite srt sse sse2 ssl ssse3 svg swat sysfs tcl tcpd test tga theora tiff timidity tk truetype unicode usb utils v4l v4l2 vcd vorbis wavpack winbind wxwindows x264 xattr xemacs xface xforms xine xinerama xml xorg xpm xprint xscreensaver xv xvid xvmc yv12 zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon 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 deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="adc65 agfa_cl20 aox barbie canon casio_qv clicksmart310 digigr8 digita dimagev dimera3500 directory enigma13 fuji gsmart300 hp215 iclick jamcam jd11 kodak_dc120 kodak_dc210 kodak_dc240 kodak_dc3200 kodak_ez200 konica konica_qm150 largan lg_gsm mars mustek panasonic_coolshot panasonic_dc1000 panasonic_dc1580 panasonic_l859 pccam300 pccam600 polaroid_pdc320 polaroid_pdc640 polaroid_pdc700 ptp2 ricoh ricoh_g3 samsung sierra sipix_blink sipix_blink2 sipix_web2 smal sonix sony_dscf1 sony_dscf55 soundvision spca50x sq905 stv0674 stv0680 sx330z template topfield toshiba_pdrm11" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse aiptek wacom" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US en_GB" LIRC_DEVICES="accent act200l act220l adaptec all alsa_usb animax asusdh atilibusb atiusb audio audio_alsa avermedia avermedia98 avermedia_vdomate bestbuy bestbuy2 breakoutbox bte bw6130 caraca chronos cmdir cph06x creative creative_infracd devinput digimatrix dsp dvico ea65 exaudio flyvideo gvbctv5pci hauppauge hauppauge_dvb hercules_smarttv_stereo igorplugusb imon imon_knob imon_lcd imon_pad imon_pad2keys imon_rsc inputlirc irdeo irdeo_remote irman irreal it87 knc_one kworld leadtek_0007 leadtek_0010 leadtek_pvr2000 livedrive_midi livedrive_seq logitech macmini mceusb mceusb2 mediafocusI mouseremote mouseremote_ps2 mp3anywhere nslu2 packard_bell parallel pcmak pcmak_usb pctv pixelview_bt878 pixelview_pak pixelview_pro provideo realmagic remote_wonder_plus remotemaster sa1100 sasem sb0540 serial serial_igor_cesko silitek sir slinke streamzap tekram tekram_bt829 tira ttusbir tuxbox tvbox udp uirt2 uirt2_raw usb_uirt_raw usbirboy usbx userspace xboxusb" USERLAND="GNU" VIDEO_CARDS="nvidia v4l vesa vmware" Unset: CPPFLAGS, CTARGET, FFLAGS, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS
I'm facing the same problem. I've found this in the r-devel mailing list: https://stat.ethz.ch/pipermail/r-devel/2008-February/048267.html I haven't tried anything yet, but it seems related.
And for gsl, there is bug #246389
The my previous R post don't fix anything, at least here. @ Robert Wynne, since you have >gcc-4.2* installed, could you please install mkl with fortran95 USE flag and try this again?
So?
Jumping in for Robert, I switched to gcc-4.3.2 and re-emerged mkl with fortran95. Compiling R and gsl still fail, and with identical errors. I hope this is the appropriate answer to your inquiry. Sorry for the delay.
(In reply to comment #7) > Jumping in for Robert, I switched to gcc-4.3.2 and re-emerged mkl with > fortran95. > Compiling R and gsl still fail, and with identical errors. > > I hope this is the appropriate answer to your inquiry. > Sorry for the delay. > Using: dev-lang/R-2.8.1 sci-libs/mkl-10.0.5.025 I was able to fix the pthread_atfork problem by reversing "-liomp5 -lpthread" in the following three files: /opt/intel/mkl/10.0.5.025/lib/32/lapack-mkl-gfortran-threads.pc /opt/intel/mkl/10.0.5.025/lib/32/cblas-mkl-gfortran-threads.pc /opt/intel/mkl/10.0.5.025/lib/32/blas-mkl-gfortran-threads.pc So, to be clear, wherever I found "-liomp5 -lpthread", I switched the positions to "-lpthread -liomp5": /opt/intel/mkl/10.0.5.025/lib/32/blas-mkl-gfortran-threads.pc: Libs: -Wl,--no-as-needed -L${libdir} -lmkl_gf -lmkl_gnu_thread -lmkl_core -lpthread -liomp5 /opt/intel/mkl/10.0.5.025/lib/32/cblas-mkl-gfortran-threads.pc: Libs: -Wl,--no-as-needed -L${libdir} -lmkl_gf -lmkl_gnu_thread -lmkl_core -lpthread -liomp5 /opt/intel/mkl/10.0.5.025/lib/32/lapack-mkl-gfortran-threads.pc: Libs: -Wl,--no-as-needed -L${libdir} -lmkl_gf -lmkl_gnu_thread -lmkl_core -lmkl_lapack -lpthread -liomp I'll try to pop some patches up in a minute, here. Chris
Created attachment 186262 [details, diff] Patch to blas-mkl-gfortran-threads.pc, reversing linking order for -liomp5 and -lpthreads. Patch to blas-mkl-gfortran-threads.pc, reversing link order for -liomp5 and -lpthreads ("-liomp5 -lpthreads" becomes "-lpthreads -liomp5"). This cleans up some undefined reference issues, such as pthread_atfork.
Created attachment 186263 [details, diff] Patch to cblas-mkl-gfortran-threads.pc, reversing link order for -liomp5 and -lpthreads. Patch to cblas-mkl-gfortran-threads.pc, reversing link order for -liomp5 and -lpthreads ("-liomp5 -lpthreads" becomes "-lpthreads -liomp5"). This cleans up some undefined reference issues, such as pthread_atfork.
Created attachment 186264 [details, diff] Patch to lapack-mkl-gfortran-threads.pc, reversing link order for -liomp5 and -lpthreads. Patch to lapack-mkl-gfortran-threads.pc, reversing link order for -liomp5 and -lpthreads ("-liomp5 -lpthreads" becomes "-lpthreads -liomp5"). This cleans up some undefined reference issues, such as pthread_atfork.
I can confirm that the patches allow to build R-2.8.1. Thanks! The gsl build still fails, and with the same error, apart from the obvious reordering of -liopm5 and -lpthreads, so no change on that one.
An update WRT gsl: The current stable 1.12 dies on an unsuccessful package check already: checking cblas.h usability... no checking cblas.h presence... no checking for cblas.h... no configure: error: *** Header file cblas.h not found. *** If you installed cblas header in a non standard place, *** specify its install prefix using the following option *** --with-cblas-cflags="-I<include_dir>" !!! Please attach the following file when seeking support: !!! /var/tmp/portage/sci-libs/gsl-1.12/work/gsl-1.12/config.log * * ERROR: sci-libs/gsl-1.12 failed. * Call stack: * ebuild.sh, line 49: Called src_configure * environment, line 2939: Called econf '--with-cblas' * ebuild.sh, line 527: Called die * The specific snippet of code: * die "econf failed" * The die message: * econf failed This is a bit odd, as the link to the header file is in /usr/include: # ls -l /usr/include/cblas.h lrwxrwxrwx 1 root root 45 Mar 10 18:56 /usr/include/cblas.h -> /opt/intel/mkl/10.0.5.025/include/mkl_cblas.h
Any chance of getting these patches into portage? We're four months down the road, and i still have to patch the .pc thread files if I rebuild. Thanks. (In reply to comment #13) > An update WRT gsl: The current stable 1.12 dies on an unsuccessful package > check > already: > > checking cblas.h usability... no > checking cblas.h presence... no > checking for cblas.h... no > configure: error: > *** Header file cblas.h not found. > *** If you installed cblas header in a non standard place, > *** specify its install prefix using the following option > *** --with-cblas-cflags="-I<include_dir>" > > !!! Please attach the following file when seeking support: > !!! /var/tmp/portage/sci-libs/gsl-1.12/work/gsl-1.12/config.log > * > * ERROR: sci-libs/gsl-1.12 failed. > * Call stack: > * ebuild.sh, line 49: Called src_configure > * environment, line 2939: Called econf '--with-cblas' > * ebuild.sh, line 527: Called die > * The specific snippet of code: > * die "econf failed" > * The die message: > * econf failed > > This is a bit odd, as the link to the header file is in /usr/include: > # ls -l /usr/include/cblas.h > lrwxrwxrwx 1 root root 45 Mar 10 18:56 /usr/include/cblas.h -> > /opt/intel/mkl/10.0.5.025/include/mkl_cblas.h >
Andre, In the config.log file, I think you'll find that it isn't actually cblas.h that's missing. It's /usr/include/mkl_types.h. If you create that link, it should get past that problem at least. Try: ln -s /opt/intel/mkl/10.0.5.025/include/mkl_types.h /usr/include/mkl_types.h That one had me stumped for a good while. Chris (In reply to comment #13) > An update WRT gsl: The current stable 1.12 dies on an unsuccessful package > check > already: > > checking cblas.h usability... no > checking cblas.h presence... no > checking for cblas.h... no > configure: error: > *** Header file cblas.h not found. > *** If you installed cblas header in a non standard place, > *** specify its install prefix using the following option > *** --with-cblas-cflags="-I<include_dir>" > > !!! Please attach the following file when seeking support: > !!! /var/tmp/portage/sci-libs/gsl-1.12/work/gsl-1.12/config.log > * > * ERROR: sci-libs/gsl-1.12 failed. > * Call stack: > * ebuild.sh, line 49: Called src_configure > * environment, line 2939: Called econf '--with-cblas' > * ebuild.sh, line 527: Called die > * The specific snippet of code: > * die "econf failed" > * The die message: > * econf failed > > This is a bit odd, as the link to the header file is in /usr/include: > # ls -l /usr/include/cblas.h > lrwxrwxrwx 1 root root 45 Mar 10 18:56 /usr/include/cblas.h -> > /opt/intel/mkl/10.0.5.025/include/mkl_cblas.h >
Andre, Think I've solved this one. I'll post the patch file that I changed, but in a nutshell, you need to create the mkl_types.h link mentioned in comment #15 and make a one line change in the patch file: /usr/portage/sci-libs/gsl/files/gsl-1.12-cblas.patch Basically, I replaced line 7 of that file which reads: + use_cblas_libs="-lcblas -lblas" with: + use_cblas_libs="-L/opt/intel/mkl/10.0.5.025/lib/32 -liomp5 -lpthread -lcblas -lblas" I'm sure there is a better way to patch the thing, but after trying many, many possible things, this is the shortest route to success I've found. All the best, Chris This (In reply to comment #12) > I can confirm that the patches allow to build R-2.8.1. Thanks! > > The gsl build still fails, and with the same error, apart > from the obvious reordering of -liopm5 and -lpthreads, > so no change on that one. >
Created attachment 201296 [details, diff] Patch to allow gsl compilation with mkl-10.0.5.025 See comments #15 and higher.
Hi Chris, thank you for working on this. Introducing the link to mkl_types.h, gsl compiles fine already. I do not actually require the patch. Apologies for being ignorant, but what is it supposed to fix apart from the compilation? Thanks, Andre
Andre, You're very welcome. Glad to do it. To compile on my machine, I needed to add: -L/opt/intel/mkl/10.0.5.025/lib/32 -liomp5 -lpthread to the "use_cblas_libs=" line in file gsl-1.12/acx_cblas.m4 (line 7 of the patch) in order to compile. Could it be that you are using mkl non-threaded? libiomp5 and libpthread, as I understand it, or only needed for 'mkl-gfortran-threads,' and not for the 'mkl-gfortran' implementation. Actually, to be completely accurate, I'm using mkl-10.1.1.019 with the ebuild from bug 260810, but as far as I can tell, there's no substantial difference between the two. Cheers, Chris (In reply to comment #18) > Hi Chris, > > thank you for working on this. Introducing the link to mkl_types.h, gsl > compiles fine already. I do not actually require the patch. > Apologies for being ignorant, but what is it supposed to fix apart from the > compilation? > > Thanks, Andre >
Hi, please use sci-libs/mkl-rt[eselect-ldso] in tree.