我曾尝试从开发人员站点/安装包
root@debian:/home/lm/Downloads/telegram# dir
Telegram tsetup.4.8.9.tar.xz
root@debian:/home/lm/Downloads/telegram# tar -xvf tsetup.4.8.9.tar.xz
Telegram/
Telegram/Updater
Telegram/Telegram
root@debian:/home/lm/Downloads/telegram# mv Telegram /opt/
root@debian:/home/lm/Downloads/telegram# cd /opt/Telegram/
root@debian:/opt/Telegram# dir
Telegram Updater
root@debian:/opt/Telegram# ./Telegram
bash: ./Telegram: cannot execute binary file: Exec format error
解压后,我将文件移动到 /opt 文件夹并避免它不在 PATH 变量中,我直接从文件夹启动它。但它给了我错误消息。如果只是从其他目录使用 PATH 提示符调用二进制文件,则相同
root@debian:/# /opt/Telegram/Telegram
bash: /opt/Telegram/Telegram: cannot execute binary file: Exec format error
我该如何解决它? (或者我在哪里做出了不正确的步骤?)
$> uname -r
6.1.0-9-686-pae
$> file Telegram
Telegram: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=88e4d9c055d23489bcc05f598f65f60d6fba74fe, for GNU/Linux 2.6.32, stripped
答案1
我的做法有什么问题吗?
一般来说,通常情况下,您甚至不应该从任何网站手动下载软件。你说你有Debian Linux,所以只需直接安装 telegram,就像安装任何其他软件一样。
sudo apt install telegram-desktop
完毕。
我下载的东西有什么问题吗?
您正在尝试为 x86_64 处理器运行 64 位可执行文件:
Telegram: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=88e4d9c055d23489bcc05f598f65f60d6fba74fe, for GNU/Linux 2.6.32, stripped
在 32 位操作系统上:
6.1.0-9-686-pae
(这686
是一个体系结构描述,说“这是英特尔 i386 的现代版本”,并且说pae
这确实是一个具有物理地址扩展的 32 位内核 - 随着 64 位处理器成为标准,这种东西立即变得过时,几乎20年前。)
所以,这是行不通的:你的机器无法运行 64 位代码。
- 如果您确实拥有 64 位计算机,请不要启动 32 位 Linux。
- 如果您有 32 位 x86 处理器,那么您的计算机一定很旧。在这种情况下,您下载的某些内容无法在您的计算机上运行。