Lazarus的环境配置让人有点犯晕,对于刚从delphi转到lazarus上的我来说,每次新建工程都会遇到一堆Can't find unit xxxx used by xxxx的问题,问题虽然不大,但确实让人郁闷,明明路径都设置了,怎么就找不到单元呢?
首先介绍一下Lazarus的搜索编译单元方面和delphi的区别
1.Lazarus只是Free Pascal(FPC)的外壳,实际上所有编译的工作都是由FPC完成的,本文讲述的配置方法其实是针对FPC的。
2.Lazarus虽然提供了大量的单元,但绝大部分都没加入搜索路径,需要自己手工加入到搜索路径里,这点和delphi不一样。Lazarus默认的搜索文件路径是在一个配置文件里
<lazarus_home>\fpc\2.2.2\bin\<$FPCTARGET>\fpc.cfg
在fpc.cfg文件里声明了Lazarus默认的搜索路径,可以看到,默认搜索路径很少,这就是为什么总是出现找不到单元的原因了。
3..inc文件的检索方式也和delphi中不一样,并不是把.inc文件放到单元文件的搜索路径里,lazarus就能找到.inc文件了。
4.Lazarus IDE可以找到的单元,编译器未必能找到,这点和delphi区别很大,delphi中ide和编译器使用的搜索路径是相同的。
ok,明白了这点,就可以开始配置的详细介绍了
打开工程编译选项->路径
分别介绍如下: