I need some help getting the LLVM build to work. If this is not the right place to ask, please let me know. I set MSE and Malwarebytes so they ignore the build directory tree and don't complain about a.exe. I also ran this CMake disabling both of them, just in case that mattered; it didn't. Here are the outputs from CMake and the contents of CMakeError.log. Any help would be appreciated. Note: When I run a.exe by itself, the return status is 390. --------------------------------- CMake Warning (dev) in CMakeLists.txt: No project() command is present. The top-level CMakeLists.txt file must contain a literal, direct call to the project() command. Add a line of code such as project(ProjectName) near the top of the file, but after cmake_minimum_required(). CMake is pretending there is a "project(Project)" command on the first line. This warning is for project developers. Use -Wno-dev to suppress it. -- The C compiler identification is GNU 9.2.0 -- The CXX compiler identification is GNU 9.2.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: C:/MinGW/bin/gcc.exe - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: C:/MinGW/bin/c++.exe - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done CMake Error at CMakeLists.txt:106 (include): include could not find load file: AddSphinxTarget CMake Warning (dev) in CMakeLists.txt: No cmake_minimum_required command is present. A line of code such as cmake_minimum_required(VERSION 3.18) should be added at the top of the file. The version specified may be lower if you wish to support older CMake versions for this project. For more information run "cmake --help-policy CMP0000". This warning is for project developers. Use -Wno-dev to suppress it. -- Configuring incomplete, errors occurred! See also "C:/LLVM/Build/CMakeFiles/CMakeOutput.log". See also "C:/LLVM/Build/CMakeFiles/CMakeError.log". -------------------------------------- The C compiler identification could not be found in "C:/LLVM/Build/CMakeFiles/3.18.0/CompilerIdC/a.exe" --------------------------------------- In spite of that error, here is what appears in the CMake cache: ------------------------------------ //C compiler CMAKE_C_COMPILER:FILEPATH=C:/MinGW/bin/gcc.exe //A wrapper around 'ar' adding the appropriate '--plugin' option // for the GCC compiler CMAKE_C_COMPILER_AR:FILEPATH=C:/MinGW/bin/gcc-ar.exe //A wrapper around 'ranlib' adding the appropriate '--plugin' option // for the GCC compiler CMAKE_C_COMPILER_RANLIB:FILEPATH=C:/MinGW/bin/gcc-ranlib.exe //Flags used by the C compiler during all build types. CMAKE_C_FLAGS:STRING //Flags used by the C compiler during DEBUG builds. CMAKE_C_FLAGS_DEBUG:STRING=-g //Flags used by the C compiler during MINSIZEREL builds. CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG //Flags used by the C compiler during RELEASE builds. CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG //Flags used by the C compiler during RELWITHDEBINFO builds. CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG ------------------------------------
This looks like cmake starts processing with a wrong top-level CMakeLists.txt (llvm\docs\CMakeLists.txt). It should be <your llvm-project checkout>\llvm\CMakeLists.txt. For instance: C:\> cmake -S <your llvm-project checkout>\llvm -B C:/LLVM/Build Michael Am Do., 30. Juli 2020 um 08:34 Uhr schrieb Paul C. Anagnostopoulos via llvm-dev <llvm-dev at lists.llvm.org>:> I need some help getting the LLVM build to work. If this is not the right > place to ask, please let me know. I set MSE and Malwarebytes so they ignore > the build directory tree and don't complain about a.exe. I also ran this > CMake disabling both of them, just in case that mattered; it didn't. > > Here are the outputs from CMake and the contents of CMakeError.log. Any > help would be appreciated. > > Note: When I run a.exe by itself, the return status is 390. > > --------------------------------- > CMake Warning (dev) in CMakeLists.txt: > No project() command is present. The top-level CMakeLists.txt file must > contain a literal, direct call to the project() command. Add a line of > code such as > > project(ProjectName) > > near the top of the file, but after cmake_minimum_required(). > > CMake is pretending there is a "project(Project)" command on the first > line. > This warning is for project developers. Use -Wno-dev to suppress it. > > -- The C compiler identification is GNU 9.2.0 > -- The CXX compiler identification is GNU 9.2.0 > -- Detecting C compiler ABI info > -- Detecting C compiler ABI info - done > -- Check for working C compiler: C:/MinGW/bin/gcc.exe - skipped > -- Detecting C compile features > -- Detecting C compile features - done > -- Detecting CXX compiler ABI info > -- Detecting CXX compiler ABI info - done > -- Check for working CXX compiler: C:/MinGW/bin/c++.exe - skipped > -- Detecting CXX compile features > -- Detecting CXX compile features - done > CMake Error at CMakeLists.txt:106 (include): > include could not find load file: > > AddSphinxTarget > > > CMake Warning (dev) in CMakeLists.txt: > No cmake_minimum_required command is present. A line of code such as > > cmake_minimum_required(VERSION 3.18) > > should be added at the top of the file. The version specified may be > lower > if you wish to support older CMake versions for this project. For more > information run "cmake --help-policy CMP0000". > This warning is for project developers. Use -Wno-dev to suppress it. > > -- Configuring incomplete, errors occurred! > See also "C:/LLVM/Build/CMakeFiles/CMakeOutput.log". > See also "C:/LLVM/Build/CMakeFiles/CMakeError.log". > -------------------------------------- > The C compiler identification could not be found in > "C:/LLVM/Build/CMakeFiles/3.18.0/CompilerIdC/a.exe" > --------------------------------------- > > In spite of that error, here is what appears in the CMake cache: > > ------------------------------------ > //C compiler > CMAKE_C_COMPILER:FILEPATH=C:/MinGW/bin/gcc.exe > > //A wrapper around 'ar' adding the appropriate '--plugin' option > // for the GCC compiler > CMAKE_C_COMPILER_AR:FILEPATH=C:/MinGW/bin/gcc-ar.exe > > //A wrapper around 'ranlib' adding the appropriate '--plugin' option > // for the GCC compiler > CMAKE_C_COMPILER_RANLIB:FILEPATH=C:/MinGW/bin/gcc-ranlib.exe > > //Flags used by the C compiler during all build types. > CMAKE_C_FLAGS:STRING> > //Flags used by the C compiler during DEBUG builds. > CMAKE_C_FLAGS_DEBUG:STRING=-g > > //Flags used by the C compiler during MINSIZEREL builds. > CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG > > //Flags used by the C compiler during RELEASE builds. > CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG > > //Flags used by the C compiler during RELWITHDEBINFO builds. > CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG > ------------------------------------ > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200730/12efd0e3/attachment.html>
At 7/30/2020 11:41 AM, Michael Kruse wrote:>This looks like cmake starts processing with a wrong top-level CMakeLists.txt (llvm\docs\CMakeLists.txt). It should be <your llvm-project checkout>\llvm\CMakeLists.txt. For instance: > >C:\> cmake -SÂ <your llvm-project checkout>\llvm -B C:/LLVM/BuildThank you for responding. I'm trying to build just the LLVM documentation. Other folks suggested the following: cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_SPHINX=On c:\llvm\llvm-project\llvm\docs I run that command in the C:/LLVM/Build directory, which I assume then is the default for -B. Anyway, I changed my command to: cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_SPHINX=On -S c:/llvm/llvm-project/llvm/docs -B c:/llvm/build The result was the same: The C compiler identification could not be found in "C:/LLVM/Build/CMakeFiles/3.18.0/CompilerIdC/a.exe" Is it simply not possible to build anything other than top-level checkout directory?