我正在执行发布测试周期。 GNU Linux的一个测试是与Gold linker:
的集成export LD=ld.gold
make
makefile具有以下逻辑来识别Gold链接器:
# LD gold linker testing
ifeq ($(findstring ld.gold,$(LD)),ld.gold)
GOLD_OPTION = -Wl,-fuse-ld=gold
endif # Gold
然后使用它的食谱:
cryptest.exe: libcryptopp.a $(TESTOBJS)
$(CXX) -o $@ $(CXXFLAGS) $(TESTOBJS) ./libcryptopp.a $(LDFLAGS) $(GOLD_OPTION) $(LDLIBS)
然而,在对阵Cygwin的时候:
g++ -o cryptest.exe -DNDEBUG -g3 -O3 -march=native -pipe bench.o bench2.o test.o \
validat1.o validat2.o validat3.o adhoc.o datatest.o regtest.o fipsalgt.o dlltest.o \
./libcryptopp.a -Wl,-fuse-ld=gold
collect2: fatal error: cannot find 'ld'
我检查了Cygwin FAQ,但没有提到黄金。然而,它确实称出了Binutils,Gold是其中的一部分。并且端口不会拒绝-fuse-ld=gold
。
Cygwin是否支持Gold链接器?如果是这样,我该怎么办?
(Cygwin似乎可以从Gold中受益,因为链接需要很长时间。在这个测试系统上,链接cryptest.exe
大约需要15到20秒。所以这也是个人目标。
答案 0 :(得分:4)
没有。根据您链接的维基页面,黄金仅限于ELF格式。 Windows使用PE格式。