<html><head></head><body bgcolor="#FFFFFF"><div><div>Hi, I'm writing a C++ code but I want to also use some of the Fortran code that has been previously tested. </div><div>And I'm new to cmake.</div><div><br></div><div>My CmakeList.txt looks like this:</div><div>
<br></div><div>PROJECT (IRR CXX Fortran)</div><div>ENABLE_LANGUAGE(Fortran)</div><div><br></div><div>SET(SRC_LIST demo.cpp global.cpp global_variables.cpp init_config.cpp input.cpp irr.cpp output.cpp ./src_tools/rng.cpp global.h global_variables.h init_config.h input.h irr.h ./src_tools/nr3.h output.h ./src_tools/rng.h ./src_tools/vector3.h ./src_tools/tool_output.h ./src_tools/tools.cpp ./src_tools/tools.h ./src_tools/timer.h ./src_tools/timer.cpp ./src_tools/difconnector.h)</div>
<div>SET(SRC_FORTRAN_LIST ./src_tools/difquat.f ./src_tools/fourn.f)</div><div><br></div><div>SET(CMAKE_CXX_FLAGS "-O3 -ip")</div><div>ADD_EXECUTABLE(irr.x ${SRC_LIST} ${SRC_FORTRAN_LIST})</div><div><br></div><div>
But the compiler gives me error information like these:</div><div><br></div><div><br></div><div>CMakeFiles/irr.x.dir/src_tools/difquat.o: In function `difquat_':</div><div>/home/spshu/9_new_KMC_code/12.irr/src_tools/difquat.f:(.text+0xc4): undefined reference to `for_write_seq_lis'</div>
<div>/home/spshu/9_new_KMC_code/12.irr/src_tools/difquat.f:(.text+0xef): undefined reference to `for_write_seq_lis_xmit'</div><div>/home/spshu/9_new_KMC_code/12.irr/src_tools/difquat.f:(.text+0x159): undefined reference to `for_open'</div>
<div>/home/spshu/9_new_KMC_code/12.irr/src_tools/difquat.f:(.text+0x1cc): undefined reference to `for_open'</div><div>/home/spshu/9_new_KMC_code/12.irr/src_tools/difquat.f:(.text+0x214): undefined reference to `for_read_seq_lis'</div>
<div>/home/spshu/9_new_KMC_code/12.irr/src_tools/difquat.f:(.text+0x24e): undefined reference to `for_close'</div><div>/home/spshu/9_new_KMC_code/12.irr/src_tools/difquat.f:(.text+0xb94): undefined reference to `for_write_seq_fmt'</div>
<div>/home/spshu/9_new_KMC_code/12.irr/src_tools/difquat.f:(.text+0xbb9): undefined reference to `for_write_seq_fmt_xmit'</div><div><br></div><div><br></div><div>It seems to me that I need some Fortran library, but I think Cmake should have include them since I enabled Fortran. I'm confused about it. </div>
<div><br></div><div>Could you please tell me why I get all these things?</div><div><br></div><div>How should I modify the CmakeList.txt to get things work?</div><div><br></div><div>Thanks a lot!</div><div><br></div>-- <br>
<div>Shipeng Shu</div><div><br></div><div>Research Assistant</div><div>Department of MatSE</div><div>University of Illinois at Urbana-Champaign</div><div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse">1304 W. Green St.</span></div>
<div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse">Urbana 61801, IL</span></div><div><span style="font-family:arial,sans-serif;font-size:13px;border-collapse:collapse">USA</span></div>
<br>
</div><div><span></span></div></body></html>