Linker failed in D compiler (dmd)

107 views Asked by At

I do not know how to fix this error, please help me to fix this problem.

  RDMD   volt
lib/src/volta/parser/base.d(470): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/ir/location.d(130): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/toplevel.d(680): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/templates.d(236): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/templates.d(350): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1048): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1076): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1261): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1404): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1427): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/expression.d(1935): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(421): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(435): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(446): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(871): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(908): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(918): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(940): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(954): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
lib/src/volta/parser/declaration.d(1277): Deprecation: opSub is deprecated.  Use opBinary(string op)(...) if (op == "-") instead.
dsupport/src/watt/text/sink.d(57): Deprecation: returning &this.sink escapes a reference to parameter this, perhaps annotate with return
ld: unknown option: -Wl,-search_paths_first
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Error: linker exited with status 1
make: *** [GNUmakefile:150: volt] Error 1
  • OS: macOS

  • DMD installation: brew install dmd

  • Clang string:

clang version 10.0.1 
Target: x86_64-apple-darwin17.7.0
Thread model: posix
InstalledDir: /usr/local/opt/llvm/bin
  • Linker string:
@(#)PROGRAM:ld  PROJECT:ld64-253.9
configured to support archs: armv6 armv7 armv7s arm64 i386 x86_64 x86_64h armv6m armv7k armv7m armv7em (tvOS)
LTO support using: Apple LLVM 7.0.2 (clang-700.1.81)
1

There are 1 answers

0
Geod24 On

Why are you using LD64 ? It is still very buggy on OSX, you should use the system linker instead.