基于ARM Linux的PA服务器

qv7cva1a  于 2023-10-16  发布在  Linux
关注(0)|答案(1)|浏览(267)

我需要在Debian ARM虚拟机上运行PAServer。
我最近升级到了苹果Mac Studio M2硅电脑。Mac Studio是ARM,因此我无法虚拟化X86/X64。但是,我可以使用Parallels将Debian ARM Linux虚拟化为虚拟机(VM)。VM运行得很好,但显然PAServer二进制文件不兼容,因为用于Linux的PAServer二进制文件是AMD 64。
为了让PAServer二进制文件在ARM 64 VM上运行,我将AMD 64架构添加到Debian ARM VM中,如下所示:

sudo apt-get install binfmt-support qemu-user-static
sudo update-binfmts --display
sudo dpkg --add-architecture amd64
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install hello:amd64
hello

添加AMD 64架构起作用了,因为安装在倒数第二行的'hello'二进制文件按预期启动。
然而,当我尝试启动PAServer时,我得到了以下错误:

./paserver: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory

此错误已通过为AMD 64安装zlib 1g修复,如下所示:

sudo apt install zlib1g:amd64

安装zlib 1g成功了,我现在已经在Debian ARM VM上运行了PAServer。
以下是我无法克服的错误:
我以为我是自由的,我使用 Delphi 连接配置文件管理器添加一个新的“Debian ARM”配置文件,然后试图更新SDK,导致弹出窗口中出现以下错误:

Directory does not exist: /usr/include/x86_64-linux-gnu/
Directory does not exist: /usr/include/x86_64-linux-gnu/c++/
Directory does not exist: /usr/lib/gcc/x86_64-linux-gnu/
Directory does not exist: /usr/lib/gcc/x86_64-redhat-linux/
Directory does not exist: /usr/lib/gcc/x86_64-linux-gnu/
Directory does not exist: /usr/lib/gcc/x86_64-redhat-linux/

就差一点...
我认为这些错误可能无关紧要,所以我尝试创建一个针对Debian ARM配置文件的多设备应用程序,但构建失败。
我觉得我很接近了,但这是我的知识用完的地方。看起来 Delphi 可能正在寻找丢失的文件夹来编译二进制文件,但是文件夹/文件丢失了。
我尝试手动创建文件夹,希望更新SDK可以推送丢失的文件,但这不起作用。
我有两个问题:
1.有人知道PAServer是否会作为Linux的ARM 64二进制文件发布吗?
1.有人设法让PAServer在ARM 64 Linux VM上运行吗?
我的设置是:

  • RAD Studio 11
  • PAServer版本22.0

凯利

bxpogfeg

bxpogfeg1#

我没有答案的问题1(本地ARM版本的PAServer)。
然而,我确实设法让我的Firemonkey应用程序在Debian ARM上编译:
我不得不安装这些额外的软件包:

sudo apt install binutils-aarch64-linux-gnu:amd64
sudo apt install libc6-dev-arm64-cross:amd64
sudo apt install gcc:amd64
sudo apt install libgl1-mesa-dev:amd64
sudo apt install libgtk-3-0:amd64

最终的结果是,我现在可以完全在我的Mac Studio上开发 Delphi Firemonkey应用程序,而不必使用单独的X64硬件来托管运行PAServer的Debian系统。

相关问题