<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.6001.18294" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Dear list</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>On Windows, MinGW (gcc 4.5.2), CMake 
2.8.4.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>I have a project building two executables. The 
first one builds correctly. On the second one it appears to me as though CMake 
adds flags to link to the standard MinGW libraries (mingw32, moldname, mingwex, 
...) with an incorrect .lib suffix.&nbsp; (See the output below) As far as I can 
tell this is totally unnecessary since these flags are automatically added by 
the gfortran compiler. So in the end I have -lmingw32.lib (presumably added by 
CMake, which fails) and -lmingw32 (automatically added by gfortran, which 
correctly links libmingw32.a)</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>My CMakelists file for the target CE_SEMFEM 
is</FONT></DIV>
<DIV><FONT face=Arial 
size=2>-------------------------------------------------------------------------------------------------------</FONT></DIV>
<DIV><FONT face=Arial size=2>cmake_minimum_required (VERSION 2.8.4)<BR>project 
(CE_SEMFEM Fortran)</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>set (CE_SRCS<BR>&nbsp;&nbsp;&nbsp; 
src/CE_SEMFEM.f95<BR>&nbsp;&nbsp;&nbsp; 
src/CE_config_module.f95<BR>)</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>add_executable (CE_SEMFEM 
${CE_SRCS})<BR>target_link_libraries (CE_SEMFEM SEMFEM CE_FEMxml 
xmlparse)</FONT></DIV>
<DIV><FONT face=Arial 
size=2>-------------------------------------------------------------------------------------------------------</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>The libraries SEMFEM, CE_FEMxml and xmlparse are 
built elsewhere in the project.</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Ideas how I can fix this? Any help is much 
appreciated.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Stiaan</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>
<DIV><FONT face=Arial 
size=2>-------------------------------------------------------------------------------------------------------</FONT></DIV>Linking 
Fortran executable CE_SEMFEM.exe<BR>Driving: C:\MinGW\bin\gfortran.exe -v 
CMakeFiles/CE_SEMFEM.dir/src/CE_SEMFEM.f95.obj 
CMakeFiles/CE_SEMFEM.dir/src/CE_con<BR>fig_module.f95.obj -o CE_SEMFEM.exe 
-LC:\Loher_Berechner_repo\build\Utilities\xml_parser 
-LC:\Loher_Berechner_repo\build<BR>\SEMFEM\trunk\SEMFEM\core 
-Lc:\MinGW\lib\gcc\mingw32\4.5.2 -Lc:\MinGW\lib\gcc -Lc:\MinGW\mingw32\lib 
-Lc:\MinGW\lib -L\M<BR>inGW\lib ..\..\core\SEMFEM.lib 
..\..\..\..\..\Utilities\xml_parser\libCE_FEMxml.a 
..\..\..\..\..\Utilities\xml_parser\li<BR>bxmlparse.a C:\MPICH2\lib\fmpich2g.lib 
-lmingw32.lib -lmoldname.lib -lmingwex.lib -lmsvcrt.lib -luser32.lib 
-lkernel32.l<BR>ib -ladvapi32.lib -lshell32.lib -lmingw32.lib -lmoldname.lib 
-lmingwex.lib -lmsvcrt.lib -lgfortran -shared-libgcc<BR>Using built-in 
specs.<BR>COLLECT_GCC=C:\MinGW\bin\gfortran.exe<BR>COLLECT_LTO_WRAPPER=c:/mingw/bin/../libexec/gcc/mingw32/4.5.2/lto-wrapper.exe<BR>Target: 
mingw32<BR>Configured with: ../gcc-4.5.2/configure 
--enable-languages=c,c++,ada,fortran,objc,obj-c++ --disable-sjlj-exceptions 
--wi<BR>th-dwarf2 --enable-shared --enable-libgomp --disable-win32-registry 
--enable-libstdcxx-debug --enable-version-specific-r<BR>untime-libs 
--disable-werror --build=mingw32 --prefix=/mingw<BR>Thread model: win32<BR>gcc 
version 4.5.2 
(GCC)<BR>COMPILER_PATH=c:/mingw/bin/../libexec/gcc/mingw32/4.5.2/;c:/mingw/bin/../libexec/gcc/;c:/mingw/bin/../lib/gcc/mingw32/4.<BR>5.2/../../../../mingw32/bin/<BR>LIBRARY_PATH=c:/mingw/bin/../lib/gcc/mingw32/4.5.2/;c:/mingw/bin/../lib/gcc/;c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../..<BR>/../../mingw32/lib/;c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../;/mingw/lib/<BR>COLLECT_GCC_OPTIONS='-v' 
'-o' 'CE_SEMFEM.exe' '-LC:\Loher_Berechner_repo\build\Utilities\xml_parser' 
'-LC:\Loher_Berechn<BR>er_repo\build\SEMFEM\trunk\SEMFEM\core' 
'-Lc:\MinGW\lib\gcc\mingw32\4.5.2' '-Lc:\MinGW\lib\gcc' 
'-Lc:\MinGW\mingw32\lib'<BR>&nbsp;'-Lc:\MinGW\lib' '-L\MinGW\lib' 
'-shared-libgcc' '-mtune=i386' 
'-march=i386'<BR>&nbsp;c:/mingw/bin/../libexec/gcc/mingw32/4.5.2/collect2.exe 
-Bdynamic -u ___register_frame_info -u ___deregister_frame_info<BR>-o 
CE_SEMFEM.exe c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../crt2.o 
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/crtbegin.o<BR>-LC:\Loher_Berechner_repo\build\Utilities\xml_parser 
-LC:\Loher_Berechner_repo\build\SEMFEM\trunk\SEMFEM\core 
-Lc:\MinGW<BR>\lib\gcc\mingw32\4.5.2 -Lc:\MinGW\lib\gcc -Lc:\MinGW\mingw32\lib 
-Lc:\MinGW\lib -L\MinGW\lib -Lc:/mingw/bin/../lib/gcc/m<BR>ingw32/4.5.2 
-Lc:/mingw/bin/../lib/gcc 
-Lc:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/lib 
-Lc:/mingw/bin/..<BR>/lib/gcc/mingw32/4.5.2/../../.. -L/mingw/lib 
CMakeFiles/CE_SEMFEM.dir/src/CE_SEMFEM.f95.obj 
CMakeFiles/CE_SEMFEM.dir/src<BR>/CE_config_module.f95.obj ..\..\core\SEMFEM.lib 
..\..\..\..\..\Utilities\xml_parser\libCE_FEMxml.a 
..\..\..\..\..\Utilit<BR>ies\xml_parser\libxmlparse.a C:\MPICH2\lib\fmpich2g.lib 
-lmingw32.lib -lmoldname.lib -lmingwex.lib -lmsvcrt.lib -luser32<BR>.lib 
-lkernel32.lib -ladvapi32.lib -lshell32.lib -lmingw32.lib -lmoldname.lib 
-lmingwex.lib -lmsvcrt.lib -lgfortran -lmi<BR>ngw32 -lgcc_s -lgcc -lmoldname 
-lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lgcc_s 
-lgcc -lmol<BR>dname -lmingwex -lmsvcrt 
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/crtend.o<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-lmingw32.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-lmoldname.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-lmingwex.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-lmsvcrt.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-luser32.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-lkernel32.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-ladvapi32.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-lshell32.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-lmingw32.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-lmoldname.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find 
-lmingwex.lib<BR>c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../mingw32/bin/ld.exe: 
cannot find -lmsvcrt.lib<BR>collect2: ld returned 1 exit status<BR>
<DIV><FONT face=Arial 
size=2>-------------------------------------------------------------------------------------------------------</FONT></DIV></FONT></DIV></BODY></HTML>