[CMake] cmake_symlink_library: error when cross-compiling with WinXP

Hendrik Sattler post at hendrik-sattler.de
Tue Jun 16 06:09:42 EDT 2009


Zitat von Kai Fischer <fischer at vrmagic.com>:
> I am cross-compiling a custom Linux ARM library with Windows XP using
> the ARM toolchain from Code-Sourcery (no cygwin, mingw or anything like
> that).
>
> To accomplish that the "SONAME" of the library will be correctly set, I
> set the VERSION property for it in CMakeLists.txt with:
>
> SET_TARGET_PROPERTIES( target PROPERTIES VERSION <lib_ver>)

A VERISON is not a SONAME.

> Cmake then generates a build file including a "cmake -E
> cmake_symlink_library" command, which causes the build process to abort
> with:
>
> CMake Error: cmake_symlink_library: System Error: No such file or
> directory
> NMAKE : fatal error U1077: '"D:\Programme\CMake 2.6\bin\cmake.exe"' :
> return code '0x1'
> Stop.
>
> This happens most probably because Windows filesystems do not support
> symlinks.

They do since Windows Vista:
http://msdn2.microsoft.com/en-us/library/aa363866.aspx

> Has anybody an idea, how I can circumvent this problem?

There is probably some variable to only create the VERSIONed file and  
no symlinks.
Still a bug since it shouldn't even try on Windows XP or lower.

OTOH, your development environment is far from ideal.

HS




More information about the CMake mailing list