cmake problem under windows/mingw

Christian Ehrlicher Ch.Ehrlicher at gmx.de
Thu Feb 9 15:44:54 CET 2006


> --- Ursprüngliche Nachricht ---
> Von: Ralf Habacker <ralf.habacker at freenet.de>
> Christian Ehrlicher schrieb:
> >> Hi,
> >>
> >> I've just tried to run cmake on kdelibs using mingw and got problems 
> >> with QT4, I can't find the reason for.
> >>   
> >> C:\Daten\kde4\kdelibs\win>c:\Programme\CMake-2.3-KDE\bin\cmake.exe -G 
> >> "MinGW Makefiles"  .
> >> -- Check for working C compiler: c:/MinGW/bin/gcc.exe
> >> -- Check for working C compiler: c:/MinGW/bin/gcc.exe -- works
> >> -- Check size of void*
> >> -- Check size of void* - done
> >> -- Check for working CXX compiler: c:/MinGW/bin/g++.exe
> >> -- Check for working CXX compiler: c:/MinGW/bin/g++.exe -- works
> >> -- Found Qt-Version 4.1.0
> >> CMake Error: This project requires some variables to be set,
> >> and cmake can not find them.
> >> Please set the following variables:
> >> QT_QT3SUPPORT_LIBRARY (ADVANCED)
> >> QT_QTCORE_LIBRARY (ADVANCED)
> >>
> >> -- Configuring done
> >>
> >>
> >> Then I've tried with msys, the same problem
> >>
> >> $ /c/Programme/CMake-2.3-KDE/bin/cmake -G "MSYS Makefiles" .
> >> -- Check for working C compiler: c:/mingw/bin/gcc.exe
> >> -- Check for working C compiler: c:/mingw/bin/gcc.exe -- works
> >> -- Check size of void*
> >> -- Check size of void* - done
> >> -- Check for working CXX compiler: c:/mingw/bin/g++.exe
> >> -- Check for working CXX compiler: c:/mingw/bin/g++.exe -- works
> >> -- Found Qt-Version 4.1.0
> >> CMake Error: This project requires some variables to be set,
> >> and cmake can not find them.
> >> Please set the following variables:
> >> QT_QT3SUPPORT_LIBRARY (ADVANCED)
> >> QT_QTCORE_LIBRARY (ADVANCED)
> >>
> >>
> >> Any idea what groes wrong ?
> >>     
> > I think the libnames cmake is looking for aren't correct for mingw. 
> Your right, I detected that with filemon from www.sysinternals.com. For 
> mingw (and cygwin) a specific binary release of cmake is required. The 
> cmake msvc binary releases has the extension hardcoded. There seems no 
> way to configure the prefix and extension at runtime. Not good :-(
> 
> See the following code fragment in source/kwsys/SystemTools.cxx
> 
> kwsys_stl::string SystemTools
> ::FindLibrary(const char* name,
>               const kwsys_stl::vector<kwsys_stl::string>& userPaths)
> <snip>
> 
> #if defined(_WIN32) && !defined(__CYGWIN__) && !defined(__MINGW32__)
>     tryPath = *p;
>     tryPath += "/";
>     tryPath += name;
>     tryPath += ".lib";
>     if(SystemTools::FileExists(tryPath.c_str())
>        && !SystemTools::FileIsDirectory(tryPath.c_str()))
>       {
>       return SystemTools::CollapseFullPath(tryPath.c_str());
>       }
> #else
> 
> Has anyone a mingw binary release for windows ?
No, but imo it's very bad when a program's behaviour is different depending
on the compiler used... You should report this as a bug to the cmake
developers.

Christian

-- 
10 GB Mailbox, 100 FreeSMS/Monat http://www.gmx.net/de/go/topmail
+++ GMX - die erste Adresse für Mail, Message, More +++


More information about the Kde-buildsystem mailing list