【问题标题】:Building cross-platform Delphi applications构建跨平台的 Delphi 应用程序
【发布时间】:2011-06-08 07:25:03
【问题描述】:

我下载了 Lazarus,但也使用了 Embarcadero Delphi IDE。我有一个关于构建跨平台 Delphi 应用程序的问题。

如何在win32环境下编译?我从 Lazarus 网站阅读了 wiki,它解释了如何做,但我仍然不明白。是否可以在 Linux 和 MacOS 的 win32 环境下构建和编译应用程序?如果可能的话,有人可以详细解释一下如何做到这一点。

编辑: 现在是时候谈谈我认为的 Delphi IDE 的新 XE2 版本了 :)

谢谢

【问题讨论】:

  • FPC/Lazarus Delphi,不管它有多兼容。现在你不能构建“跨平台的 Delphi 应用程序”(恕我直言,Prims 不是 Delphi,尽管它的名字......),直到 Embarcadero 提供它的跨平台产品(计划中,但尚未推出)
  • Idsadon,这不是 evilone 要求的。
  • 问这个问题的最佳地点是 Lazarus 论坛。我相信那个地方的人会帮助你的。
  • 仍然没有任何满足我需求的答案...
  • 讨论未发布的 XE2 不会有建设性。如果您在发布后有具体问题,值得提出。恢复一个将近 9 个月大的问题是不行的。

标签: delphi cross-platform pascal cross-compiling lazarus


【解决方案1】:

lazarus wiki 站点中已经存在您所要求的内容,您需要阅读这些文章。

【讨论】:

  • 我写了我不理解这个 lazarus wiki 文本,如果有人可以逐步解释我。我不需要有关如何编写跨平台代码的信息,而是关于为 etc linux 构建的教程 - 编译后的文件不是可执行文件,但与 linux 兼容。
  • @evilone,已经发布的一些链接是分步指南。您必须尝试按照说明进行操作,当您遇到particular 问题时,您可以在 StackOverflow 中再次询问。
  • @PRUZ,假设您想从 Windows 编译应用程序的 Linux 变体:“交叉编译”链接告诉您这有点棘手,请阅读“BuildFaq”。 “BuildFaq”的权威版本是PDF,但那是一个扫描文档,让你眼花缭乱,所以我假设每个人都会阅读HTML版本。 HTML 版本有一小段关于如何交叉编译 Lazarus 本身的 windows-to-linux,最后有这个可爱的警告This should build a Linux lazarus. However most likely, it will bomb out missing some library...
  • @PRUZ,我很欣赏这些链接,因为我将自己解决这个问题,但 lazarus wiki 实际上并没有包含使 windows-to-linux 交叉编译成为可能所需的信息。
  • buildfaq 根本不被扫描。不知道你是怎么想到的。
【解决方案2】:

虽然交叉编译到非 Windows 目标可能的(而且不是那么难),但要习惯 fpc/lazarus 并在第一步中进行交叉编译是一个太过分的桥梁。这是因为 Linux 不是一个非常同质的目标,处理这种变化需要一些了解库和链接在 Linux 上的工作方式。这破坏了“通用” linux 的一键式可下载交叉编译设置。我知道,这种对每个人都开箱即用的一键式东西会很棒,但它不会发生(或仅适用于非常有限的分发版本组合)

使用 FPC 进行交叉编译并不是非常困难或火箭科学,但行话和细节的数量可能会让外行大吃一惊,如果没有背景知识,由于轻微的配置错误很难诊断问题

我建议先熟悉 Lazarus/FPC,然后才能进行交叉编译。 (并且已经提到的 buildfaq 列出了一些原因)。

底线:在 Windows 上安装 lazarus 并开始移植您的应用程序。如果成功,请开始使用 linux 安装(或 VM)来熟悉 Linux,以及它下的 Lazarus。无论如何,您都需要安装 linux 来进行测试。

然后才开始考虑交叉编译以加快进程。

【讨论】:

    【解决方案3】:

    CodeTyphon是一款功能强大的Lazarus/FPC一键轻松安装包,用于跨平台原生开发。它已经支持 4 个 CPU/OS 主机(Win32、Win64、Linux32、Linux64)和 16 个 CPU/OS 目标(arm-Wince、arm-Linux、arm-Embedded , arm-gba, arm-nds, i386-Win32, i386-Linux, i386-FreeBSD, i386-Haiku, x86_64-Win64, x86_64-Linux, x86_64-FreeBSD, powerpc-Linux, powerpc64-Linux, sparc-Linux, sparc -索拉里斯)。 Lazarus/FreePascal 支持更多,但其他尚未集成到 CodeTyphon 中。我有没有提到它是免费的?一个代码来统治它们;-)

    关键是您不必浪费时间来设置跨平台环境,因为已经有人为您完成了艰苦的工作。

    【讨论】:

    • avra,这里说“这个项目被许可为:免费软件。”
    • 这个项目可以让你更轻松地使用 FPC/Lazarus 安装跨平台链
    • 所以如果你对那个项目了解这么多,请告诉我如何在 windows 环境下构建 linux 应用程序
    • 我对这个项目的了解刚好能满足我的需要。你没有检查我给的链接吗?从那里,其中一个链接指向pilotlogic.com/codetyphon/help,其中有一个 WinCE 交叉构建示例(主题“7.1 WinCE 交叉构建”)。其他系统也是同样的原理。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-12
    • 2018-03-07
    • 2011-06-14
    • 2021-07-21
    • 2011-01-22
    相关资源
    最近更新 更多