Skip to content

CMakes writes to non-writeable dir with builtin_llvm=OFF #12151

Closed
@stephanlachnit

Description

@stephanlachnit
  • Checked for duplicates

Describe the bug

Build master with builtin_llvm=OFF using system LLVM. CMake configuration fails with:

-- Using LLVM external library - 13.0.1
-- Clang version: 13.0.1
-- Could NOT find Git (missing: GIT_EXECUTABLE) 
-- Not building amdgpu-arch: hsa-runtime64 not found
-- Cling version (from VERSION file): ROOT_1.0~dev
-- Cling will look for C++ headers in '/usr/include/c++/12:/usr/include/x86_64-linux-gnu/c++/12:/usr/include/c++/12/backward' at runtime.
-- And then fallback to: 'ccache'
CMake Error: Could not open file for write in copy operation /usr/lib/llvm-13/lib/cmake/cling/ClingConfig.cmake.tmp
CMake Error: : System Error: No such file or directory
CMake Error at interpreter/cling/cmake/modules/CMakeLists.txt:22 (configure_file):
  configure_file Problem configuring file

The error is thrown in interpreter/cling/cmake/modules/CMakeLists.txt:22-25 when trying to create a file in cling_cmake_builddir which is not writable.

The bug originates from interpreter/cling/cmake/modules/CMakeLists.txt:5 and was introduced in 2b283cc from #10294.

Expected behavior

I think there are three options to fix this:

  • 2b283cc is reverted (the commit mentions some fixes though)
  • CMake checks for builtin_llvm=OFF and sets the dir accordingly
  • Some other path is found that prevents the issues mentioned in 2b283cc (maybe CLING_BINARY_DIR?)

To Reproduce

Build from master with builtin_llvm=OFF

Setup

git master, Debian Sid

Additional context

/cc @hahnjo @vgvassilev @bellenot

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions