Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2011-01

Where is a list of valid options for lazarus make?

17 messages · 8 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Bo Berglund

In a recent post reply I was adviced to "make bigide" in order to include the SQLdb components on lazarus.

But I have no idea how the "bigide" is used so I have tried to find out but all I can google are other people basically wondering the same thing. The Wiki page:
http://wiki.lazarus.freepascal.org/IDE_Window:_Configure_Build_Lazarus is next to useless since it does not say anything about any options and there are no valid links on it either. It does not help tha the language is very hard to undrestand either...

I build Lazarus from SVN sources on my Windows XP PC using these commands in a batch file:

set PATH=C:\Programs\fpc\2.4.2\bin\i386-win32
make.exe clean all

I don't want to destroy my system by doing some ad-hoc command but I cannot find how the correct syntax should be constructed. And I need the SQLdb stuff.

Please help....

Bo Berglund Developer in Sweden

Reply by email

Mark Morgan Lloyd
to Bo Berglund
Bo Berglund wrote 22 lines
In a recent post reply I was adviced to "make bigide" in order to include the SQLdb components on lazarus. But I have no idea how the "bigide" is used so I have tried to find out but all I can google are other people basically wondering the same thing. The Wiki page: http://wiki.lazarus.freepascal.org/IDE_Window:_Configure_Build_Lazarus is next to useless since it does not say anything about any options and there are no valid links on it either. It does not help tha the language is very hard to undrestand either... I build Lazarus from SVN sources on my Windows XP PC using these commands in a batch file: set PATH=C:\Programs\fpc\2.4.2\bin\i386-win32 make.exe clean all I don't want to destroy my system by doing some ad-hoc command but I cannot find how the correct syntax should be constructed. And I need the SQLdb stuff. Please help....

Look, if you have a problem with a command it really would help if you quoted the bit you were having a problem with.

| If you build using make bigide, it will get included. You can install | it by going to install/uninstall packages under the package menu.

So earlier you're saying that you build using make.exe clean all note that I've tried to offset that with double spaces to make it stand out. Now I'm sure that you don't need the .exe in that command, and if it were a unix-derived OS the command would be written as an example like

$ make clean all

Note that the $ is a prompt, you wouldn't type that. Now that command could be broken into two

$ make clean
$ make all

At which point what is your problem with make bigide ?

As I'm sure you've worked out, make is a program (binary, executable, whatever). It processes what is referred to as a "makefile" which is customarily named with a capital to make it stand out i.e. Makefile, MAKEFILE etc. Originally, makefiles were written by hand but today that is generally semi-automated, so you might find that Makefile is generated from Makefile.fpc or similar. Hence you will find a target in the makefile which reads like

bigide: lcl packager/registration ideintf packager bigidecomponents idebig starter lazbuilder

but by now you're straying into waters best avoided by somebody with your level of experience.

In some projects, entering something like make help will give you a list of valid targets. Unfortunately neither Lazarus nor FPC do this, and in any event there's a limit to how much detail can be included.

