- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi.
With my ifort 11.1, I tried to compile 'SMOKE'. But there are some errors with libpthread.a
ENV : Fedora 12, quad core, 8G,
the error message is below.
/usr/lib/gcc/x86_64-redhat-linux/4.4.4/../../../../lib64/libpthread.a(libpthread.o): In function `sem_open':
(.text+0x765d): warning: the use of `mktemp' is dangerous, better use `mkstemp'
/home/choingjoo/Model/SMOKE/subsys/ioapi/Linux2_x86ifc/libioapi.a(ll2utm.o): In function `ll2utm_':
/opt/ioapi/ioapi/ll2utm.f:(.text+0x213): undefined reference to `__kmpc_global_thread_num'
/opt/ioapi/ioapi/ll2utm.f:(.text+0x22c): undefined reference to `__kmpc_critical'
/opt/ioapi/ioapi/ll2utm.f:(.text+0x280): undefined reference to `__kmpc_end_critical'
`__kmpc_end_critical'make: *** [normbeis3] Error 1
And I install the glibc-static for libthread.a using 'yum'. and there are some warning message like this.
Warning: RPMDB altered outside of yum.
** Found 18 pre-existing rpmdb problem(s), 'yum check' output follows:
intel-cproc073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprocsdk073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cprof073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cproflib073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprofsdk073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cproidb073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cproidbcdt073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cproidbsdk073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cproipp073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cproipplib073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cproipplibdev073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprolib073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprolibdev073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cpromkl073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cpromklib073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cpromklibdev073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprotbblib073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cprotbblibdev073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
** Found 18 pre-existing rpmdb problem(s), 'yum check' output follows:
intel-cproc073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprocsdk073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cprof073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cproflib073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprofsdk073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cproidb073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cproidbcdt073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cproidbsdk073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cproipp073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cproipplib073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cproipplibdev073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprolib073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprolibdev073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cpromkl073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cpromklib073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cpromklibdev073-11.1-1.x86_64 has missing requires of lsb >= ('0', '3.0', None)
intel-cprotbblib073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
intel-cprotbblibdev073-11.1-1.noarch has missing requires of lsb >= ('0', '3.0', None)
Did it occur misconfigure the 'mpich2'? please help this problem.
Yongjoo Choi
Link Copied
5 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting choingjoo
With my ifort 11.1, I tried to compile 'SMOKE'. But there are some errors with libpthread.a
ENV : Fedora 12, quad core, 8G,
/opt/ioapi/ioapi/ll2utm.f:(.text+0x213): undefined reference to `__kmpc_global_thread_num'
/opt/ioapi/ioapi/ll2utm.f:(.text+0x22c): undefined reference to `__kmpc_critical'
/opt/ioapi/ioapi/ll2utm.f:(.text+0x280): undefined reference to `__kmpc_end_critical'
`__kmpc_end_critical'make: *** [normbeis3] Error 1
As you mentioned MPICH2, going all the way back, you must configure, with all ifort environment variables set, and build MPICH2 so that mpif90 and mpif77 and Fortran libraries correspond with your ifort.
Then, when you link, (again with the ifort environment variables set), if you require OpenMP, setting the link options as you would do for non-MPI build, but using mpif90 or mpif77 in place of ifort, you should succeed. If my guesses haven't covered what you are doing, please be more specific.
If you want to do a yum install, you must have root privilege for the rpm update, e.g. sudo yum install. If you have totally messed up your rpmdb, there must be ways to recover, but I would suggest a Fedora help forum for that.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for you advising. It is little difficult to figure it out. So, I tried again as you mentioned
1. libiomp5.so linked in my enviroment.
2. I reinstalled the 'glibc-static-2.11.2-3', and there are no error message,
3. I reinstalled mpich2-1.3.1 with following FLAGS
4. I also reinstalled I/OAPI with following FLAGS
5. Finally, when I install the SMOKE of CMAQ with following FLAGS which is recommanded flags in manual for ifort, but the error message is also same.
And I searched google for fixing this error, I saw some article that FLAGS change from "-static" to "-static-intel". However it didn't work.
please give some advise for me.
Yongjoo Choi
1. libiomp5.so linked in my enviroment.
[bash]LD_LIBRARY_PATH=/opt/intel/Compiler/11.1/073/lib/intel64:/opt/intelc/lib/intel64:/opt/intel/Compiler/11.1/073/lib/intel64:/opt/intelc/lib/intel64:/opt/intel/Compiler/11.1/073/lib/intel64:/opt/intelc/lib/intel64:/opt/intel/Compiler/11.1/073/lib/intel64:/opt/intelc/lib/intel64:/opt/intel/Compiler/11.1/073/bin/intel64:/opt/intel/Compiler/11.1/073/lib/intel64
[/bash]
2. I reinstalled the 'glibc-static-2.11.2-3', and there are no error message,
3. I reinstalled mpich2-1.3.1 with following FLAGS
[bash]setenv CC icc
setenv CXX icpc
setenv CFLAGS "-O3 -xT -ip -no-prec-div -static-intel"
setenv CXXFLAGS "-O3 -xT -ip -no-prec-div -static-intel"
setenv F77 ifort
setenv FC ifort
setenv F90 ifort
setenv FFLAGS "-O3 -xT -ip -no-prec-div -static-intel"
setenv CPP "icc -E"
setenv CXXCPP "icpc -E"[/bash]
4. I also reinstalled I/OAPI with following FLAGS
[bash]AR = ar
CC = mpicc
FC = mpif90 -auto -cm -w90 -w95 -warn notruncated_source -static-intel
M4 = m4
LINK = $(CC)
MFLAGS = -traceback
OMPFLAGS = -openmp
OMPLIBS = -openmp
COPTFLAGS = -O3 ${MFLAGS}
FOPTFLAGS = -O3 -no-fp-port -unroll -stack_temps -safe_cray_ptr ${MFLAGS}
FPPFLAGS = -DF90=1
FSFLAGS = -save[/bash]
5. Finally, when I install the SMOKE of CMAQ with following FLAGS which is recommanded flags in manual for ifort, but the error message is also same.
[bash] setenv FC /usr/local/mpich2/intel/bin/mpif90And the error message.
setenv FFLAG "-O2 -save -zero -extend_source -nbs -W0"
setenv DBGFLAG "-g -CB -CS -CU -extend_source -save -zero nbs"
setenv LINK_FLAGS "-static-intel"
setenv M6_FFLAG "-O2 -save -zero -nbs -extend_source -W0 -mp1"
setenv F_UFMTENDIAN big[/bash]
[bash]/usr/lib/gcc/x86_64-redhat-linux/4.4.4/../../../../lib64/libpthread.a(libpthread.o): In function `sem_open':
(.text+0x765d): warning: the use of `mktemp' is dangerous, better use `mkstemp'
/home/choingjoo/Model/SMOKE/subsys/ioapi/Linux2_x86ifc/libioapi.a(ll2utm.o): In function `ll2utm_':
/opt/ioapi/ioapi/ll2utm.f:(.text+0x213): undefined reference to `__kmpc_global_thread_num'
/opt/ioapi/ioapi/ll2utm.f:(.text+0x22c): undefined reference to `__kmpc_critical'
/opt/ioapi/ioapi/ll2utm.f:(.text+0x280): undefined reference to `__kmpc_end_critical'
/home/choingjoo/Model/SMOKE/subsys/ioapi/Linux2_x86ifc/libioapi.a(desc3.o): In function `desc3_':
/opt/ioapi/ioapi/desc3.F:(.text+0x23a): undefined reference to `__kmpc_global_thread_num'
/opt/ioapi/ioapi/desc3.F:(.text+0x251): undefined reference to `__kmpc_critical'
/opt/ioapi/ioapi/desc3.F:(.text+0x1a33): undefined reference to `__kmpc_end_critical'
/home/choingjoo/Model/SMOKE/subsys/ioapi/Linux2_x86ifc/libioapi.a(getefile.o): In function `getefile_':
/opt/ioapi/ioapi/getefile.F:(.text+0x3a): undefined reference to `__kmpc_global_thread_num'
/opt/ioapi/ioapi/getefile.F:(.text+0x54): undefined reference to `__kmpc_critical'
/opt/ioapi/ioapi/getefile.F:(.text+0x73): undefined reference to `__kmpc_end_critical'
....[/bash]
And I searched google for fixing this error, I saw some article that FLAGS change from "-static" to "-static-intel". However it didn't work.
please give some advise for me.
Yongjoo Choi
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Apparently, you have built the I/OAPI with OpenMP references, so you would require -openmp also in the LINK_FLAGS for the application which links those libraries.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for advising. Above the env for installing IOAPI, It added -openmp flag to OMPFLAGS.
But I didn't understading about LINK_FLAGS.
Does it just add to Makefile?
Thank you
Yongjoo Choi
But I didn't understading about LINK_FLAGS.
Does it just add to Makefile?
Thank you
Yongjoo Choi
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You didn't give any indication that SMOKE observes OMPFLAGS. Of the settings you quoted, LINK_FLAGS looks like the place to add -openmp (unless you prefer to spell out as -liomp5 -lpthreads).
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page