Build current FPC and Lazarus for Raspbian/zh CN

From Free Pascal wiki

English (en) 中文(中国大陆)‎ (zh_CN)

为树莓派构建最新的 FPC 和 Lazarus

Raspbian Buster (基于Debian 10 Buster),在存储库中有开用 FPC 和 Lazarus,但是它们也同样受害于"设计决策",不允许有一个好的体验,即,使用来自 FPC/Lazarus 官方.deb的源文件软件包来平滑地重新构建的IDE也是可能的,VS 官方 Debian/Raspbian 软件包的残废体验。有人希望 Raspbian 有官方版本的 FPC/Lazarus 软件包,就像有 Intel 版本 Debian/Ubuntu 一样,也经常更新;不像这样情况(至少现在是这样)。

这个页面展示了为 Raspbian 构建自己的 FPC,FPC 源文件软件包和Lazarus软件包的步骤。示例展示了构建 Lazarus 2.0.6 和其包含的 FPC 3.0.4 的步骤。在构建最新的版本时,相应的调整。

要求:

  • 树莓派 4 版本 B, 4 GB (更少的内存将需要swap),使用合适的冷却器 (作者使用双层铝外壳作为散热器)来避免因过热而阻碍性能。
  • 最新的 Raspbian Buster 完全的更新过。

步骤:

  1. 安装 Subversion: sudo apt install subversion
  2. 获取bootstrap FPC 编译器。最新版本的编译器是使用其先前版本的编译器来编译的。
  3. 提取编译器。这将创建一个fpc-3.0.2.arm-linux目录。(注意:这个文件夹必需存在于一个 linux 文件系统上 [像文档文件夹] ,像 FAT 之类不允许接下来步骤的工作)。
  4. 在这个目录中,以 pi 用户,运行./install.sh
  5. 在四个提示处,回答Enter, n, n, n: 这是,接受建议的目录/home/pi/fpc-3.0.2,没有文本模式IDE,没有文档,没有示例。忽略tar警告。注意额外文件将被写入到/home/pi: .fpc.cfg, .config/fppkg.cfg, .fppkg/config/default中。当构建完成后,删除临时的bootstrap编译器,这些文件和 /home/pi/fpc-3.0.2安装目录需要被删除。
  6. 临时添加FPC安装目录到PATH: export PATH=$PATH:$HOME/fpc-3.0.2/bin。如果你在完成FPC构建之前由于任何原因必须重新启动,那么你必需再次执行此步骤。
  7. 测试是否一切正常: fpc abcd。这将援引刚刚安装的编译器来尝试编译一个不存在的文件(abcd)。这将显示一条包含编译器版本的多行消息。
  8. 非步骤注释:下面步骤主要基于 这个
  9. 安装开发库: sudo apt install libgtk2.0-dev libgpm-dev libncurses-dev
  10. mkdir ~/pascal
  11. cd ~/pascal
  12. svn co https://svn.freepascal.org/svn/fpc/tags/release_3_0_4 fpc,你必须联网才能完成这项工作和接下来的工作。
  13. svn co https://svn.freepascal.org/svn/lazarus/tags/lazarus_2_0_6 lazarus
  14. cd lazarus/tools/install
  15. 编辑create_fpc_deb.sh,查找包含下面内容的行: arm) ppcbin=arm; FPCArch=arm;;, (当前行109). 在其下面复制和粘贴这行,因此它将出现两次。编辑复制的行如下: armhf) ppcbin=arm; FPCArch=arm;;. 现在保存更改和退出。
  16. 运行脚本: ./create_fpc_deb.sh fpc ~/pascal/fpc/。这将使用 bootstrap 编译器编译最新的编译器源文件。它将花费大约11分钟时间。将创建一个.deb文件:fpc-laz_3.0.4-yymmdd_armhf.deb;在编译结束时将显示准确的名称。重新命名文件,使用(注意:不要输入括号): mv [在编译结束时显示的文件名称] fpc-laz_3.0.4_armhf.deb
  17. 你已经完成FPC构建。重启树莓派来摆脱临时路径。
  18. 卸载 bootstrap FPC: rm -rf ~/.fpc.cfg ~/.config/fppkg.cfg ~/.fppkg ~/fpc-3.0.2 ~/tmp。检查你刚刚做了什么: fpc abcd应该说找不到命令。
  19. 安装刚刚创建的 FPC Debian 软件包: sudo dpkg -i ~/pascal/lazarus/tools/install/fpc-laz_3.0.4_armhf.deb。检查它是否工作: fpc abcd 应该显示新安装的FPC编译器。
  20. cd ~/pascal/lazarus/tools/install
  21. ./create_fpc_deb.sh fpc-src ~/pascal/fpc/. 这个将在大约3分钟时间内构建源文件软件包: fpc-src_3.0.4-yymmdd_armhf.deb。重新命名: mv fpc-src_3.0.4-yymmdd_armhf.deb fpc-src_3.0.4_armhf.deb
  22. 编辑create_lazarus_deb.sh,查找包含以下内容的行: echo "$Arch is not supported.", (当前行 86)。复制上面3行,并在它们下面粘贴:此时,是复制行 83 到 85 ,并在行 85 和86 之间粘贴。在刚刚粘贴的行(行 86-88)中,替换sparcarmhf,替换ppcsparcppcarm。查找下面第一个 fi ;在其下面复制和粘贴(在行 91 下面复制和粘贴行 91 ,因此行 91 和 92 是相同的)。在这里对你编码员来说,你正在添加另一个 if 到一个嵌套的 if 中,与其对应的fi。现在保存并退出。
  23. ./create_lazarus_deb.sh。这将构建Lazarus IDE Debian软件包 lazarus-project_2.0.6-0_armhf.deb。它将花费大约需要15分钟。
  24. 安装FPC源文件和Lazarus软件包: sudo dpkg -i fpc-src_3.0.4_armhf.deb lazarus-project_2.0.6-0_armhf.deb
  25. 保存*.deb到另一个位置,如果以后需要可重新安装或与朋友共享:请记住这是自由软件。
  26. cd, rm -rf ~/pascal ~/tmp

你现在终于可以享受你完整地工作了,完全更新到最新的 Lazarus 。在树莓派菜单中编程部分找到它。在第一次运行它时将显示一条标题 "Error in EditorMacroScript"信息;这个错误信息也出现在 Raspbian Lazarus 中,这个页面的原作者还不知道是什么原因。现在尝试安装一个软件包,例如:lazreport;它将工作!

想帮助FPC/Lazarus社区?在互联网上的某个地方托管生产的 .deb软件包,并在论坛上留言来让每个人都知道; 为每个发布版本都重做软件包。

贡献者和更改

  • 简体中文版本由 robsean 于 2020-04-08 创建。