On Tue, 17 Mar 2015 14:54:12 -0700 Mehmet Erol Sanliturk <m.e.sanlit...@gmail.com> wrote:
> On Tue, Mar 17, 2015 at 2:12 PM, Mattias Gaertner <nc-gaert...@netcologne.de > > wrote: > >[...] > > > I am using a batch or shell script file to erase all of the .ppu and .o > > > files before starting the compilation . > > > > > > Selecting "Build" from Lazarus "Run" menu is starting to build Lazarus > > > itself which is NOT possible because Lazarus is owned by the "root" . > > > > I'm not sure what you mean 'build Lazarus itself' and 'Lazarus is owned > > by the "root"'. > > Can you give more details? > > > Units supplied by the Lazarus , i.e. , when Lazarus is installed by the > "root" , such as > > /usr/lib64/lazarus/ > > which its owner is "root" . Ok. So /usr/lib64/lazarus/ is readable by normal users, but not writable. This is normal when you installed for example a deb or rpm package. The deb/rpm packages install ppu files compiled with a specific Widgetset and some default compiler options. > When "Build" is selected from the "Run" menu of Lazarus , it should NOT > include building of units installed by the Lazarus , but units of the user > program . A project can effect the compiler parameters of its packages. For example when you change the widgetset of the project to 'qt'. Or when you add a parameter to 'Configure Build Lazarus'. You can see what and why packages will be rebuilt in View / IDE Internals / What needs building. You can see why a package was rebuilt by selecting the message 'Compile package FooBar', then right click / About / About Compile Package FooBar. > There is a menu item in "Tools" about building the Lazarus itself . > > > > Using -B option seems that it is NOT effective when there are existing > > .ppu > > > and .o files . > > > > Do you mean lazbuild -B or fpc -B? > > > > > > > In one of the fields of the Lazarus menus , ( I could not find it now ) I > have set -B option to force the compilation in "Build" mode instead of > "Make" mode to make it to recognize record element changes : Probably you know, but just making sure: The -B option tells the compiler to recompile every unit, which has a source. Even if the sources have not changed. So basically all units of the project, but no unit of the packages. Lazarus automatically appends -B when the compiler parameter changes. > When Lazarus is starting to compile in GUI mode , it is displaying "options > changed , ... -B ..." > but it is not taken into consideration the record type changes mentioned > above . Are the altered units in the project or in a package? > I am not using -B option in lazbuild command line statement because I am > assuming that .lpi file contains such an option . > > I am not using fpc directly to compile the programs : Either by Lazarus GUI > or lazbuild through scripts without -B option in the command line with the > assumption that it is specified in .lpi file . > > Actually , in "Make" mode such changes should be detected . > > > Deleting .ppu and .o files is causing a compile time more than 17 minutes > for me instead of a shorter compilation time . 17 minutes? Even the 3+ millions lines of FPC and Lazarus normally only takes a few minutes on a recent machine. Mattias -- _______________________________________________ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus