Re: [CMake] CMake support for MYS2
On 10 January 2018 at 11:56, Konstantin Tokarevwrote: > 10.01.2018, 11:40, "Mojca Miklavec" : >> On 8 January 2018 at 17:38, Konstantin Tokarev wrote: >>> 08.01.2018, 14:35, "Mojca Miklavec": Dear CMake developers, I installed msys2 from http://www.msys2.org/ and (after updating etc) installed cmake via pacman -S cmake >>> >>> You should install mingw-w64-x86_64-cmake (or i686). >> >> Thank you very much. That package is missing ccmake though > > Please report it as a bug. cmake package should provide ccmake, or > there should be a separate package if ncurses dependency is undesirable > in the main package. I can create a bug report, but I would like to clarify with CMake developers first before I know what exactly to report in the first place. I'm pretty sure that this is a side-effect of CMake's own build figuring out that it's being built on and for Windows, so it probably skips building ccmake and builds cmake-gui.exe instead. This all makes perfect sense for distributing the standalone executable on Windows, but it's less suitable in the context of MSYS2. >>, so I can >> only run cmake directly and even then it strangely(?) defaults to >> Visual Studio when I would expect it to go for Unix Makefiles. > > This is behavior of vanilla cmake, so it's reasonable that it is not altered. I assume it belongs "to the same category" as the lack of ccmake. I can imagine that it would make sense to offer to ways of building cmake on Windows: the "standalone" mode without ccmake, with cmake-gui and defaulting to Visual Studio. And the "command-line" mode with ccmake and defaulting to "Unix Makefiles". Of course one could build both ccmake and cmake-gui at the same time if desired. We often have this problem with a Mac package manager. Many software builds do "if this is mac, then standard unix tools don't exist, so do something completely different" and they would create the app bundle, but skip the rest of command-line friendliness and completely ignore the fact that those unix tools may exist after all. > You can use msys2 like a generic Windows software repository, not only > for MinGW- or MSYS-based development. I admit that I don't totally understand how exactly it's supposed to work, but further discussion would be too off-topic for this list, I assume. >> (The "ccmake" from /usr/bin/ccmake is not helping in any way either, I >> was hoping it would perhaps use mingw-w64-x86_64-cmake.) >> >> I later noticed that there is /mingw64/bin/cmake-gui.exe, but that one >> doesn't really work either: >> >> $ cmake-gui >> C:/msys/msys64/mingw64/bin/cmake-gui.exe: error while loading shared >> libraries: librhash.dll: cannot open shared object file: No such file >> or directory >> >>> You've installed >>> package that targets MSYS environment, not native Windows. >> >> I still assume that others might run into exactly the same isuse in >> the future. Since it's explicitly suggesting to write to the mailing >> list, the reports might repeat. > > This is a packaging problem, so it should be reported to msys2 > maintainers first. OK. > in the meanwhile, you can edit CMakeCache.txt file directly, gui tools > don't really add much :) Well, I can always use cmake -G "..." -Dwhatever ../source but ccmake is useful to show what configuration options the program is offering. Editing CMakeCache is a feasible workaround, but I would like to have a proper fix at the end. Thanks a lot for all the useful insights. Mojca -- 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: https://cmake.org/mailman/listinfo/cmake
Re: [CMake] CMake support for MYS2
10.01.2018, 11:40, "Mojca Miklavec": > On 8 January 2018 at 17:38, Konstantin Tokarev wrote: >> 08.01.2018, 14:35, "Mojca Miklavec": >>> Dear CMake developers, >>> >>> I installed msys2 from http://www.msys2.org/ and (after updating etc) >>> installed cmake via >>> pacman -S cmake >> >> You should install mingw-w64-x86_64-cmake (or i686). > > Thank you very much. That package is missing ccmake though Please report it as a bug. cmake package should provide ccmake, or there should be a separate package if ncurses dependency is undesirable in the main package. >, so I can > only run cmake directly and even then it strangely(?) defaults to > Visual Studio when I would expect it to go for Unix Makefiles. This is behavior of vanilla cmake, so it's reasonable that it is not altered. You can use msys2 like a generic Windows software repository, not only for MinGW- or MSYS-based development. > (The "ccmake" from /usr/bin/ccmake is not helping in any way either, I > was hoping it would perhaps use mingw-w64-x86_64-cmake.) > > I later noticed that there is /mingw64/bin/cmake-gui.exe, but that one > doesn't really work either: > > $ cmake-gui > C:/msys/msys64/mingw64/bin/cmake-gui.exe: error while loading shared > libraries: librhash.dll: cannot open shared object file: No such file > or directory > >> You've installed >> package that targets MSYS environment, not native Windows. > > I still assume that others might run into exactly the same isuse in > the future. Since it's explicitly suggesting to write to the mailing > list, the reports might repeat. This is a packaging problem, so it should be reported to msys2 maintainers first. in the meanwhile, you can edit CMakeCache.txt file directly, gui tools don't really add much :) > (OK, I don't expect so many people to use the strange unix toolchains > on windows platforms, but still.) > > Thank you, > Mojca > >>> as well as some other packages like "make", the gcc compiler etc. >>> >>> But "ccmake" complains: >>> >>> System is unknown to cmake, create: >>> Platform/MINGW32_NT-6.1 to use this system, please send your config file >>> to >>> cm...@www.cmake.org so it can be added to cmake >>> >>> Your CMakeCache.txt file was copied to CopyOfCMakeCache.txt. Please >>> send that file to >>> cm...@www.cmake.org. >>> >>> I believe I should additional set the compiler somehow, but I guess I >>> should be able to cope with that part. I just wanted to report the >>> failure to identify the platform while fighting with other problems. >>> (Meson works correctly out of the box.) >>> >>> CopyOfCMakeCache is in attachment. >>> >>> Thank you very much, >>> Mojca >> >> -- >> Regards, >> Konstantin -- Regards, Konstantin -- 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: https://cmake.org/mailman/listinfo/cmake
Re: [CMake] CMake support for MYS2
On 8 January 2018 at 17:38, Konstantin Tokarev wrote: > 08.01.2018, 14:35, "Mojca Miklavec": >> Dear CMake developers, >> >> I installed msys2 from http://www.msys2.org/ and (after updating etc) >> installed cmake via >> pacman -S cmake > > You should install mingw-w64-x86_64-cmake (or i686). Thank you very much. That package is missing ccmake though, so I can only run cmake directly and even then it strangely(?) defaults to Visual Studio when I would expect it to go for Unix Makefiles. (The "ccmake" from /usr/bin/ccmake is not helping in any way either, I was hoping it would perhaps use mingw-w64-x86_64-cmake.) I later noticed that there is /mingw64/bin/cmake-gui.exe, but that one doesn't really work either: $ cmake-gui C:/msys/msys64/mingw64/bin/cmake-gui.exe: error while loading shared libraries: librhash.dll: cannot open shared object file: No such file or directory > You've installed > package that targets MSYS environment, not native Windows. I still assume that others might run into exactly the same isuse in the future. Since it's explicitly suggesting to write to the mailing list, the reports might repeat. (OK, I don't expect so many people to use the strange unix toolchains on windows platforms, but still.) Thank you, Mojca >> as well as some other packages like "make", the gcc compiler etc. >> >> But "ccmake" complains: >> >> System is unknown to cmake, create: >> Platform/MINGW32_NT-6.1 to use this system, please send your config file to >> cm...@www.cmake.org so it can be added to cmake >> >> Your CMakeCache.txt file was copied to CopyOfCMakeCache.txt. Please >> send that file to >> cm...@www.cmake.org. >> >> I believe I should additional set the compiler somehow, but I guess I >> should be able to cope with that part. I just wanted to report the >> failure to identify the platform while fighting with other problems. >> (Meson works correctly out of the box.) >> >> CopyOfCMakeCache is in attachment. >> >> Thank you very much, >> Mojca > > -- > Regards, > Konstantin -- 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: https://cmake.org/mailman/listinfo/cmake
Re: [CMake] CMake support for MYS2
08.01.2018, 14:35, "Mojca Miklavec": > Dear CMake developers, > > I installed msys2 from http://www.msys2.org/ and (after updating etc) > installed cmake via > pacman -S cmake You should install mingw-w64-x86_64-cmake (or i686). You've installed package that targets MSYS environment, not native Windows. > as well as some other packages like "make", the gcc compiler etc. > > But "ccmake" complains: > > System is unknown to cmake, create: > Platform/MINGW32_NT-6.1 to use this system, please send your config file to > cm...@www.cmake.org so it can be added to cmake > > Your CMakeCache.txt file was copied to CopyOfCMakeCache.txt. Please > send that file to > cm...@www.cmake.org. > > I believe I should additional set the compiler somehow, but I guess I > should be able to cope with that part. I just wanted to report the > failure to identify the platform while fighting with other problems. > (Meson works correctly out of the box.) > > CopyOfCMakeCache is in attachment. > > Thank you very much, > Mojca > ,-- > > 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: > https://cmake.org/mailman/listinfo/cmake -- Regards, Konstantin -- 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: https://cmake.org/mailman/listinfo/cmake
[CMake] CMake support for MYS2
Dear CMake developers, I installed msys2 from http://www.msys2.org/ and (after updating etc) installed cmake via pacman -S cmake as well as some other packages like "make", the gcc compiler etc. But "ccmake" complains: System is unknown to cmake, create: Platform/MINGW32_NT-6.1 to use this system, please send your config file to cm...@www.cmake.org so it can be added to cmake Your CMakeCache.txt file was copied to CopyOfCMakeCache.txt. Please send that file to cm...@www.cmake.org. I believe I should additional set the compiler somehow, but I guess I should be able to cope with that part. I just wanted to report the failure to identify the platform while fighting with other problems. (Meson works correctly out of the box.) CopyOfCMakeCache is in attachment. Thank you very much, Mojca # This is the CMakeCache file. # For build in directory: /c/Users/me/test/test-build # It was generated by CMake: /usr/bin/cmake.exe # You can edit this file to change values found and used by cmake. # If you do not want to change any of the values, simply exit the editor. # If you do want to change a value, simply edit, save, and exit the editor. # The syntax for the file is as follows: # KEY:TYPE=VALUE # KEY is the name of a variable in the cache. # TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. # VALUE is the current value for the KEY. # EXTERNAL cache entries //Path to a program. CMAKE_AR:FILEPATH=CMAKE_AR-NOTFOUND //Choose the type of build, options are: None(CMAKE_CXX_FLAGS or // CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel. CMAKE_BUILD_TYPE:STRING= //Enable/Disable color output during build. CMAKE_COLOR_MAKEFILE:BOOL=ON //CXX compiler CMAKE_CXX_COMPILER:FILEPATH=CMAKE_CXX_COMPILER-NOTFOUND //Flags used by the compiler during all build types. CMAKE_CXX_FLAGS:STRING= //Flags used by the compiler during debug builds. CMAKE_CXX_FLAGS_DEBUG:STRING= //Flags used by the compiler during release builds for minimum // size. CMAKE_CXX_FLAGS_MINSIZEREL:STRING= //Flags used by the compiler during release builds. CMAKE_CXX_FLAGS_RELEASE:STRING= //Flags used by the compiler during release builds with debug info. CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING= //Flags used by the linker. CMAKE_EXE_LINKER_FLAGS:STRING= //Flags used by the linker during debug builds. CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= //Flags used by the linker during release minsize builds. CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= //Flags used by the linker during release builds. CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= //Flags used by the linker during Release with Debug Info builds. CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= //Enable/Disable output of compile commands during generation. CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF //Install path prefix, prepended onto install directories. CMAKE_INSTALL_PREFIX:PATH=/usr/local //Path to a program. CMAKE_LINKER:FILEPATH=CMAKE_LINKER-NOTFOUND //Path to a program. CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make.exe //Flags used by the linker during the creation of modules. CMAKE_MODULE_LINKER_FLAGS:STRING= //Flags used by the linker during debug builds. CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= //Flags used by the linker during release minsize builds. CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= //Flags used by the linker during release builds. CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= //Flags used by the linker during Release with Debug Info builds. CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= //Path to a program. CMAKE_NM:FILEPATH=CMAKE_NM-NOTFOUND //Path to a program. CMAKE_OBJCOPY:FILEPATH=CMAKE_OBJCOPY-NOTFOUND //Path to a program. CMAKE_OBJDUMP:FILEPATH=CMAKE_OBJDUMP-NOTFOUND //Value Computed by CMake CMAKE_PROJECT_NAME:STATIC=CommonLib //Flags used by the linker during the creation of dll's. CMAKE_SHARED_LINKER_FLAGS:STRING= //Flags used by the linker during debug builds. CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= //Flags used by the linker during release minsize builds. CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= //Flags used by the linker during release builds. CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= //Flags used by the linker during Release with Debug Info builds. CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= //If set, runtime paths are not added when installing shared libraries, // but are added when building. CMAKE_SKIP_INSTALL_RPATH:BOOL=NO //If set, runtime paths are not added when using shared libraries. CMAKE_SKIP_RPATH:BOOL=NO //Flags used by the linker during the creation of static libraries. CMAKE_STATIC_LINKER_FLAGS:STRING= //Flags used by the linker during debug builds. CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= //Flags used by the linker during release minsize builds. CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= //Flags used by the linker during release builds. CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= //Flags used by the linker during Release with Debug Info builds.