【问题标题】:Making Lazarus compile for Windows CE为 Windows CE 编译 Lazarus
【发布时间】:2018-10-07 15:43:43
【问题描述】:

我一直在尝试将 Lazarus 设置为针对 Windows CE 5.0 进行编译,特别是针对摩托罗拉 MK-4000。但是,我并没有取得太大的成功,而且instructions to set up the IDE 似乎已经过时了。

我正在使用适用于 Windows x64 的 Lazarus v1.8.4。

当我被告知从与 Lazarus 相同的下载页面下载并安装 cross-arm-wince 时,问题就开始了。那里没有这样的东西。但是我确实找到了lazarus-1.8.4-fpc-3.0.4-cross-i386-win32-win64.exe,这是我能找到的唯一提到“十字架”的地方。不是我需要的,但还是安装了。

现在我开始在 IDE 中设置我的项目。我启动了一个新应用程序,但没有找到Project -> Project Options -> Compiler Options -> Paths -> LCL Widget TypeProject -> Project Options -> Compiler Options -> Paths -> Select another widget set (Macro LCLWidgetType),也没有看到任何提及“Widget”。

Target OS 和 CPU Family 的下两条指令没问题,我找到了那些设置并更改为 WinCEarm

保存项目选项后,我看到一条错误消息:

编译器“C:\lazarus\fpc\3.0.4\bin\x86-64-win64\fpc.exe”不支持目标arm-wince

除了我找不到的“小部件”设置之外,现在我尝试继续构建一个新的未更改的应用程序。但毫不奇怪,我收到一个错误:

错误:ppcarm.exe 无法执行,错误信息:无法执行 ""ppcarm.exe" -Twince -MObjFPC -Scghi -O1 -g -gl -l -vewnhibq -FuC:\lazarus\packager\注册\ -FUC:\lazarus\packager\units\arm-wince\ fcllaz.pas


我继续从 FPC 3.0.0(我的 Lazarus 版本附带 3.0.4)安装了 arm-wince,并将它安装到 Lazarus 目录之外的自己的 FPC 目录中。但是我对 FPC/Lazarus 非常陌生,不知道如何使 IDE 真正与其他编译器一起工作。

作为一个肮脏的尝试,我暂时将编译器从 3.0.0 目录复制到 3.0.4 的,第一次尝试失败(我当时没有注意到错误消息),但我又试了一次它编译了!显然,将文件盲目地转储到 bin 中不是适当的解决方案,因为我确信有一种适当的方法来配置它。它无论如何都不会在设备上运行,只是在任务栏中显示标题,并且不会打开任何 UI。


让 Lazarus 为 Windows CE 编译我缺少什么?

【问题讨论】:

    标签: windows-ce lazarus freepascal


    【解决方案1】:

    嗯,这是一个 win32->win64 交叉编译器。你需要一个 win32 -> arm-wince 编译器。 (假设设备是 arm 而不是 i386)

    不是一回事。似乎 arm-wince 的预构建已经停止,所以你必须自己构建。尝试阅读buildfaq

    对于 3.0.0,相关的交叉编译器是预先构建的,可能对于简单的测试就足够了:ftp://ftp.freepascal.org/pub/fpc/dist/3.0.0/arm-wince/

    【讨论】:

    • 无论如何,我找不到那个“小部件”设置该怎么办?
    • 我设法让它编译,但只能通过反复试验。为我的 Q 添加了更新。编译的 EXE 尚未测试,因为设备现在不可用,但至少我确认我无法在 Win32/Win64 下运行它(这是一件好事,因为它适用于 WinCE )。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-21
    • 1970-01-01
    相关资源
    最近更新 更多