当我在新计算机上打开现有的Lazarus IDE项目时,它不想编译。
在源代码编辑器中会弹出一个包含此代码的窗口

program C05e01p;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Interfaces, // this includes the LCL widgetset
  Forms, C05e01u, LResources
  { you can add units after this };

{$IFDEF WINDOWS}{$R C05e01p.rc}{$ENDIF}

begin
  {$I C05e01p.lrs}
  Application.Initialize;
  Application.CreateForm(TfrmBoolean, frmBoolean);
  Application.Run;
end.


错误是:


C05e01p.lpr(20,1)错误:找不到资源编译器“ windres.exe”,
切换到外部模式

最佳答案

我以前碰到过这个。通常,这是由于错误安装了Lazarus而引起的。 Lazarus的64位版本尝试使用32位的windes,反之亦然。

如果要在64位计算机上安装,并且希望能够同时编译32位和64位目标,则必须安装32位Lazarus本机版本作为主要安装,然后添加64位交叉编译。否则,将导致您遇到的问题。不幸的是,没有Lazarus的官方包装,即开箱即用的Just Works™既具有32位目标又具有64位目标,并且使该项目正常工作的要求在该项目中记录得很少。更糟糕的是,Lazarus现在有许多不同的风味和“发行版”(类似于Linux发行版),并且社区在其中有些分散。

但是,那里有一个名为fpcupdeluxe的Lazarus安装程序项目,可用于组合良好的安装程序。您将要下载此工具的-386-win32版本,并使用它来安装基本版本。该工具可用于在其中安装许多不同的口味,我建议您首先从底部的“稳定”按钮开始,它将选择FPC和Lazarus的最新稳定发行版。这将为您提供32位版本的FPC / Lazarus。然后,您可以使用相同的工具并选择x86_64 / Windows交叉编译器并进行安装。

该工具功能非常强大,也可以用于安装许多常见的组件包。请记住,fpcupdeluxe和它可以安装的许多组件包都在大量开发中。 Lazarus论坛上有一个support thread表示fpcupdeluxe。我建议在决定使用该工具获取任何特定的组件包之前,始终将其更新为最新版本。

关于lazarus - 在新PC上打开lazarus项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35958289/

10-12 17:20