Closed Spixmaster closed 4 months ago
The error is caused by makepkg
from Arch Linux applying -z
. Maybe ld
should be used instead of ld.gold
in this project.
This can be overridden using the USE_LD_GOLD
CMake variable.
But overall, we do seem to explicitly select ld.gold
for linking, though TBH I don't have a strong preference on the matter and never investigated why this was done. This code has been there since very early in the project history. Any specific reasons to revert to ld
?
@cameel I have never bothered about the difference. I think that ld supports more options and is the standard. It is up to you. Since it is configurable, this is no big issue. Maybe it would be a good approach to just switch the default value to OFF
.
@cameel Maybe an interesting side note. The resulting installation shrunk from 14.92 MiB to 14.33 MiB when switching from ld.gold to ld. Installation via https://aur.archlinux.org/packages/solidity. Considering the installation contains much documentation which was not affected by a change of the linker, the binaries must be the reason for all the size difference.
Gesamtgröße der installierten Pakete: 14,33 MiB
Größendifferenz der Aktualisierung: -0,59 MiB
Thanks for the info. We'll consider it (I created an issue: #15199), though TBH it's pretty low on our list of priorities. The decreased size does seem nice, but the difference is not that large and I'm not sure about potential downsides. Investigating that may eat time that is probably better spent on other, much more pressing things, like fixing the horrible compilation times via IR.
v0.8.26 does not build.
results in