32 位程序无法在 19.04 64 位上运行

Gle*_*enn 3 64-bit 32-bit

我使用 CCS 命令行编译器进行 PIC 编程。十多年来,我一直在使用它并对其进行升级,我对此很满意。我最近更新到 Ubuntu 19.04 64 位,现在程序失败并出现 Seg Fault。

我所有的其他 32 位软件似乎都运行良好,CCS 支持说它应该在 64 位上运行,但除此之外,他们几乎没有提供其他支持。除了那个答案,他们甚至不回复。

有什么办法可以强制程序使用 32-libs 运行吗?我只是假设这可能是问题所在。

任何帮助将不胜感激。

这是ldd结果:

ldd ccsc.bin  
    linux-gate.so.1 (0xf7fcb000)  
    libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7f85000)  
    libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf7f7f000)  
    libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf7d9f000)  
    /lib/ld-linux.so.2 (0xf7fcc000)
Run Code Online (Sandbox Code Playgroud)

我已经在 '/lib/i386-linux-gnu/' 中找到了所有这些库,除了Linux-gate.so.1'。我尝试了sudo apt-get -y install Linux-gate
但没有找到。

好的,所以我了解到 Linux-gate 是一个虚拟库,当然不是我的问题。所有依赖项似乎都已安装。CCS 不会提供任何帮助(我猜是因为我是唯一拥有 64 位机器的 Linux 用户)任何人的任何帮助将不胜感激。我正在将代码转换为 XC8,但这是一个痛苦的过程。

zx4*_*485 5

您似乎缺少 x86 兼容层。要安装它,您需要安装一些依赖项(IIRC 以下):

sudo dpkg --add-architecture i386
sudo apt-get -y install lib32z1 libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
Run Code Online (Sandbox Code Playgroud)

您可能需要安装其他库,但这些库可能是最受欢迎的。