Sign in Join

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

Mailing lists / lazarus / 2011-08

Extended LazUpdater available: cross-platform install of SVN/Git FPC/Lazarus

6 messages · 4 people ·

Reply by email Subscribe to this list Your subscription

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

Reinier Olislagers

Hi all,

I've extended LazUpdater.
This program allows you to download and compile a subversion or git version of FreePascal and Lazarus in an easy way, without fiddling with batch files.

On Windows: it's meant to be able to do this without existing FPC compiler, binutils (make.exe etc), svn client or unzip program. If you do have a compiler installed, you can specify that LazUpdater uses that. The "bare metal" install (without unzip,svn,compiler) on Windows needs to be tested further.
I'm using it on Windows with an existing compiler and a git client; install from scratch & further updating seems to work fine.

On Linux/OSX: this version needs to be tested.

I'm not the original author of the program; I've based my version on the latest published version of LazUpdater and submitted my version as a feature request.
So you can download it from:
[url]http://forge.lazarusforum.de/issues/118[/url] (See the latest post for my most recent version)

If the original author doesn't respond to this feature request, it might be a good idea to include it in Lazarus CCR

I'd appreciate test results, improvement requests and other feedback.

Thanks,
Reinier

Reply by email

Graeme Geldenhuys
to Reinier Olislagers
Reinier Olislagers wrote
On Linux/OSX: this version needs to be tested.

Lots, it doesn't 'm using 0.9.30.x. Once opened in Lazarus, the IDE complains that you have LCLBase and LCL as dependencies. Thus tachat.pp is included twice. I removed LCLBase to continue.

2. I don't have synapse installed but I believe you include the required units with the project. But due to the {$IFDEF Windows} in the implementation sections uses clause of main.pas, the compiler can't find the implementation of HttpGetBinary(). I had to remove the IFDEF Windows to continue.

3. AddPath() is covered in IFDEF Windows, but there are places in the where it is not covered in IFDEF Windows, so the Linux FPC complains that AddToPath() is not defined.

     main.pas(478,21) Error: Identifier not found "AddToPath"
4. A few more compiler errors: I presume the same issue as in (3).
      main.pas(503,60) Error: Identifier not found "BinUtilsPath"
      main.pas(524,60) Error: Identifier not found "BinUtilsPath"
      main.pas(586,80) Error: Identifier not found "BinutilsPath"

I didn't test further. I hope the above helps.

Regards,
- Graeme -

fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal http://fpgui.sourceforge.net/

Reply by email

Jim
to Graeme Geldenhuys
Graeme Geldenhuys wrote 32 lines
On 08/05/2011 01:59 PM, Reinier Olislagers wrote: > > On Linux/OSX: this version needs to be tested. Lots, it doesn't compile at all. 1. I'm using 0.9.30.x. Once opened in Lazarus, the IDE complains that you have LCLBase and LCL as dependencies. Thus tachat.pp is included twice. I removed LCLBase to continue. 2. I don't have synapse installed but I believe you include the required units with the project. But due to the {$IFDEF Windows} in the implementation sections uses clause of main.pas, the compiler can't find the implementation of HttpGetBinary(). I had to remove the IFDEF Windows to continue. 3. AddPath() is covered in IFDEF Windows, but there are places in the where it is not covered in IFDEF Windows, so the Linux FPC complains that AddToPath() is not defined. main.pas(478,21) Error: Identifier not found "AddToPath" 4. A few more compiler errors: I presume the same issue as in (3). main.pas(503,60) Error: Identifier not found "BinUtilsPath" main.pas(524,60) Error: Identifier not found "BinUtilsPath" main.pas(586,80) Error: Identifier not found "BinutilsPath" I didn't test further. I hope the above helps. Regards, - Graeme -

Thanks Graeme,

I'm firing up my Linux VM right now & will have a look...

Groete,
Reinier

Reply by email

Reinier Olislagers
to Graeme Geldenhuys: Lots, it doesn't 'm using 0.9.30.x. Once opened in Lazarus, the IDE complains that you…
Graeme Geldenhuys wrote 9 lines
On 08/05/2011 01:59 PM, Reinier Olislagers wrote: > > On Linux/OSX: this version needs to be tested. Lots, it doesn't compile at all. 1. I'm using 0.9.30.x. Once opened in Lazarus, the IDE complains that you have LCLBase and LCL as dependencies. Thus tachat.pp is included twice. I removed LCLBase to continue.

<snip embarrassing list of issues>

Regards, - Graeme -

Graeme,

Thanks for the issue reports, which I think I addressed. I've compiled and run it on a recent Debian x64, with Lazarus 0.9.30. There were some issues with quotes around arguments, e.g. originally something like
PP="/usr/bin/fpc"
which had to be changed to
"PP=/usr/bin/fpc"

Now it runs, seems to download & compile fine (using git). Download: still at
http://forge.lazarusforum.de/issues/118
(bottom of page)

Next I'm going to look if it works on OSX.

Regards,
Reinier

Note: I still have to add the "bare metal" option on Linux/OSX: if you only have make/binutils, and svn or git, it should download an fpc bootstrap compiler and use that if possible...

PS: Lazarus 0.9.30 complained about an unknown keyword (or something) PrefixOption in my main.lfm form; if I compiled it anyway, I got problems on running the code.
Can one use macros or something to enable conditional compilation based on the Lazarus version?

Reply by email

Jim
to Fr0sT
Fr0sT wrote
Oh Heavens, where you've been when I struggled with Laz/FPC building... will test the tool soon although I've already polished my own build script

I know, it's very frustrating - simple enough to do in theory, but tedious and you have to remember all those command line thingies.

I'm a Windows user and only know how to click ;)

If you want to take a look & test it, I'd really appreciate it. Should work with an existing svn checkout as long as you specify the settings correctly.

Reinier

Reply by email