# Error when install MCIP

**URL:** <https://forum.cmascenter.org/t/error-when-install-mcip/2788>\
**Category:** MCIP\
**Created:** [November 8, 2021, 12:14pm UTC](https://forum.cmascenter.org/t/error-when-install-mcip/2788 "2021-11-08T12:14:15Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Nami](https://avatars.discourse-cdn.com/v4/letter/n/f08c70/32.png) [@Nami](https://forum.cmascenter.org/u/Nami)\
**Post date:** [November 8, 2021, 12:14pm UTC](https://forum.cmascenter.org/t/error-when-install-mcip/2788/1 "2021-11-08T12:14:15Z")

</div>

Hello,  
I’m trying to install CMAQv5.3.3-MCIP with intel compiler. But I got errors during make. What can I do to solve it?

The error messages:  
make[1]: Entering directory `/home/leenm/CMAQ/CMAQv5.3.3/PREP/mcip/src' make[1]: `const\_mod.o’ is up to date.  
make[1]: `const_pbl_mod.o' is up to date. make[1]: `coord\_mod.o’ is up to date.  
make[1]: `ctmvars_mod.o' is up to date. make[1]: `date\_time\_mod.o’ is up to date.  
make[1]: `date_pack_mod.o' is up to date. make[1]: `files\_mod.o’ is up to date.  
make[1]: `lucats_mod.o' is up to date. make[1]: `mcipparm\_mod.o’ is up to date.  
make[1]: `metinfo_mod.o' is up to date. make[1]: `metvars\_mod.o’ is up to date.  
make[1]: `netcdf_io_mod.o' is up to date. make[1]: `vgrd\_mod.o’ is up to date.  
make[1]: `xvars_mod.o' is up to date. make[1]: Leaving directory `/home/leenm/CMAQ/CMAQv5.3.3/PREP/mcip/src’  
make[1]: Entering directory `/home/leenm/CMAQ/CMAQv5.3.3/PREP/mcip/src' ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c ctmproc.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c dealloc_ctm.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c dealloc_met.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c dealloc_x.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c detangle_soil_px.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c e_aerk.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c dynflds.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c getluse.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c getmet.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c getpblht.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c getpsih.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c getsdt.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c graceful_stop.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c gridout.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c gridproc.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c init_ctm.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c init_io.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c init_met.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c init_x.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c julian.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c layht.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c ll2xy_lam.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c ll2xy_lam_sec.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c ll2xy_lam_tan.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c ll2xy_merc.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c ll2xy_ps.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c locate.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c mapfac_lam.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c mapfac_merc.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c mapfac_ps.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c metgrid2ctm.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c metvars2ctm.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c outclog.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c outcm3io.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c outglog.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c outgm3io.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c outncf.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c outncfbdy.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c outncfglobal.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c pblsup.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c ptemp.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c pvs.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c qsat.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c rdwrfem.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c readnml.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c resistcalc.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c setgriddefs.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c setup.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c setup_wrfem.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c sfclayer.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c statflds.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c vertarys.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c vertnhy_wrf.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c vstamp.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c vtemp.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c wind.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c wrfemopts.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c wrgdesc.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c xy2ll_lam.f90 ifort -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort -c xy2ll_merc.f90 ifort -o mcip.exe -O3 -traceback -FR -I/usr/local/netcdf/4.1.3_intel18/include -I/usr/local/ioapi/3.2/Linux2_x86_64ifort mcip.o alloc_ctm.o alloc_met.o alloc_x.o bcldprc_ak.o blddesc.o chkwpshdr.o chkwrfhdr.o close_files.o comheader.o comheader_lufrac.o comheader_mos.o comheader_soi.o ctmout.o ctmproc.o dealloc_ctm.o dealloc_met.o dealloc_x.o detangle_soil_px.o e_aerk.o dynflds.o getluse.o getmet.o getpblht.o getpsih.o getsdt.o graceful_stop.o gridout.o gridproc.o init_ctm.o init_io.o init_met.o init_x.o julian.o layht.o ll2xy_lam.o ll2xy_lam_sec.o ll2xy_lam_tan.o ll2xy_merc.o ll2xy_ps.o locate.o mapfac_lam.o mapfac_merc.o mapfac_ps.o metgrid2ctm.o metvars2ctm.o outclog.o outcm3io.o outglog.o outgm3io.o outncf.o outncfbdy.o outncfglobal.o pblsup.o ptemp.o pvs.o qsat.o rdwrfem.o readnml.o resistcalc.o setgriddefs.o setup.o setup_wrfem.o sfclayer.o statflds.o vertarys.o vertnhy_wrf.o vstamp.o vtemp.o wind.o wrfemopts.o wrgdesc.o xy2ll_lam.o xy2ll_merc.o const_mod.o const_pbl_mod.o coord_mod.o ctmvars_mod.o date_time_mod.o date_pack_mod.o files_mod.o lucats_mod.o mcipparm_mod.o metinfo_mod.o metvars_mod.o netcdf_io_mod.o vgrd_mod.o xvars_mod.o -L/usr/local/ioapi/3.2/Linux2_x86_64ifort -lioapi -L/usr/local/netcdf/4.1.3_intel18/lib -lnetcdff -lnetcdf /usr/local/ioapi/3.2/Linux2_x86_64ifort/libioapi.a(m3msg2.o): In function `m3msg2\_’:  
m3msg2.F:(.text+0x20): undefined reference to `__kmpc_global_thread_num' m3msg2.F:(.text+0x37): undefined reference to `\__kmpc\_critical’  
m3msg2.F:(.text+0x9e): undefined reference to `__kmpc_end_critical' /usr/local/ioapi/3.2/Linux2_x86_64ifort/libioapi.a(m3msg2.o): In function `m3mesg_’:  
m3msg2.F:(.text+0xed): undefined reference to `__kmpc_global_thread_num' m3msg2.F:(.text+0x104): undefined reference to `\__kmpc\_critical’  
m3msg2.F:(.text+0x19d): undefined reference to `__kmpc_end_critical' /usr/local/ioapi/3.2/Linux2_x86_64ifort/libioapi.a(m3msg2.o): In function `m3prompt_’:  
m3msg2.F:(.text+0x202): undefined reference to `__kmpc_global_thread_num' m3msg2.F:(.text+0x219): undefined reference to `\__kmpc\_critical’  
m3msg2.F:(.text+0x31b): undefined reference to `__kmpc_end_critical' /usr/local/ioapi/3.2/Linux2_x86_64ifort/libioapi.a(m3msg2.o): In function `m3parag_’:  
m3msg2.F:(.text+0x460): undefined reference to `__kmpc_global_thread_num' m3msg2.F:(.text+0x47c): undefined reference to `\__kmpc\_critical’  
m3msg2.F:(.text+0x552): undefined reference to `__kmpc_end_critical' /usr/local/ioapi/3.2/Linux2_x86_64ifort/libioapi.a(m3msg2.o): In function `m3flush_’:  
m3msg2.F:(.text+0x5a7): undefined reference to `__kmpc_global_thread_num' m3msg2.F:(.text+0x5be): undefined reference to `\__kmpc\_critical’  
m3msg2.F:(.text+0x5e3): undefined reference to `__kmpc_end_critical' /usr/local/ioapi/3.2/Linux2_x86_64ifort/libioapi.a(write3.o): In function `write3_’:  
write3.F:(.text+0x7f): undefined reference to `__kmpc_global_thread_num' write3.F:(.text+0x98): undefined reference to `\__kmpc\_critical’  
write3.F:(.text+0xbc): undefined reference to `__kmpc_end_critical' /usr/local/ioapi/3.2/Linux2_x86_64ifort/libioapi.a(desc3.o): In function `desc3_’:  
desc3.F90:(.text+0x24): undefined reference to `__kmpc_global_thread_num' desc3.F90:(.text+0x36): undefined reference to `\_\_kmpc\_single’  
desc3.F90:(.text+0x2b7): undefined reference to `__kmpc_critical' desc3.F90:(.text+0x1168): undefined reference to `\_\_kmpc\_end\_critical’  
desc3.F90:(.text+0x1250): undefined reference to `__kmpc_end_single' desc3.F90:(.text+0x125f): undefined reference to `\_\_kmpc\_barrier’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(init3.o): In function `init3_': init3.F90:(.text+0x77): undefined reference to `\_\_kmpc\_global\_thread\_num’  
init3.F90:(.text+0x92): undefined reference to `__kmpc_critical' init3.F90:(.text+0xea): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(open3.o): In function `open3_': open3.F90:(.text+0x32): undefined reference to `\_\_kmpc\_global\_thread\_num’  
open3.F90:(.text+0x4c): undefined reference to `__kmpc_critical' open3.F90:(.text+0x75): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(opnfil3.o): In function `opnfil3_': opnfil3.F90:(.text+0x84): undefined reference to `\_\_kmpc\_global\_thread\_num’  
opnfil3.F90:(.text+0x9a): undefined reference to `__kmpc_critical' opnfil3.F90:(.text+0x940): undefined reference to `\_\_kmpc\_end\_critical’  
opnfil3.F90:(.text+0x95f): undefined reference to `__kmpc_critical' opnfil3.F90:(.text+0x989): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(opnlog3.o): In function `opnlog3_': opnlog3.F90:(.text+0x51): undefined reference to `\_\_kmpc\_global\_thread\_num’  
opnlog3.F90:(.text+0x67): undefined reference to `__kmpc_critical' opnlog3.F90:(.text+0xa8): undefined reference to `\_\_kmpc\_critical’  
opnlog3.F90:(.text+0xe8): undefined reference to `__kmpc_end_critical' opnlog3.F90:(.text+0x1216): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(shut3.o): In function `shut3_': shut3.F90:(.text+0x38): undefined reference to `\_\_kmpc\_global\_thread\_num’  
shut3.F90:(.text+0x4e): undefined reference to `__kmpc_critical' shut3.F90:(.text+0x46b): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(syncfid.o): In function `syncfid_': syncfid.F90:(.text+0x19): undefined reference to `\_\_kmpc\_global\_thread\_num’  
syncfid.F90:(.text+0x5a): undefined reference to `__kmpc_critical' syncfid.F90:(.text+0x83): undefined reference to `\_\_kmpc\_end\_critical’  
syncfid.F90:(.text+0x1f4): undefined reference to `__kmpc_critical' syncfid.F90:(.text+0x2ad): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(wrgrnest.o): In function `wrgrnest_': wrgrnest.F90:(.text+0x2c): undefined reference to `\_\_kmpc\_global\_thread\_num’  
wrgrnest.F90:(.text+0x42): undefined reference to `__kmpc_critical' wrgrnest.F90:(.text+0x56): undefined reference to `\_\_kmpc\_critical’  
wrgrnest.F90:(.text+0xbd7): undefined reference to `__kmpc_end_critical' wrgrnest.F90:(.text+0xbeb): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(wrprofil.o): In function `wrprofil_': wrprofil.F90:(.text+0x3a): undefined reference to `\_\_kmpc\_global\_thread\_num’  
wrprofil.F90:(.text+0x50): undefined reference to `__kmpc_critical' wrprofil.F90:(.text+0x64): undefined reference to `\_\_kmpc\_critical’  
wrprofil.F90:(.text+0x834): undefined reference to `__kmpc_end_critical' wrprofil.F90:(.text+0x848): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(wrvars.o): In function `wrvars_': wrvars.F90:(.text+0x2e): undefined reference to `\_\_kmpc\_global\_thread\_num’  
wrvars.F90:(.text+0x90): undefined reference to `__kmpc_critical' wrvars.F90:(.text+0x128): undefined reference to `\_\_kmpc\_end\_critical’  
wrvars.F90:(.text+0x20c): undefined reference to `__kmpc_critical' wrvars.F90:(.text+0x250): undefined reference to `\_\_kmpc\_end\_critical’  
wrvars.F90:(.text+0x480): undefined reference to `__kmpc_critical' wrvars.F90:(.text+0x4d1): undefined reference to `\_\_kmpc\_end\_critical’  
wrvars.F90:(.text+0x4ee): undefined reference to `__kmpc_critical' wrvars.F90:(.text+0x7e2): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(crtbuf3.o): In function `crtbuf3_': crtbuf3.f:(.text+0x91): undefined reference to `\_\_kmpc\_global\_thread\_num’  
crtbuf3.f:(.text+0xa8): undefined reference to `__kmpc_critical' crtbuf3.f:(.text+0x19e): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(name2fid.o): In function `name2fid_': name2fid.f:(.text+0x21): undefined reference to `\_\_kmpc\_global\_thread\_num’  
name2fid.f:(.text+0x38): undefined reference to `__kmpc_critical' name2fid.f:(.text+0x59): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(chkfil3.o): In function `chkfil3_': chkfil3.f90:(.text+0x1d): undefined reference to `\_\_kmpc\_global\_thread\_num’  
chkfil3.f90:(.text+0x36): undefined reference to `__kmpc_critical' chkfil3.f90:(.text+0x2537): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(wrdict3.o): In function `wrdict3_': wrdict3.f90:(.text+0x41): undefined reference to `\_\_kmpc\_global\_thread\_num’  
wrdict3.f90:(.text+0x57): undefined reference to `__kmpc_critical' wrdict3.f90:(.text+0x6b): undefined reference to `\_\_kmpc\_critical’  
wrdict3.f90:(.text+0x987): undefined reference to `__kmpc_end_critical' wrdict3.f90:(.text+0x99b): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(wriddata.o): In function `wriddata_': wriddata.f90:(.text+0x3a): undefined reference to `\_\_kmpc\_global\_thread\_num’  
wriddata.f90:(.text+0x50): undefined reference to `__kmpc_critical' wriddata.f90:(.text+0x64): undefined reference to `\_\_kmpc\_critical’  
wriddata.f90:(.text+0x309): undefined reference to `__kmpc_end_critical' wriddata.f90:(.text+0x31d): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(wrsmatrx.o): In function `wrsmatrx_': wrsmatrx.f90:(.text+0x55): undefined reference to `\_\_kmpc\_global\_thread\_num’  
wrsmatrx.f90:(.text+0x6b): undefined reference to `__kmpc_critical' wrsmatrx.f90:(.text+0x7f): undefined reference to `\_\_kmpc\_critical’  
wrsmatrx.f90:(.text+0x320): undefined reference to `__kmpc_end_critical' wrsmatrx.f90:(.text+0x334): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(close3.o): In function `close3_': close3.F90:(.text+0x8e): undefined reference to `\_\_kmpc\_global\_thread\_num’  
close3.F90:(.text+0xa5): undefined reference to `__kmpc_critical' close3.F90:(.text+0x1f2): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(crtfil3.o): In function `crtfil3_': crtfil3.F90:(.text+0x4a): undefined reference to `\_\_kmpc\_global\_thread\_num’  
crtfil3.F90:(.text+0x65): undefined reference to `__kmpc_critical' crtfil3.F90:(.text+0x84): undefined reference to `\_\_kmpc\_end\_critical’  
crtfil3.F90:(.text+0xab): undefined reference to `__kmpc_critical' crtfil3.F90:(.text+0x2019): undefined reference to `\_\_kmpc\_end\_critical’  
crtfil3.F90:(.text+0x2036): undefined reference to `__kmpc_critical' crtfil3.F90:(.text+0x2060): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(rdvars.o): In function `rdvars_': rdvars.F90:(.text+0xb5): undefined reference to `\_\_kmpc\_global\_thread\_num’  
rdvars.F90:(.text+0x122): undefined reference to `__kmpc_critical' rdvars.F90:(.text+0x1af): undefined reference to `\_\_kmpc\_end\_critical’  
rdvars.F90:(.text+0x1f1): undefined reference to `__kmpc_end_critical' rdvars.F90:(.text+0x3bf): undefined reference to `\_\_kmpc\_critical’  
rdvars.F90:(.text+0x403): undefined reference to `__kmpc_end_critical' rdvars.F90:(.text+0x4cc): undefined reference to `\_\_kmpc\_end\_critical’  
rdvars.F90:(.text+0x7a3): undefined reference to `__kmpc_critical' rdvars.F90:(.text+0x839): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(wrtflag.o): In function `wrtflag_': wrtflag.F90:(.text+0x45): undefined reference to `\_\_kmpc\_global\_thread\_num’  
wrtflag.F90:(.text+0xac): undefined reference to `__kmpc_critical' wrtflag.F90:(.text+0xf2): undefined reference to `\_\_kmpc\_end\_critical’  
wrtflag.F90:(.text+0x578): undefined reference to `__kmpc_critical' wrtflag.F90:(.text+0x5ac): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(rdatt3.o): In function `rdattc_': rdatt3.F90:(.text+0x53): undefined reference to `\_\_kmpc\_global\_thread\_num’  
rdatt3.F90:(.text+0x34e): undefined reference to `__kmpc_critical' rdatt3.F90:(.text+0x49f): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(rdatt3.o): In function `rdatt3_': rdatt3.F90:(.text+0x520): undefined reference to `\__kmpc\_global\_thread\_num’  
rdatt3.F90:(.text+0xb80): undefined reference to `__kmpc_end_critical' /usr/local/ioapi/3.2/Linux2_x86_64ifort/libioapi.a(getefile.o): In function `getefile_’:  
getefile.F:(.text+0x37): undefined reference to `__kmpc_global_thread_num' getefile.F:(.text+0x50): undefined reference to `\__kmpc\_critical’  
getefile.F:(.text+0x74): undefined reference to `__kmpc_end_critical' /usr/local/ioapi/3.2/Linux2_x86_64ifort/libioapi.a(wratt3.o): In function `wrattc_’:  
wratt3.F90:(.text+0x46): undefined reference to `__kmpc_global_thread_num' wratt3.F90:(.text+0x3bb): undefined reference to `\_\_kmpc\_critical’  
wratt3.F90:(.text+0x8ee): undefined reference to `__kmpc_end_critical' wratt3.F90:(.text+0x91a): undefined reference to `\_\_kmpc\_end\_critical’  
/usr/local/ioapi/3.2/Linux2\_x86\_64ifort/libioapi.a(wratt3.o): In function `wratt3_': wratt3.F90:(.text+0xab4): undefined reference to `\_\_kmpc\_global\_thread\_num’  
make[1]: \*\*\* [mcip.exe] Error 1  
make[1]: Leaving directory `/home/leenm/CMAQ/CMAQv5.3.3/PREP/mcip/src’  
make: \*\*\* [all] Error 2

My Makefile is :  
FC = ifort  
NETCDF = /usr/local/netcdf/4.1.3\_intel18  
IOAPI\_ROOT = /usr/local/ioapi/3.2  
FFLAGS = -g -O0 -check all -C -traceback -FR -I$(NETCDF)/include   
-I$(IOAPI\_ROOT)/Linux2\_x86\_64ifort  
FFLAGS = -O3 -traceback -FR -I$(NETCDF)/include -I$(IOAPI\_ROOT)/Linux2\_x86\_64ifort  
LIBS = -L$(IOAPI\_ROOT)/Linux2\_x86\_64ifort -lioapi   
-L$(NETCDF)/lib -lnetcdff -lnetcdf

DEFS =

My config\_cmaq.csh is:  
case intel:

```
   #> I/O API and netCDF root
   setenv NCDIR /usr/local/netcdf/4.6.1_intel18
   setenv NFDIR /usr/local/netcdf/4.6.1_intel18
   setenv NETCDF /usr/local/netcdf/4.6.1_intel18 # Note only for WRF-CMAQ as it requires combining the netcdf C and netcdf F into a single directory. CMAQ users - don't change this setting
   setenv IOAPI /usr/local/ioapi/3.2
   setenv WRF_ARCH 15 # [1-75] Optional, ONLY for WRF-CMAQ 

    #> I/O API, netCDF, and MPI library locations
    setenv IOAPI_INCL_DIR ${IOAPI}/ioapi/fixed_src #> I/O API include header files
    setenv IOAPI_LIB_DIR ${IOAPI}/Linux2_x86_64ifort #> I/O API libraries

    if ( $NETCDF == "/usr/local/netcdf/4.6.1_intel18" ) then
       setenv NETCDF_LIB_DIR ${NCDIR}/lib #> netCDF C directory path
       setenv NETCDF_INCL_DIR ${NCDIR}/include #> netCDF C directory path
       setenv NETCDFF_LIB_DIR ${NFDIR}/lib #> netCDF Fortran directory path
       setenv NETCDFF_INCL_DIR ${NFDIR}/include #> netCDF Fortran directory path
    endif

    setenv MPI_INCL_DIR /usr/local/mpi/intel18/mpich-3.2/include #> MPI Include directory path
    setenv MPI_LIB_DIR /usr/local/mpi/intel18/mpich-3.2/lib #> MPI Lib directory path

    #> Compiler Aliases and Flags
    #> set the compiler flag -qopt-report=5 to get a model optimization report in the build directory with the optrpt extension
    setenv myFC mpiifort
    setenv myCC icc
    setenv myFSTD "-O3 -fno-alias -mp1 -fp-model source -ftz -simd -align all -xHost -vec-guard-write -unroll-aggressive"
    setenv myDBG "-O0 -g -check bounds -check uninit -fpe0 -fno-alias -ftrapuv -traceback"
    setenv myLINK_FLAG "-openmp" # -qopenmp # openMP may be required if I/O API was built using this link flag.
    setenv myFFLAGS "-fixed -132"
    setenv myFRFLAGS "-free"
    setenv myCFLAGS "-O2"
    setenv extra_lib "lcurl"
    setenv mpi_lib ""

    breaksw
```

---

<div class="post-metadata">

**Author:** ![cjcoats](https://avatars.discourse-cdn.com/v4/letter/c/ac8455/32.png) [@cjcoats](https://forum.cmascenter.org/u/cjcoats)\
**Post date:** [November 8, 2021, 2:01pm UTC](https://forum.cmascenter.org/t/error-when-install-mcip/2788/2 "2021-11-08T14:01:34Z")

</div>

See the I/O API Trouble-Shooting Page, [https://cjcoats.github.io/ioapi/ERRORS.html#syms](https://cjcoats.github.io/ioapi/ERRORS.html#syms).

For _ifort_ version 16 or later, you need to add `-qopenmp` to the link-flags for _MCIP_; for previous versions, use `-openmp`
