[CMake] MSYS FIND_LIBRARY problem

William A. Hoffman billlist at nycap.rr.com
Wed Nov 30 08:15:01 EST 2005


At 03:02 AM 11/30/2005, Brandon J. Van Every wrote:

>Hrm.  Well, compiling a second time doesn't solve the problem.  I guess I'll have to investigate the MSYS theory of operation, and also the CMake cygwin build.  I will wager, IF(UNIX) is problematic for MSYS because it is both a Windows system and Unix-like.
Actually, I don't think there is any IF(UNIX) stuff in the FIND stuff.  
However, I do think this might be the answer to our question about the
correct install path.  I think you have to do some special stuff to create
an MSYS executable, but just compiling within the MSYS environment does not
make a program aware of the /usr/local file system that MSYS creates.  So, I don't think
you would want to install programs into a directory that you could not find....
With cygwin, if you link with the cygwin runtime, your program automatically
knows about cygwin mount points, symlinks, etc because it gets a different libc.
However, with MSYS you link with the native Microsoft libraries and your program knows 
nothing about the special files that MSYS uses to simulate a UNIX file system.

Also, for cygwin, CMake defines UNIX as well as WIN32.  

-Bill



More information about the CMake mailing list