lld
can be easily added as it is already supported. We just need to add a CLI and actions option for it. It should be treated the same as clangtidy
, etc.Hi,
I was using setup-cpp
with project_options (in my docker build) and custemize the linker option, see find_linker
.
Would be nice to install mold
or one of the other (better) Linker, rather then (gcc) ld
or gold
.
Improving C++ Compilation Times: Tools & Techniques - Vittorio Romeo - ACCU 2023
So install (?) ...
mold
(e.g. when compiler
is gcc
)lld
when compiler
is llvm
(default)sold
for Mac OSnpx setup-cpp --compiler gcc --linker mold --cmake true --ninja true --ccache true --vcpkg true
More Context
I was getting this Error: /usr/bin/ld.gold: separate-code: unknown -z option
.
CMakeOptions.cmake
find_linker(PROJECT_OPTIONS_LINKER)
MESSAGE(STATUS "Use Linker: ${PROJECT_OPTIONS_LINKER}")
project_options(
...
LINKER
${PROJECT_OPTIONS_LINKER})
Compiler found: /usr/bin/g++-13
Use Linker: gold
After that I just installed mold
and everything works:
RUN apt-get update -qq && \
# install nodejs
apt-get install -y --no-install-recommends nodejs npm && \
# install setup-cpp
npm install -g [email protected] && \
# install the compiler and tools
setup-cpp \
--nala true \
--compiler ${compiler} \
--cmake true \
--ninja true \
--task true \
--vcpkg true \
--cppcheck true \
--gcovr true \
--doxygen true \
--ccache true && \
# install custom linker
apt-get install -y --no-install-recommends mold && \
# cleanup
nala autoremove -y && \
nala autopurge -y && \
apt-get clean && \
nala clean --lists && \
rm -rf /var/lib/apt/lists/* && \
rm -rf /tmp/*
Pay now to fund the work behind this issue.
Get updates on progress being made.
Maintainer is rewarded once the issue is completed.
You're funding impactful open source efforts
You want to contribute to this effort
You want to get funding like this too