Cygwin支持黄金链接器吗?

Does Cygwin support the Gold linker?

本文关键字:链接 支持 黄金 Cygwin      更新时间:2023-10-16

我正在执行一个发布测试周期。GNU Linux的测试之一是与Gold链接器的集成:

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,但它没有提到Gold。然而,它确实调用了Binutils, Gold是其中的一部分。端口不拒绝-fuse-ld=gold

Cygwin支持黄金链接器吗?如果有,我该怎么做?


(Cygwin似乎可以从Gold中受益,因为链接需要很长时间。在本测试系统中,连接cryptest.exe大约需要15 ~ 20秒。所以这也是一个个人目标。

No。根据您链接的wiki页面,黄金仅限于ELF格式。Windows使用PE格式