Intel® C++ Compiler
Support and discussions for creating C++ code that runs on platforms based on Intel® processors.
7646 Discussions

libiomp5.so: undefined reference to `__moddi3'

EAnde4
Beginner
468 Views
Hi

When building an application on 32bit Linux I get the linker problem

/compiler -liomp5 -lpthread -lc -ldl
/remote/public/linux/opt/intel/composerxe-2011.2.137/compiler/lib/ia32/libiomp5.so: undefined reference to `__umoddi3'
/remote/public/linux/opt/intel/composerxe-2011.2.137/compiler/lib/ia32/libiomp5.so: undefined reference to `__moddi3'
scons: *** [bld/skive32/devel/default/intelc-12.0.2/bin/moseksi] Error 1
scons: building terminated because of errors.

I use version 12.0.2. Any suggestions for a fix?
0 Kudos
4 Replies
EAnde4
Beginner
468 Views
Let also say the application build without problems using Intel C 11.1.
TimP
Black Belt
468 Views
It seems that you don't have the 32-bit g++ development system installed where you are executing.
EAnde4
Beginner
468 Views
Ok. But my application is a pure C application. So I still need g++?
TimP
Black Belt
468 Views
Intel compilers invoke g++ to find the paths and libraries, even when not compiling C++. The g++ and other gcc components must be from the identical release (g++ -version, gcc -version, ....). I agree, in this case, the library which it seems was missing from the link belongs to gcc, but it does look like icc didn't find it. Adding -# to your icc options (verbose) may verify this.
Reply