Hi!
I have the following issue, which I do not know whether it is an issue of CMake
or Visual Studio. When I try to generate a Visual Studio project under a path
that contains unicode characters, VS fails to compile the simple test file and
thus CMake terminates project generation. Visual Studio does have some issues
with projects under unicode paths, but generally things work. (For eg. the
C++AMP call tree generator breaks, therefore no C++AMP project can be built in
such paths) I develop all my applications in my Skydrive folder which is under
the Users folder, and since my name holds unicode characters, I have no control
over mw home folder under Win 8 if I have a Live-ID user in the OS. This is
what happens:
C:\Users\MátéFerenc\SkyDrive\Develop\Active\GridRipper\VS2013>cmake -G "Visual
Studio 12" -D USE_OPENCL:BOOL=ON ../
-- The C compiler identification is MSVC 18.0.21005.1
-- The CXX compiler identification is MSVC 18.0.21005.1
-- Check for working C compiler using: Visual Studio 12
-- Check for working C compiler using: Visual Studio 12 -- broken
CMake Error at C:/Kellekek/CMake
2.8/share/cmake-2.8/Modules/CMakeTestCCompiler.cmake:61 (message):
The C compiler "C:/Kellekek/Microsoft Visual Studio 12.0/VC/bin/cl.exe" is
not able to compile a simple test program.
It fails with the following output:
Change Dir:
C:/Users/MßtÚFerenc/SkyDrive/Develop/Active/GridRipper/VS2013/CMakeFiles/CMakeTmp
Run Build Command:C:\PROGRA~2\MSBuild\12.0\Bin\MSBuild.exe
cmTryCompileExec2625635362.vcxproj /p:Configuration=Debug
/p:VisualStudioVersion=12.0
Microsoft (R) Build Engine version 12.0.21005.1
[Microsoft .NET Framework, version 4.0.30319.34003]
Copyright (C) Microsoft Corporation. All rights reserved.
Build started 2013.11.08. 11:07:49.
Project
"C:\Users\MátéFerenc\SkyDrive\Develop\Active\GridRipper\VS2013\CMakeFiles\CMakeTmp\cmTryCompileExec2625635362.vcxproj
on node 1 (default targets).
C:\Users\MátéFerenc\SkyDrive\Develop\Active\GridRipper\VS2013\CMakeFiles\CMakeTmp\cmTryCompileExec2625635362.vcxproj(
0,83):
error MSB4025: The project file could not be loaded. Érvénytelen karakter
az adott kódolásban. Sor: 60, pozíció: 83.
Done Building Project
"C:\Users\MátéFerenc\SkyDrive\Develop\Active\GridRipper\VS2013\CMakeFiles\CMakeTmp\cmTryCompileExec2625635362.vcxproj
(default targets) -- FAILED.
Build FAILED.
"C:\Users\MátéFerenc\SkyDrive\Develop\Active\GridRipper\VS2013\CMakeFiles\CMakeTmp\cmTryCompileExec2625635362.vcxproj
(default target) (1) ->
C:\Users\MátéFerenc\SkyDrive\Develop\Active\GridRipper\VS2013\CMakeFiles\CMakeTmp\cmTryCompileExec2625635362.vcxpro
(60,83): error MSB4025: The project file could not be loaded. Érvénytelen
karakter az adott kódolásban. Sor: 60, pozíci
: 83.
0 Warning(s)
1 Error(s)
Time Elapsed 00:00:00.02
CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
CMakeLists.txt:20 (project)
-- Configuring incomplete, errors occurred!
See also
"C:/Users/MßtÚFerenc/SkyDrive/Develop/Active/GridRipper/VS2013/CMakeFiles/CMakeOutput.log".
See also
"C:/Users/MßtÚFerenc/SkyDrive/Develop/Active/GridRipper/VS2013/CMakeFiles/CMakeError.log".
C:\Users\MátéFerenc\SkyDrive\Develop\Active\GridRipper\VS2013>
The hungarian part of the string found in the error message “project file could
not be loaded. Érvénytelen karakter az adott kódolásban. Sor: 60, pozíci : 83.”
means invalid character in the given encoding Line 60, position 83
If I use the NMake generator, everything works fine. Output is:
C:\Users\MátéFerenc\SkyDrive\Develop\Active\GridRipper\VC++>cmake -G "NMake
Makefiles" -D USE_OPENCL:BOOL=ON ../
-- The C compiler identification is MSVC 18.0.21005.1
-- The CXX compiler identification is MSVC 18.0.21005.1
-- Check for working C compiler: C:/Kellekek/Microsoft Visual Studio
12.0/VC/bin/amd64/cl.exe
-- Check for working C compiler: C:/Kellekek/Microsoft Visual Studio
12.0/VC/bin/amd64/cl.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: C:/Kellekek/Microsoft Visual Studio
12.0/VC/bin/amd64/cl.exe
-- Check for working CXX compiler: C:/Kellekek/Microsoft Visual Studio
12.0/VC/bin/amd64/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Found OpenCL: C:/Program Files (x86)/AMD APP (found version "1.2")
-- Configuring done
-- Generating done
-- Build files have been written to:
C:/Users/MßtÚFerenc/SkyDrive/Develop/Active/GridRipper/VC++
Is this the right place to post this issue? Visual Studio in most cases works
under unicode paths, but in this case VS seems to complain about mal-encoded
characters in the project file.
Any ideas?
Máté--
Powered by www.kitware.com
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Kitware offers various services to support the CMake community. For more
information on each offering, please visit:
CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake