Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] undefined reference to `__intel_sse2_strlen'
From: Thomas Evangelidis (tevang3_at_[hidden])
Date: 2012-10-10 09:23:32


My apologies, I haven't searched in the FAQs before posting, just in the
mailing list. Indeed I needed to specify the CXX compiler. These are the
steps I followed to compile it:

source /home/thomas/Programs/Intel_Compilers/bin/compilervars.sh intel64
./configure CC=icc CXX=icpc F77=ifort FC=ifort
make -j8
## since "make install" must be run with sudo, you must add the Intel
directories into the superuser environment variables
sudo bash
source /home/thomas/Programs/Intel_Compilers/bin/compilervars.sh intel64
make install

Thomas

On 10 October 2012 11:51, Matthias Jurenz <matthias.jurenz_at_[hidden]>wrote:

> Hello Thomas,
> this error typically occurs when different compiler suites used for
> compiling
> C/C++ mixed source code.
> Please add CXX=icpc to your configure command in order to use a single
> compiler
> suite (=Intel) for compiling Open MPI. Otherwise, CXX is set to the default
> compiler (=g++) which isn't suitable for linking objects generated by the
> Intel compiler.
> Regards,
> Matthias
>
> On Oct 9, 2012, at 5:25 PM, Thomas Evangelidis wrote:
> > Greetings,
>
> > I am trying to compile openmpi 1.6.2 on Fedora 17 64-bit using the intel
> compilers (icc and ifort version 13.0.0) but I am getting an error which I
> cannot trace back. These are the steps I followed:
>
> > ./configure CC=icc F77=ifort
> make
> ........
> ........
> util.o: In function `guess_strlen':
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:45:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:61:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> util.o:/home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> more undefined references to `__intel_sse2_strlen' follow
> util.o: In function `vt_vsnprintf':
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:255:
> undefined reference to `__intel_sse2_strcpy'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:257:
> undefined reference to `_intel_fast_memcpy'
> util.o: In function `guess_strlen':
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:61:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> util.o:/home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> more undefined references to `__intel_sse2_strlen' follow
> util.o: In function `vt_vsnprintf':
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:255:
> undefined reference to `__intel_sse2_strcpy'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:257:
> undefined reference to `_intel_fast_memcpy'
> util.o: In function `guess_strlen':
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:61:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> undefined reference to `__intel_sse2_strlen'
>
> util.o:/home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:46:
> more undefined references to `__intel_sse2_strlen' follow
> util.o: In function `vt_strdup':
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:278:
> undefined reference to `__intel_sse2_strcpy'
> util.o: In function `vt_strtrim':
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:286:
> undefined reference to `__intel_sse2_strlen'
>
> /home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool/../../../util/util.c:293:
> undefined reference to `_intel_fast_memcpy'
> collect2: ld returned 1 exit status
> make[7]: *** [opari] Error 1
> make[7]: Leaving directory
> `/home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari/tool'
> make[6]: *** [all-recursive] Error 1
> make[6]: Leaving directory
> `/home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools/opari'
> make[5]: *** [all-recursive] Error 1
> make[5]: Leaving directory
> `/home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt/tools'
> make[4]: *** [all-recursive] Error 1
> make[4]: Leaving directory
> `/home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt'
> make[3]: *** [all] Error 2
> make[3]: Leaving directory
> `/home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt/vt'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory
> `/home/thomas/Programs/openmpi-1.6.2/ompi/contrib/vt'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/thomas/Programs/openmpi-1.6.2/ompi'
> make: *** [all-recursive] Error 1
>
> > Can anyone please help me fix it?
>
> > Thanks in advance,
> Thomas
> >
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>

-- 
======================================================================
Thomas Evangelidis
PhD student
University of Athens
Faculty of Pharmacy
Department of Pharmaceutical Chemistry
Panepistimioupoli-Zografou
157 71 Athens
GREECE
email: tevang_at_[hidden]
          tevang3_at_[hidden]
website: https://sites.google.com/site/thomasevangelidishomepage/