Mark Morgan Lloyd markMLl .AT. telemetry.co .DOT. uk [Opinions above are the author's, not those of his employers or colleagues]

Reply by email

Marc Weustink
to Bo Berglund: In a recent post reply I was adviced to "make bigide" in order to include the SQLdb…

Bo Berglund wrote:
...

Show quoted text 6 lines
set PATH=C:\Programs\fpc\2.4.2\bin\i386-win32 make.exe clean all I don't want to destroy my system by doing some ad-hoc command but I cannot find how the correct syntax should be constructed. And I need the SQLdb stuff.

you won't destroy anything with make.
A "make.exe clean" removes all compiled exes and ppus A "make.exe all" builds the lcl, some required components and the ide. This is more or less the same as (iirc) "make.exe lcl components idepkg ide" So after you have done a "make.exe all", you can still run "make.exe ide" the rebuild the ide or "make.exe bigide" to build an ide with all available components or "make.exe pkgide" to build an ide with all your installed packages.

If something doesn't work, run "make.exe clean" "make.exe all" (or "make.exe clean all") and you have restored original ide again.

Marc

Reply by email

Bo Berglund
to Mark Morgan Lloyd: Look, if you have a problem with a command it really would help if you quoted the bit you…
Mark Morgan Lloyd wrote
Bo Berglund wrote: > In a recent post reply I was adviced to "make bigide" in order to > include the SQLdb components on lazarus. >

...

Look, if you have a problem with a command it really would help if you quoted the bit you were having a problem with.

My problem is that I had no idea *what* command to use in order to do what he suggested, namely to get the bigide into my Lazarus so the SQLdb tab would appear...
No way to write down a command I am looking for in the first place...

Show quoted text 5 lines
| If you build using make bigide, it will get included. You can install | it by going to install/uninstall packages under the package menu. So earlier you're saying that you build using make.exe clean all Now I'm sure that you don't need the .exe in that command, and if it

Sure, I just modified a full path to the fpc make executable by removing the path when I had to change the environment variable PATH to get it all to work. Could also have excluded the .exe part. But on Windows both variants are exactly the same.

Show quoted text 11 lines
were a unix-derived OS the command would be written as an example like $ make clean all Note that the $ is a prompt, you wouldn't type that. Now that command could be broken into two $ make clean $ make all At which point what is your problem with make bigide ?

My problem is that the command I used to create the lazarus exe file was:

make clean all

This to me is ONE command and not two. But it uses two command parameters.

Now I get a suggestion to instead use

make bigide

at which point I am afraid that it will create a lazarus that does not have the features the original command created since the command now omits the parameters "clean" and "all"

Notice that I am just blindly typing the commads specified on the webpages outlining how to create the lazarus IDE from sources.

Have never before used make and do not know *how* it works. Only that it collects some build information for the compiler to create the target executable and then executes that compilation.

I have used Delphi on Windows since 1995 though starting with Delphi 1 and going up to Delphi 7 at which point we stopped upgrading because of the strange stuff Borland/Embarcadero/Codegear put into the releases...

Show quoted text 11 lines
As I'm sure you've worked out, make is a program (binary, executable, whatever). It processes what is referred to as a "makefile" which is customarily named with a capital to make it stand out i.e. Makefile, MAKEFILE etc. Originally, makefiles were written by hand but today that is generally semi-automated, so you might find that Makefile is generated from Makefile.fpc or similar. Hence you will find a target in the makefile which reads like bigide: lcl packager/registration ideintf packager bigidecomponents idebig starter lazbuilder

So does this mean that whatever is put on the make command line are going to be processed sequentially so make clean all actually splits into two commands:
make clean
make all

In that case I can understand that either doing a
make clean all bigide
in the beginning or now when I only want the tab to appear execute the last command:
make bigide
will be the same and create the tab for SQLdb. Correct????

Bo Berglund Developer in Sweden

Reply by email

Bo Berglund
to Marc Weustink: ... you won't destroy anything with make. A "make.exe clean" removes all compiled exes…
Marc Weustink wrote 22 lines
Bo Berglund wrote: ... > set PATH=C:\Programs\fpc\2.4.2\bin\i386-win32 > make.exe clean all > > I don't want to destroy my system by doing some ad-hoc command but I > cannot find how the correct syntax should be constructed. > And I need the SQLdb stuff. you won't destroy anything with make. A "make.exe clean" removes all compiled exes and ppus A "make.exe all" builds the lcl, some required components and the ide. This is more or less the same as (iirc) "make.exe lcl components idepkg ide" So after you have done a "make.exe all", you can still run "make.exe ide" the rebuild the ide or "make.exe bigide" to build an ide with all available components or "make.exe pkgide" to build an ide with all your installed packages. If something doesn't work, run "make.exe clean" "make.exe all" (or "make.exe clean all") and you have restored original ide again. Marc

Thanks, I will try this tonight when I get back home.

Bo Berglund Developer in Sweden

Reply by email

Marc Weustink
to Bo Berglund: On Wed, 19 Jan 2011 08:58:31 +0000, Mark Morgan Lloyd ... My problem is that I had no…
Bo Berglund wrote 6 lines
So does this mean that whatever is put on the make command line are going to be processed sequentially so make clean all actually splits into two commands: make clean make all

correct

Show quoted text 6 lines
In that case I can understand that either doing a make clean all bigide in the beginning or now when I only want the tab to appear execute the last command: make bigide will be the same and create the tab for SQLdb. Correct????

correct

Reply by email

Marcos Douglas
to Bo Berglund: In a recent post reply I was adviced to "make bigide" in order to include the SQLdb…
Bo Berglund wrote 22 lines
In a recent post reply I was adviced to "make bigide" in order to include the SQLdb components on lazarus. But I have no idea how the "bigide" is used so I have tried to find out but all I can google are other people basically wondering the same thing. The Wiki page: http://wiki.lazarus.freepascal.org/IDE_Window:_Configure_Build_Lazarus is next to useless since it does not say anything about any options and there are no valid links on it either. It does not help tha the language is very hard to undrestand either... I build Lazarus from SVN sources on my Windows XP PC using these commands in a batch file: set PATH=C:\Programs\fpc\2.4.2\bin\i386-win32 make.exe clean all I don't want to destroy my system by doing some ad-hoc command but I cannot find how the correct syntax should be constructed. And I need the SQLdb stuff. Please help....

Hi,
I had some problems, bit time ago, when I tried to compile FPC and Lazarus from SVN. After I resolved all problems, with the help of friends here on the list, I created a tutorial on the wiki for installing on Windows, see:

http://wiki.lazarus.freepascal.org/Installing_Lazarus#Compiling.2Finstalling_FPC_and_Lazarus_from_Sources_of_SVN_.28Win32.29

Marcos Douglas

Reply by email

Mattias Gaertner
to Bo Berglund: On Wed, 19 Jan 2011 10:06:17 +0100, Marc Weustink Thanks, I will try this tonight when I…

?
?

Bo Berglund hat am 19. Januar 2011 um 10:50 geschrieben:

Show quoted text 27 lines
On Wed, 19 Jan 2011 10:06:17 +0100, Marc Weustink wrote: >Bo Berglund wrote: >... >> set PATH=C:\Programs\fpc\2.4.2\bin\i386-win32 >> make.exe clean all >> >> I don't want to destroy my system by doing some ad-hoc command but I >> cannot find how the correct syntax should be constructed. >> And I need the SQLdb stuff.? >> >you won't destroy anything with make. >A "make.exe clean" removes all compiled exes and ppus >A "make.exe all" builds the lcl, some required components and the ide. >This is more or less the same as (iirc) "make.exe lcl components idepkg ide" >So after you have done a "make.exe all", you can still run "make.exe >ide" the rebuild the ide or "make.exe bigide" to build an ide with all >available components or "make.exe pkgide" to build an ide with all your >installed packages. > >If something doesn't work, run "make.exe clean" "make.exe all" (or >"make.exe clean all") and you have restored original ide again. > >Marc Thanks, I will try this tonight when I get back home.

For all others:
When you want to install a package like sqldb, use the IDE for that. The 'make' commands can only install two fixed sets of standard packages - the minimal (default) and the one used by the official binaries (bigide).

Once you installed the package, you can use the make and lazbuild commands to recompile.
Same for uninstalling a package.

Mattias
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20110119/5e8a6e2d/attachment.html>

Reply by email

Bo Berglund
to Mattias Gaertner
Mattias Gaertner wrote 9 lines
For all others: When you want to install a package like sqldb, use the IDE for that. The 'make' commands can only install two fixed sets of standard packages - the minimal (default) and the one used by the official binaries (bigide). Once you installed the package, you can use the make and lazbuild commands to recompile. Same for uninstalling a package.

FWIW:
I followed Sven Barth's advice in my other thread: <quote>
I personally don't know whether bigide is the correct approach (I don't
know whether it installs ALL available packages or only those selected).

