【问题标题】:Can Lazarus 64-bit for Windows compile to 64-bit for Windows?Lazarus 64-bit for Windows 可以编译成 64-bit for Windows 吗?
【发布时间】:2014-03-16 17:36:18
【问题描述】:

我下载了,我以为是64位版本的Lazarus:

虽然它下载的是 32 位版本:

而且安装后IDE是32位的:

它会构建 32 位二进制文​​件:

将定位选项更改为 win64win64win64

给出 Lazarus 不支持 64 位的错误:

阅读有些过时的Cross compiling Wiki page 提供了有关如何使 64 位 Lazarus 在 64 位机器上工作的说明:

从win32到win64

如果您正在编译 fpc 的 2.1.1 或更高版本,您可以这样做:

$ make all OS_TARGET=win64 CPU_TARGET=x86_64

然后

$ make crossinstall OS_TARGET=win64 CPU_TARGET=x86_64

如果你遵循它,只会给出几千个错误:

常见的建议是放弃 Lazarus IDE altogether,并使用称为 CodeTyphoon 的分支。下载 500 MB 并安装它,我在任何地方都找不到 IDE:

这令人困惑,因为我认为 CodeTyphoon 是一个 Pascal 可视化编程环境。

在我继续之前

在我乱七八糟地下载千兆字节的东西之前,让我直接问一下:

Lazarus 64-bit for Windows 可以编译成 64-bit for Windows 吗?

是否有适用于 Windows 的 64 位 Lazarus,可以创建 64 位 Windows 二进制文件?我错过了什么,还是那个功能还没有?

如果有能力,至少有人可以同情我的困惑是可以理解的吗?

【问题讨论】:

  • 网站上的 64 位链接似乎有问题。访问 here 以获取 64 位 IDE。在同一页面下方,文字建议不要使用 64 位 IDE,也不要生成 64 位应用程序。
  • @SertacAkyuz 这让事情变得更加混乱,正如它所说的那样“Lazarus 团队建议使用 32 位版本的 Lazarus,即使用于生成 64 位应用程序。” - 这是它似乎无法做到的事情。
  • 在上面的黑色控制台屏幕中,您运行的不是FPC打包的make,而是Delphi打包的make。检查您的配置。
  • (我的意思是,如果你运行 Lazarus,FPC 在 Delphi 之前位于 %PATH%,例如通过创建一个执行 PATH d:\lazarus\fpc\bin\i386-win32;%PATH 的批处理文件在开始拉撒路之前。
  • TLDR;我使用ShowMessage(inttostr(sizeof(pointer))); 来确定 exe 是 64 位还是 32 位 :)

标签: windows 64-bit lazarus


【解决方案1】:

以下内容来自 SourceForge 下载页面上的 README.txt 文件(http://sourceforge.net/projects/lazarus/files/Lazarus%20Windows%2032%20bits/Lazarus%201.2/http://sourceforge.net/projects/lazarus/files/Lazarus%20Windows%2064%20bits/Lazarus%201.2/)。但是,这些 readme.txt 文件显然没有包含在实际安装中。

我已验证安装插件可以让您构建 64 位应用程序。

两件事:

  1. 有一个用于在 32 位 Lazarus IDE 中构建 Win64 应用程序的插件:
  • 用于构建 64 位 Windows 应用程序的附加组件:

    lazarus-1.2.0-fpc-2.6.2-cross-x86_64-win64-win32.exe

    这个文件可以作为附加组件安装到 32 位 Lazarus IDE(在 Windows 32 或 64 位系统上),如果你想开发 64位Windows也是。如果您将它安装在 64 位 Windows PC 上 使用 32 位 Lazarus IDE,您还可以调试 64 位 应用程序。

  1. Lazarus 主页上 64 位 Lazarus IDE 的链接不正确(指向 Win32 版本)。链接应该是:

    http://sourceforge.net/projects/lazarus/files/Lazarus%20Windows%2064%20bits/Lazarus%201.2/lazarus-1.2.0-fpc-2.6.2-win64.exe/download

如果您使用 64 位 IDE,您将需要一个类似(但不同)的插件来构建 32 位二进制文​​件。

【讨论】:

  • 这当然是混乱。本来应该是 64 位的版本,实际上是 32 位的版本。我不知道同一个下载是否包含两者,并且他们使用了一些花哨的东西。实际上,这只是他们的一个错误。添加 64 位插件解决了我的实际问题。
  • 不推荐使用 FPC-2.6.x 的 64 位 IDE。这些 FPC 版本不支持 SEH,使用 SEH 的插件可能会导致打开文件对话框崩溃。
  • Ian:请注意帖子中第一张图片的底线。那里有一个指向“其他”的链接。一般来说,我不推荐 CodeTyphon。添加的层很薄,支持声音但不是太强,项目不是很透明
猜你喜欢
  • 2019-04-04
  • 1970-01-01
  • 2010-11-26
  • 2011-08-04
  • 1970-01-01
  • 2011-09-11
  • 1970-01-01
  • 1970-01-01
  • 2017-03-25
相关资源
最近更新 更多