使用Lazarus编写Mac的代码

5
我在Lazarus的Free Pascal上做了一些工作。所以当一个客户要求我为Mac编写应用程序时,在最初的“不可能完成”的阶段之后(跟着是一个ASP.NET的可能阶段),我考虑使用Lazarus来编写它。
问题是,我只有一个运行Mac OSX的虚拟机,这意味着我不想在Mac上开发。然而,我似乎无法让我在Windows上用Lazarus编写的应用程序在Mac上运行。我已经尝试使用Lazarus Wiki进行部署,但MACOS文件夹是空的,因此当我将其放在Mac上时,它无法运行应用程序。
做到这一点的最佳方法是什么,还是我在打错树?

1
显然你有一个问题,但你没有描述出具体是什么问题。这使得帮助变得困难。请更加具体地说明。 - David Heffernan
3个回答

4

我按照Noah的描述尝试了这种方法,令我惊讶的是,在Windows上开发约三周后,只需花费大约10分钟即可在Mac上运行应用程序。

我的方法是在一台运行雪豹系统的旧Mac Mini上安装Xcode 4.3,然后像这里所述,使用fink版本安装Lazarus。 这需要一些时间,但在一个晚上完成了。

然后我只需将我的文件夹复制到Mac上,在Mac上打开lpi文件,进行编译。 编译失败,因此我删除了Windows引用,重新编译,就可以正常运行了。 我真的很惊讶。


4
似乎您想进行交叉编译,理论上可行,但由Marco提到的原因可能并不实际。作为替代方案,您可以在MacOX机器上安装XCode、FreePascal和Lazarus。您仍然可以在Windows/Linux上进行开发和一些测试。当您达到某个里程碑时,可以将源代码复制到Mac上并编译应用程序来进行测试并提供给用户。
即使可以轻松地进行交叉编译,在平台之间仍存在一些细微差异,所以(特别是对于GUI应用程序),您需要在实际的MacOS机器上测试它,然后再将其提供给客户。

3
你用什么链接器(linker)和汇编器(assembler)生成二进制文件?据我所知,最近的OS X版本中链接器不可用。我认为你所想要的(交叉编译到Mac)在最近的版本中是不可能的(而我过去曾经为PowerPC自己完成这个任务)。
最简单的方法是在二进制文件上使用Unix的“file”命令,查看哪些内容被生成,并确保其包含有“MachO”。如果你有Linux安装程序(其中此命令相当普遍),那么这将是最简单的方法,但也可以在Windows上找到版本(cygwin、mingw和第三方)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接