[llvm-dev] Clang is a resource hog, the installers for Windows miss quite some files, and are defect!
Stefan Kanthak via llvm-dev
llvm-dev at lists.llvm.org
Thu Aug 20 11:45:33 PDT 2020
Hi @ll,
BUGS #1 & #2:
~~~~~~~~~~~~~
The installer LLVM-10.0.0-win64.exe dumps the following DUPLICATE files
in "C:\Program Files\LLVM\bin", WASTING about 500MB disk space, which is
nearly a third of the disk space occupied by the whole package:
| DIR "C:\Program Files\LLVM\bin" /O:-S
...
| 25.03.2020 12:15 83.258.880 clang-cl.exe
| 25.03.2020 12:03 83.258.880 clang.exe
| 25.03.2020 12:15 83.258.880 clang++.exe
| 25.03.2020 12:15 83.258.880 clang-cpp.exe
...
| 25.03.2020 12:15 57.812.480 lld-link.exe
| 25.03.2020 12:05 57.812.480 lld.exe
| 25.03.2020 12:15 57.812.480 ld.lld.exe
| 25.03.2020 12:15 57.812.480 ld64.lld.exe
| 25.03.2020 12:15 57.812.480 wasm-ld.exe
...
| 25.03.2020 12:15 18.182.144 llvm-ranlib.exe
| 25.03.2020 12:15 18.182.144 llvm-lib.exe
| 25.03.2020 12:00 18.182.144 llvm-ar.exe
|
| FC.exe "C:\Program Files\LLVM\bin\clang.exe" "C:\Program Files\LLVM\bin\clang-cl.exe"
| Vergleichen der Dateien C:\PROGRAM FILES\LLVM\BIN\clang.exe und C:\PROGRAM FILES
\LLVM\BIN\CLANG-CL.EXE
| FC: Keine Unterschiede gefunden
|
| FSUTIL.exe Hardlink List "C:\Program Files\LLVM\bin\clang.exe"
| \Program Files\LLVM\bin\clang.exe
...
Dito for LLVM-10.0.0-win32.exe:
| DIR "C:\Program Files (x86)\LLVM\bin" /O:-S
...
| 25.03.2020 11:21 77.862.912 clang-cpp.exe
| 25.03.2020 11:21 77.862.912 clang-cl.exe
| 25.03.2020 11:21 77.862.912 clang++.exe
| 25.03.2020 11:13 77.862.912 clang.exe
...
| 25.03.2020 11:22 54.811.648 ld.lld.exe
| 25.03.2020 11:22 54.811.648 ld64.lld.exe
| 25.03.2020 11:15 54.811.648 lld.exe
| 25.03.2020 11:22 54.811.648 lld-link.exe
| 25.03.2020 11:22 54.811.648 wasm-ld.exe
...
| 25.03.2020 11:21 17.346.560 llvm-ranlib.exe
| 25.03.2020 11:10 17.346.560 llvm-ar.exe
| 25.03.2020 11:21 17.346.560 llvm-lib.exe
Ever heard of hardlinks?
NTFS supports them since its introduction nearly 30 years ago, and
Windows NT provides an API to create them since 24 years.
BUGS #3 & #4:
~~~~~~~~~~~~~
Although the compiler/linker/... installed with both packages are able
to produce 32-bit as well as 64-bit executables, 32-bit executables
can't be linked with the 64-bit package, and vice versa: each package
contains only the clang_rt.*.lib for its own architecture.
The libraries for 32-bit targets are missing in LLVM-10.0.0-win64.exe,
and vice versa.
| DIR "C:\Program Files\LLVM\lib\clang\10.0.0\lib\windows\*-i386.lib"
...
| Datei nicht gefunden
...
| DIR "C:\Program Files (x86)\LLVM\lib\clang\10.0.0\lib\windows\*-x86_64.lib"
...
| Datei nicht gefunden
BUG #5:
~~~~~~~
Poor souls who want to install the 64-bit package after/aside the
32-bit package (or vice versa) are greeted with the following BOGUS
message from the installers:
______________________________________________________
| Installation von LLVM
|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
| ^
| /!\ LLVM is already installed.
| ¯¯¯
| Do you want to install the old version before
| installing the new one?
|
| [ Ja ] [ Nein ] [ Abbrechen ]
|
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Also note the denglish kauderwelsch: the title bar and the buttons
are localized, but the message text isn't.
NOT AMUSED
Stefan Kanthak
More information about the llvm-dev
mailing list