www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.ldc - collect2: fatal error: cannot find 'ld'

reply Jack <jckj33 gmail.com> writes:
I just installed ldc on open suse[1] but when I went to compile I 
get this error:

collect2: fatal error: cannot find 'ld'
compilation terminated.
Error: /usr/bin/cc failed with status: 1
the command:
whereis ld
return
ld: /usr/bin/ld /usr/bin/ld.bfd /usr/share/man/man1/ld.1.gz 
/usr/share/info/ld.info.gz
So at least the terminal can find it in the PATH variable. How can I fix this for ldc? [1]: with this script curl -fsS https://dlang.org/install.sh | bash -s ldc
Dec 08 2020
parent reply Jack <jckj33 gmail.com> writes:
On Tuesday, 8 December 2020 at 20:25:24 UTC, Jack wrote:
 I just installed ldc on open suse[1] but when I went to compile 
 I get this error:

collect2: fatal error: cannot find 'ld'
compilation terminated.
Error: /usr/bin/cc failed with status: 1
the command:
whereis ld
return
ld: /usr/bin/ld /usr/bin/ld.bfd /usr/share/man/man1/ld.1.gz
/usr/share/info/ld.info.gz
So at least the terminal can find it in the PATH variable. How can I fix this for ldc? [1]: with this script curl -fsS https://dlang.org/install.sh | bash -s ldc
fixed with sudo zypper install binutils-gold for some reason reinstall binutils didn't work but install binutils-gold put ld somewhere where ldc2 could find
Dec 08 2020
parent Johan Engelen <j j.nl> writes:
On Tuesday, 8 December 2020 at 20:41:42 UTC, Jack wrote:
 On Tuesday, 8 December 2020 at 20:25:24 UTC, Jack wrote:
 I just installed ldc on open suse[1] but when I went to 
 compile I get this error:

collect2: fatal error: cannot find 'ld'
compilation terminated.
Error: /usr/bin/cc failed with status: 1
the command:
whereis ld
return
ld: /usr/bin/ld /usr/bin/ld.bfd /usr/share/man/man1/ld.1.gz
/usr/share/info/ld.info.gz
So at least the terminal can find it in the PATH variable. How can I fix this for ldc? [1]: with this script curl -fsS https://dlang.org/install.sh | bash -s ldc
fixed with sudo zypper install binutils-gold for some reason reinstall binutils didn't work but install binutils-gold put ld somewhere where ldc2 could find
If you compile with `-v`, you'll see that LDC calls `cc` for linking, and passes -fuse-ld=gold to cc on Linux, forcing the use of ld.gold. You can prevent this by passing `-linker=` (empty) to LDC, such that the default linker is used by `cc`. cheers, Johan
Dec 08 2020