dotnet / dotnet-buildtools-prereqs-docker

Used to maintain the Docker images hosted at the mcr.microsoft.com/dotnet-buildtools/prereqs image repository
MIT License
53 stars 99 forks source link

Fix directory where PGO library gets copied #1061

Closed sbomer closed 1 month ago

sbomer commented 1 month ago

Should fix failures we are seeing in official builds like:

  [ 80%] Linking CXX shared library libclrjit.so
  [ 80%] Building CXX object jit/CMakeFiles/clrjit_win_x64_x64.dir/optimizebools.cpp.o
  ld.lld: error: cannot open /crossrootfs/x64/usr/lib/llvm-18/lib/clang/18.1.4/lib/linux/libclang_rt.profile-x86_64.a: No such file or directory
  clang++: error: linker command failed with exit code 1 (use -v to see invocation)
  make[2]: *** [jit/CMakeFiles/clrjit.dir/build.make:1975: jit/libclrjit.so] Error 1
  make[1]: *** [CMakeFiles/Makefile2:3774: jit/CMakeFiles/clrjit.dir/all] Error 2
  make[1]: *** Waiting for unfinished jobs....
sbomer commented 1 month ago

@jkoritzinsky pointed out that we need to keep using the major version in COMPILER_RT_INSTALL_PATH because that's where sanitizer builds will look for resources, so reverted that part of the change. Instead this will copy bits out of the install path directly into the appropriate directory.

sbomer commented 1 month ago

Closing because we have a fix in runtime https://github.com/dotnet/runtime/pull/102390.