I'd suggest you the following (Note: the mentioned captions might only be similar to yours, because I'm using a German Lazarus): Go to "Packages=>Configure installed packages" and search whether SQLDBLaz is in "installed" or in "not installed".
If it's in the second one, then select and and click "install selected".
Then you just do a "Save and recompile IDE".
If the package is listed in the list of installed packages, but with a plus in the icon you need to rebuild your IDE from within the IDE (you can either trigger a change in that dialog to enable "save and recompile
IDE" or you can just use "Tools=>Recompile IDE".
</quote>
Worked fine to give me the SQLdb tab.

Bo Berglund Developer in Sweden

Reply by email

Bo Berglund
to Bo Berglund: On Wed, 19 Jan 2011 12:10:18 +0100 (CET), Mattias Gaertner FWIW: I followed Sven Barth's…
Bo Berglund wrote 13 lines
On Wed, 19 Jan 2011 12:10:18 +0100 (CET), Mattias Gaertner wrote: >For all others: >When you want to install a package like sqldb, use the IDE for that. The 'make' >commands can only install two fixed sets of standard packages - the minimal >(default) and the one used by the official binaries (bigide). > >Once you installed the package, you can use the make and lazbuild commands to >recompile. >Same for uninstalling a package. >

After adding the SQLdb package to lazarus inside lazarus itself and recompiled it showed up in the components list.

So now I tried the make bigide command to see if it would add more tabs...
But it did not, I still have the minimal tabs plus SQLdb, nothing more.

Was make bigide not supposed to put a lot more components on the tab list?

Bo Berglund Developer in Sweden

Reply by email

Marc Weustink
to Mattias Gaertner: ? ? Bo Berglund hat am 19. Januar 2011 um 10:50 geschrieben: For all others: When you…
Mattias Gaertner wrote 7 lines
For all others: When you want to install a package like sqldb, use the IDE for that. The 'make' commands can only install two fixed sets of standard packages - the minimal (default) and the one used by the official binaries (bigide). Once you installed the package, you can use the make and lazbuild commands to recompile.

ehm, there used to be a pkgide or idepkg make target for this.

How to use lazbuild to recompile laz with installed packages ?

Marc

Reply by email

Mattias Gaertner
to Marc Weustink
Show quoted text 10 lines
Mattias Gaertner wrote: > For all others: > When you want to install a package like sqldb, use the IDE for that. The > 'make' commands can only install two fixed sets of standard packages - > the minimal (default) and the one used by the official binaries (bigide). > > Once you installed the package, you can use the make and lazbuild > commands to recompile. ehm, there used to be a pkgide or idepkg make target for this.

Yes, but they are only part of the magic. They are called by lazbuild.

How to use lazbuild to recompile laz with installed packages ?

./lazbuild --build-ide=

See ./lazabuild -h

<dream>
It would be nice if lazbuild would not require the LCL any more. Then we don't need the Makefiles anymore. Only one to build lazbuild and one for compatibility, which simply calls lazbuild. </dream>

Mattias

Reply by email

Vincent Snijders
to Mattias Gaertner

2011/1/20 Mattias Gaertner :

Show quoted text 5 lines
<dream> It would be nice if lazbuild would not require the LCL any more. Then we don't need the Makefiles anymore. Only one to build lazbuild and one for compatibility, which simply calls lazbuild. </dream>

I have been thinking about that too, when I tried to make nogui obsolete.

Maybe we have to split the LCL in a widgetset dependent part (forms and dialogs) and a widgetset independant part (e.g. lclproc and fileutil).
Then lazbuild should only ide units that don't depend on the forms and dialogs unit.

Vincent

Reply by email

Unknown author
to Vincent Snijders
Vincent Snijders wrote 12 lines
2011/1/20 Mattias Gaertner : > <dream> > It would be nice if lazbuild would not require the LCL any more. Then > we don't need the Makefiles anymore. Only one to build lazbuild and > one for compatibility, which simply calls lazbuild. > </dream> I have been thinking about that too, when I tried to make nogui obsolete. Maybe we have to split the LCL in a widgetset dependent part (forms and dialogs) and a widgetset independant part (e.g. lclproc and fileutil).

Maybe those are candidates to be moved to the FCL/RTL ?

Michael.

Reply by email