如何在 slackware 64 位上安装 lazarus?

如何在 slackware 64 位上安装 lazarus?

似乎我无法找到如何在 64 位 slackware 系统上安装 lazarus 的方法。

我的目标是制作一个 64 位版本的 DLL(在 Linux 中为 .so),它是用 delphi 编写的。在 32 位系统中一切正常。我使用 Arch Linux 构建 32 位版本,并使用 1.0.2 Lazarus。我可以在 32 位 slackware 13.1 中毫无问题地使用 .so 文件。

以下是我迄今为止尝试过的:

成功安装 64 位版本的 fpc (v2.4.0)。
从 svn 下载了 Lazarus 的源代码。在行处svn co http://svn.freepascal.org/svn/lazarus/trunk lazarus编译失败,提示“expected := found in” 。 在 google 上未找到解决方案。for Node in Self doavglvltree.pas

接下来:我找到了一些 Lazarus tar 文件 v0.9.30,并对其进行了提取make clean all
失败。某个文件的某行又出现了某种错误。

下一步:我找到了这个页面http://sourceforge.net/projects/lazarus/files/?source=navbar
通过进入“Lazarus Linux x86_64 RPM”链接下载了 fpc、fpc 源代码和 lazarus 1.0.4 软件包。
结果发现 RPM 属于另一个 Linux 发行版,所以installpkg无法使用。Google 告诉我我可以使用另一个已经在 slackware 中的软件包管理器,所以我就这么做了,但随后它开始吐出所有的dependency missing东西,我实在太累了,无法搜索关于它是什么以及我可以从哪里获得它的解释。每个软件包都导致更多错误。

有人可以一步一步地告诉我如何安装 lazarus 并编译我的 dll 吗?

我确信我做错了什么(我对 Linux 系统真的很陌生),但我不知道是什么,而且似乎没有任何指南告诉我。

答案1

解决方案看上去非常简单。

.rpm 文件取自SourceForge

不要使用rpm -Uvh <rpm file>,而需要使用rpm2tgz <rpm file>命令。对所有 3 个包执行此操作会将 .rpm 转换为 .tgz。

接下来只需使用installpkg <tgz file>命令逐个安装它们。这需要相当长的时间。

执行fpc -i命令将显示支持的目标系统(以及其他信息),其中需要的是“Linux for x86-64”。

我在 Slackware 13.1 x64 上安装了 xfce 4 桌面管理器,因此我使用它来运行它startxfce4。Lazarus 出现在“开发”菜单中。

打开 Lazarus 和库项目后,需要转到 项目 > 项目选项... > 编译器选项 > 代码生成。 在里面目标平台部分需要改变目标操作系统Linux目标CPU系列x86_64. 此外编译器选项 > 其他,必须添加-fPIC到自定义选项字段。

保存并构建。生成的 .so 文件现在可以在 64 位 SlackWare 下使用。

相关内容