Activity log for bug #2064187

Date Who What changed Old value New value Message
2024-04-30 01:18:11 Paul Meckel bug added bug
2024-05-06 05:43:51 Launchpad Janitor llvm-toolchain-18 (Ubuntu): status New Confirmed
2024-05-08 21:17:21 Balint Reczey bug added subscriber Balint Reczey
2024-05-09 06:41:43 Shengjing Zhu nominated for series Ubuntu Noble
2024-05-09 06:41:43 Shengjing Zhu bug task added llvm-toolchain-18 (Ubuntu Noble)
2024-05-09 06:41:43 Shengjing Zhu nominated for series Ubuntu Oracular
2024-05-09 06:41:43 Shengjing Zhu bug task added llvm-toolchain-18 (Ubuntu Oracular)
2024-05-09 06:41:55 Shengjing Zhu llvm-toolchain-18 (Ubuntu Noble): status New Confirmed
2024-05-09 06:45:20 Shengjing Zhu llvm-toolchain-18 (Ubuntu Oracular): status Confirmed Fix Released
2024-05-21 11:01:42 Wenyu Zhao bug added subscriber Wenyu Zhao
2024-05-28 08:37:57 Shengjing Zhu description Unlike all other llvm-*-linker-tools packages, this one does not install `/usr/lib/llvm-18/lib/LLVMgold.so`. It does however install a broken symlink to it at `/usr/lib/bfd-plugins/LLVMgold-18.so` This results in compilation failures with clang++ when used with the `-flto` flag for link time optimization. To reproduce: main.cpp: ```c++ int main() { return 0; } ``` ```bash clang++ -flto main.cpp -o main ``` Results in: ``` /usr/bin/ld: /usr/lib/llvm-18/bin/../lib/LLVMgold.so: error loading plugin: /usr/lib/llvm-18/bin/../lib/LLVMgold.so: cannot open shared object file: No such file or directory clang++: error: linker command failed with exit code 1 (use -v to see invocation) ``` Package version is llvm-18-linker-tools/noble,now 1:18.1.3-1 amd64 llvm-18-linker-tools: Installed: 1:18.1.3-1 Candidate: 1:18.1.3-1 Version table: *** 1:18.1.3-1 500 500 http://de.archive.ubuntu.com/ubuntu noble/universe amd64 Packages 100 /var/lib/dpkg/status [ Impact ] * User can't use clang++-18 to build C++ code with -flto option. [ Test Plan ] * Install clang-18 from proposed updates. * Try to build a C++ program with LTO (for example following the steps in original description. [ Where problems could occur ] * The missing LLVMgold.so is caused by switching to use mold in package building. Using mold is introduced in llvm 18. The fix is just to revert the change, and uses the same linker (gold) as old llvm versions. So the change looks safe. [ Other Info ] * No [Original Description] Unlike all other llvm-*-linker-tools packages, this one does not install `/usr/lib/llvm-18/lib/LLVMgold.so`. It does however install a broken symlink to it at `/usr/lib/bfd-plugins/LLVMgold-18.so` This results in compilation failures with clang++ when used with the `-flto` flag for link time optimization. To reproduce: main.cpp: ```c++ int main() { return 0; } ``` ```bash clang++ -flto main.cpp -o main ``` Results in: ``` /usr/bin/ld: /usr/lib/llvm-18/bin/../lib/LLVMgold.so: error loading plugin: /usr/lib/llvm-18/bin/../lib/LLVMgold.so: cannot open shared object file: No such file or directory clang++: error: linker command failed with exit code 1 (use -v to see invocation) ``` Package version is llvm-18-linker-tools/noble,now 1:18.1.3-1 amd64 llvm-18-linker-tools:   Installed: 1:18.1.3-1   Candidate: 1:18.1.3-1   Version table:  *** 1:18.1.3-1 500         500 http://de.archive.ubuntu.com/ubuntu noble/universe amd64 Packages         100 /var/lib/dpkg/status
2024-05-28 08:42:56 Shengjing Zhu merge proposal linked https://code.launchpad.net/~zhsj/ubuntu/+source/llvm-toolchain-18/+git/llvm-toolchain-18/+merge/466494