Assembly 如何在ubuntu 20.04上安装x86_64-elf-ld?

Assembly 如何在ubuntu 20.04上安装x86_64-elf-ld?,assembly,kernel,x86-64,osdev,binutils,Assembly,Kernel,X86 64,Osdev,Binutils,我正在尝试编写一个操作系统内核,我需要某种依赖性来将程序集编译为iso二进制文件。依赖项是x86_64-elf-ld。我找不到在ubuntu online上安装它的任何资源,所以我想我会问一下internet。当你安装编译器时,ld与其他程序一起安装在一个包中。你可以试着用 ld-melf_i386测试.o-o测试 这个解决方案帮助了我 如果确实需要,您可以使用以下命令从最新的binutils源代码构建x86_64-elf-ld: wget https://ftp.gnu.org/gnu/bin

我正在尝试编写一个操作系统内核,我需要某种依赖性来将程序集编译为iso二进制文件。依赖项是x86_64-elf-ld。我找不到在ubuntu online上安装它的任何资源,所以我想我会问一下internet。

当你安装编译器时,ld与其他程序一起安装在一个包中。你可以试着用

ld-melf_i386测试.o-o测试

这个解决方案帮助了我


如果确实需要,您可以使用以下命令从最新的
binutils
源代码构建
x86_64-elf-ld

wget https://ftp.gnu.org/gnu/binutils/binutils-2.36.1.tar.xz
tar Jxf binutils-2.36.1.tar.xz
mkdir binutils
pushd binutils
 ../binutils-2.36.1/configure --prefix=/usr/local --target=x86_64-elf --program-prefix=x86_64-elf- 
make all
sudo make install
popd

ls -ail /usr/local/bin/x86_64-elf-*
13136197 -rwxr-xr-x 1 root root  5946864 Feb 27 23:53 /usr/local/bin/x86_64-elf-addr2line
13136193 -rwxr-xr-x 2 root root  6194776 Feb 27 23:53 /usr/local/bin/x86_64-elf-ar
13136205 -rwxr-xr-x 2 root root  9218448 Feb 27 23:53 /usr/local/bin/x86_64-elf-as
13136202 -rwxr-xr-x 1 root root  5890200 Feb 27 23:53 /usr/local/bin/x86_64-elf-c++filt
13136199 -rwxr-xr-x 1 root root   262680 Feb 27 23:53 /usr/local/bin/x86_64-elf-elfedit
13136206 -rwxr-xr-x 1 root root  6624808 Feb 27 23:53 /usr/local/bin/x86_64-elf-gprof
13136209 -rwxr-xr-x 4 root root 10380024 Feb 27 23:53 /usr/local/bin/x86_64-elf-ld
13136209 -rwxr-xr-x 4 root root 10380024 Feb 27 23:53 /usr/local/bin/x86_64-elf-ld.bfd
13136200 -rwxr-xr-x 2 root root  5996448 Feb 27 23:53 /usr/local/bin/x86_64-elf-nm
13136196 -rwxr-xr-x 2 root root  6900392 Feb 27 23:53 /usr/local/bin/x86_64-elf-objcopy
13136192 -rwxr-xr-x 2 root root 10369928 Feb 27 23:53 /usr/local/bin/x86_64-elf-objdump
13136195 -rwxr-xr-x 2 root root  6194800 Feb 27 23:53 /usr/local/bin/x86_64-elf-ranlib
13136198 -rwxr-xr-x 2 root root  4391904 Feb 27 23:53 /usr/local/bin/x86_64-elf-readelf
13136191 -rwxr-xr-x 1 root root  5936152 Feb 27 23:53 /usr/local/bin/x86_64-elf-size
13136194 -rwxr-xr-x 1 root root  5932576 Feb 27 23:53 /usr/local/bin/x86_64-elf-strings
13136201 -rwxr-xr-x 2 root root  6900384 Feb 27 23:53 /usr/local/bin/x86_64-elf-strip

请注意,您可能必须首先在Ubuntu或Debian上安装以下一个或多个软件包:build essential、flex、bison、libisl dev、texinfo texlive。

仅使用standard
ld
就可以了。它不起作用。如果需要进一步帮助,请给出具体的错误说明。因为您使用的是x86-64 ELF平台(GNU/Linux),系统
ld
就是你想要的。
别名x86_64-elf-ld=ld
如果你想复制/粘贴使用该命令的生成指令。OP想要一个64位链接器,而不是32位链接器…
-melf_i386
完全是错误的选择。我发送了解决方案,如果这个或任何答案解决了你的问题,它将帮助我@Lambda BanquoASE通过点击复选标记来考虑。这向更广泛的社区表明,你已经找到了解决方案并给回答者和你自己带来了一些声誉。当然,没有义务这样做。