Advertisement
Guest User

Untitled

a guest
Mar 8th, 2024
18
0
289 days
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.37 KB | None | 0 0
  1. Trying to build compiler-rt:
  2.  
  3. cmake -G Ninja \
  4. -DCMAKE_BUILD_TYPE=Release \
  5. -DCMAKE_C_COMPILER_WORKS=ON \
  6. -DCMAKE_CXX_COMPILER_WORKS=ON \
  7. -DCMAKE_CMAKE_MODULE_PATH=../cmake \
  8. -DCMAKE_MODULE_PATH=/home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/cmake \
  9. -DCMAKE_TOOLCHAIN_FILE=(pwd)/wasi-toolchain.cmake \
  10. -DCOMPILER_RT_BAREMETAL_BUILD=On \
  11. -DCOMPILER_RT_INCLUDE_TESTS=OFF \
  12. -DCOMPILER_RT_HAS_FPIC_FLAG=OFF \
  13. -DCOMPILER_RT_DEFAULT_TARGET_ONLY=On \
  14. -DCOMPILER_RT_OS_DIR=wasi \
  15. -DWASI_SDK_PREFIX=/usr \
  16. -DCMAKE_C_FLAGS="-fno-exceptions --sysroot=/usr/share/wasi-sysroot" \
  17. -DCMAKE_INSTALL_PREFIX=/usr/lib/clang/17/ \
  18. \
  19. lib/builtins
  20.  
  21.  
  22. Have the Platform/WASI.cmake with content:
  23. set(WASI 1)
  24.  
  25. And wasi-toolchain.cmake:
  26. # Cmake toolchain description file for the Makefile
  27.  
  28. # This is arbitrary, AFAIK, for now.
  29. cmake_minimum_required(VERSION 3.4.0)
  30.  
  31. set(CMAKE_SYSTEM_NAME WASI)
  32. set(CMAKE_SYSTEM_VERSION 1)
  33. set(CMAKE_SYSTEM_PROCESSOR wasm32)
  34. set(triple wasm32-wasi)
  35.  
  36. if(WIN32)
  37. set(WASI_HOST_EXE_SUFFIX ".exe")
  38. else()
  39. set(WASI_HOST_EXE_SUFFIX "")
  40. endif()
  41.  
  42. set(CMAKE_C_COMPILER ${WASI_SDK_PREFIX}/bin/clang${WASI_HOST_EXE_SUFFIX})
  43. set(CMAKE_CXX_COMPILER ${WASI_SDK_PREFIX}/bin/clang++${WASI_HOST_EXE_SUFFIX})
  44. set(CMAKE_AR ${WASI_SDK_PREFIX}/bin/llvm-ar${WASI_HOST_EXE_SUFFIX})
  45. set(CMAKE_RANLIB ${WASI_SDK_PREFIX}/bin/llvm-ranlib${WASI_HOST_EXE_SUFFIX})
  46. set(CMAKE_C_COMPILER_TARGET ${triple})
  47. set(CMAKE_CXX_COMPILER_TARGET ${triple})
  48.  
  49. # Don't look in the sysroot for executables to run during the build
  50. set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
  51. # Only look in the sysroot (not in the host paths) for the rest
  52. set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
  53. set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
  54. set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
  55.  
  56.  
  57. Fails in:
  58. CMake Debug Log at /home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/cmake/Modules/CompilerRTUtils.cmake:303 (find_package):
  59.  
  60.  
  61. find_package considered the following locations for LLVM's Config module:
  62.  
  63. /home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/CMakeFiles/pkgRedirects/LLVMConfig.cmake
  64. /home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/CMakeFiles/pkgRedirects/llvm-config.cmake
  65. /home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/lib/builtins/LLVMConfig.cmake
  66. /home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/lib/builtins/llvm-config.cmake
  67. /usr/share/Modules/LLVMConfig.cmake
  68. /usr/share/Modules/llvm-config.cmake
  69. /usr/local/LLVMConfig.cmake
  70. /usr/local/llvm-config.cmake
  71. /usr/LLVMConfig.cmake
  72. /usr/llvm-config.cmake
  73. /usr/lib/llvm16/LLVMConfig.cmake
  74. /usr/lib/llvm16/llvm-config.cmake
  75. /usr/share/llvm/LLVMConfig.cmake
  76. /usr/share/llvm/llvm-config.cmake
  77. /usr/share/llvm/cmake/LLVMConfig.cmake
  78. /usr/share/llvm/cmake/llvm-config.cmake
  79. /var/lib/snapd/snap/LLVMConfig.cmake
  80. /var/lib/snapd/snap/llvm-config.cmake
  81. /home/jhorak/LLVMConfig.cmake
  82. /home/jhorak/llvm-config.cmake
  83. /home/jhorak/.local/LLVMConfig.cmake
  84. /home/jhorak/.local/llvm-config.cmake
  85.  
  86. The file was not found.
  87.  
  88.  
  89. While the non-wasi builds run by:
  90.  
  91. cmake -GNinja \
  92. -DCMAKE_BUILD_TYPE=RelWithDebInfo \
  93. -DCMAKE_MODULE_PATH=/home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/cmake \
  94. -DCMAKE_SKIP_RPATH:BOOL=ON \
  95. -DCOMPILER_RT_INSTALL_PATH=%{_prefix}/lib/clang/%{maj_ver} \
  96. -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON \
  97. \
  98. -DLLVM_LIBDIR_SUFFIX=64 \
  99. lib/builtins
  100.  
  101. finds it:
  102.  
  103. find_package considered the following locations for LLVM's Config module:
  104.  
  105. /home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/CMakeFiles/pkgRedirects/LLVMConfig.cmake
  106. /home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/CMakeFiles/pkgRedirects/llvm-config.cmake
  107. /home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/lib/builtins/LLVMConfig.cmake
  108. /home/jhorak/f/compiler-rt/compiler-rt-17.0.6.src/lib/builtins/llvm-config.cmake
  109. /usr/share/Modules/LLVMConfig.cmake
  110. /usr/share/Modules/llvm-config.cmake
  111. /usr/local/LLVMConfig.cmake
  112. /usr/local/llvm-config.cmake
  113. /usr/LLVMConfig.cmake
  114. /usr/llvm-config.cmake
  115. /usr/lib64/cmake/llvm/LLVMConfig.cmake
  116.  
  117. The file was found at
  118.  
  119. /usr/lib64/cmake/llvm/LLVMConfig.cmake
  120.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement