[Lazarus] IDE rebuild fails on raspi4

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

[Lazarus] IDE rebuild fails on raspi4

Free Pascal - Lazarus mailing list
Trying to get Lazarus working on the raspberry pi 4 with the latest Raspbian (Debian 10.2). Installed 2.0.0+dfsg-2 with synaptic from the Raspbian repos, but haven't been able to install components and rebuild the IDE, due to:

  VirtualTrees.pas(70,3) Fatal: Cannot find OleUtils used by VirtualTrees.

Got past a similar issue with fpdebug buy compiling it manually, but the VirtualTrees source shows OleUtils inside a Windows ifdef which isn't going to resolve on the pi:

unit VirtualTrees;
{$ifdef Windows}
  ...
  OleUtils,

Google hasn't been much help. Any suggestions for getting around this would be greatly appreciated.

Thanks,

-Tom


--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] IDE rebuild fails on raspi4

Free Pascal - Lazarus mailing list
Am 07.02.2020 um 11:16 schrieb Tom Lisjac via lazarus:

> Trying to get Lazarus working on the raspberry pi 4 with the latest
> Raspbian (Debian 10.2). Installed 2.0.0+dfsg-2 with synaptic from the
> Raspbian repos, but haven't been able to install components and
> rebuild the IDE, due to:
>
>   VirtualTrees.pas(70,3) Fatal: Cannot find OleUtils used by VirtualTrees.
>
> Got past a similar issue with fpdebug buy compiling it manually, but
> the VirtualTrees source shows OleUtils inside a Windows ifdef which
> isn't going to resolve on the pi:
>
> unit VirtualTrees;
> {$ifdef Windows}
>   ...
>   OleUtils,

I checked several versions of the Lazarus port on Luiz's github
((https://github.com/blikblum/VirtualTreeView-Lazarus - the version
included in Lazarus is based on v5)), and they all have OleUtils outside
the Windows ifdef, the code is:

uses
   {$ifdef Windows}
   Windows,
   ActiveX,
   CommCtrl,
   {$else}
   laz.FakeActiveX,
   {$endif}
   OleUtils,
   ....

In fact, OleUtils is a unit which provides some Windows-functionality
for other widgetsets. However, it does not belong the VirtualTreeViews -
it is contained in the lclextensions package which you must compile
first, before touching VirtualTreeViews. Maybe it is sufficient to
simply do a clean rebuild of the IDE.


--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] IDE rebuild fails on raspi4

Free Pascal - Lazarus mailing list
Thanks Werner.

You are correct that oleutils is outside the Windows endif... my apologies. The monitor I'm using for the pi is very small and I should have used a magnifying glass to confirm the problem description before posting.

Per your comments, I was able to complete the IDE rebuild after manually compiling fpdebug, lclextensions, virtualtreeview and the onlinepackagemanager. However when I restart Lazarus, I have to recompile them again to do another rebuild. Not sure what's causing the lack of persistence, but Otto Dominguez also sent me a link to a set of 2.0.6 packages he's made for the pi4 and I think I'll give those a try.

Thanks again for your reply and suggestions,

-Tom




On Fri, Feb 7, 2020 at 11:09 AM Werner Pamler via lazarus <[hidden email]> wrote:
Am 07.02.2020 um 11:16 schrieb Tom Lisjac via lazarus:
> Trying to get Lazarus working on the raspberry pi 4 with the latest
> Raspbian (Debian 10.2). Installed 2.0.0+dfsg-2 with synaptic from the
> Raspbian repos, but haven't been able to install components and
> rebuild the IDE, due to:
>
>   VirtualTrees.pas(70,3) Fatal: Cannot find OleUtils used by VirtualTrees.
>
> Got past a similar issue with fpdebug buy compiling it manually, but
> the VirtualTrees source shows OleUtils inside a Windows ifdef which
> isn't going to resolve on the pi:
>
> unit VirtualTrees;
> {$ifdef Windows}
>   ...
>   OleUtils,

I checked several versions of the Lazarus port on Luiz's github
((https://github.com/blikblum/VirtualTreeView-Lazarus - the version
included in Lazarus is based on v5)), and they all have OleUtils outside
the Windows ifdef, the code is:

uses
   {$ifdef Windows}
   Windows,
   ActiveX,
   CommCtrl,
   {$else}
   laz.FakeActiveX,
   {$endif}
   OleUtils,
   ....

In fact, OleUtils is a unit which provides some Windows-functionality
for other widgetsets. However, it does not belong the VirtualTreeViews -
it is contained in the lclextensions package which you must compile
first, before touching VirtualTreeViews. Maybe it is sufficient to
simply do a clean rebuild of the IDE.


--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] IDE rebuild fails on raspi4

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list
On Fri, 7 Feb 2020 10:16:36 +0000, Tom Lisjac via lazarus
<[hidden email]> wrote:

>Trying to get Lazarus working on the raspberry pi 4 with the latest
>Raspbian (Debian 10.2).

I guess you mean Raspbian Buster then?

I have FPC/Lazarus on several of my RPi units ranging from RPi2B via
RPi3B to RPi4B.

I have had no problems installing release versions FPC 3.0.4 + Lazarus
2.0.6 from sources obtained by SVN checkout.
I am using an old and trusted install script I wrote several years ago
and it "just works" to get the basic stuff installed.

It does so to /home/pi/dev/... in order to not mess with anything in
/usr/... etc.

Also I use pcp directories for every install I have, right now 2.0.2,
2.0.4 and 2.0.6 on my latest RPi4B.

Concerning the small screen:
I run my systems via VNC from my big screen Windows PC and the only
glitch I have had so far is that the Lazarus IDE may suddenly crash
unexpectedly.
But this has not happened once since I installed AutoSave in Lazarus
via OnLine Package Manager, so this is for sure something I recommend
using (plus of course subversion for project sources).

HTH

--
Bo Berglund
Developer in Sweden

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] IDE rebuild fails on raspi4

Free Pascal - Lazarus mailing list
HI Bo,

Thanks for your reply and comments... very helpful!

Since your svn builds work without issue on the pi4, it looks like my persistence problem is with the lazarus package from the raspbian repo. Otto Dominguez also replied privately and provided some details about why. He also generously included a links to a set of 2.0.6 Lazarus packages he made for the pi4:

I'm going to uninstall the raspbian package and try Otto's. Ultimately I'd like to do my own builds on the pi as it appears the 4B is actually usable for serious development were previous versions were too slow for my taste. :) Otto included a link to a forum thread where he announced his build procedure and packages:


Is your build process similar on the pi4?

Thanks,

-Tom



On Mon, Feb 10, 2020 at 1:41 PM Bo Berglund via lazarus <[hidden email]> wrote:
On Fri, 7 Feb 2020 10:16:36 +0000, Tom Lisjac via lazarus
<[hidden email]> wrote:

>Trying to get Lazarus working on the raspberry pi 4 with the latest
>Raspbian (Debian 10.2).

I guess you mean Raspbian Buster then?

I have FPC/Lazarus on several of my RPi units ranging from RPi2B via
RPi3B to RPi4B.

I have had no problems installing release versions FPC 3.0.4 + Lazarus
2.0.6 from sources obtained by SVN checkout.
I am using an old and trusted install script I wrote several years ago
and it "just works" to get the basic stuff installed.

It does so to /home/pi/dev/... in order to not mess with anything in
/usr/... etc.

Also I use pcp directories for every install I have, right now 2.0.2,
2.0.4 and 2.0.6 on my latest RPi4B.

Concerning the small screen:
I run my systems via VNC from my big screen Windows PC and the only
glitch I have had so far is that the Lazarus IDE may suddenly crash
unexpectedly.
But this has not happened once since I installed AutoSave in Lazarus
via OnLine Package Manager, so this is for sure something I recommend
using (plus of course subversion for project sources).

HTH

--
Bo Berglund
Developer in Sweden

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] IDE rebuild fails on raspi4

Free Pascal - Lazarus mailing list
On Wed, 12 Feb 2020 00:21:06 +0000, Tom Lisjac via lazarus
<[hidden email]> wrote:

>
>https://wiki.freepascal.org/Build_current_FPC_and_Lazarus_for_Raspbian
>
>Is your build process similar on the pi4?

No, I am not building any packages for my installations.

Instead I have written a script that handles everything for the
*installation* including dependencies etc.
It is designed to be executed on a pristine RPi3B or RPi4B device and
the result is an installation within the pi user's home directory,
below /home/pi/dev and using /home/pi/bin and a few other local dirs.

I have posted the script and RPi seed compilers on my blog site:
http://blog.boberglund.com/

The script there is now updated to use the current release versions
Fpc 3.0.4 and Lazarus 2.0.6 and download the help files.

(Also sent the script privately to Tom Lisjac )


--
Bo Berglund
Developer in Sweden

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] IDE rebuild fails on raspi4

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list
On Wed, 12 Feb 2020 00:21:06 +0000, Tom Lisjac via lazarus
<[hidden email]> wrote:

>Thanks for your reply and comments... very helpful!
>
>Since your svn builds work without issue on the pi4, it looks like my
>persistence problem is with the lazarus package from the raspbian repo.

One heads-up here:
------------------
I have discovered that on my RPi4 with Lazarus IDE when interacting
with it via VNC I am experiencing random IDE crashes that leaves me
with unsaved source edits. :(

This did not happen before Xmas, so it might be a combination of
versions of Raspbian Buster, Raspbian VNC server, Real VNC client on
Windows 10 and possibly Windows 10 itself (I updated in December from
Win7 to Win10). It was very infuriating when working on a project.

SOLUTION FOUND:
---------------
I started to search for a way to have Lazarus save my project
regularly while I am working so as not to lose edits when the crashes
happen. Turns out that OnLine Package Manager has a useful package
called "AutoSave" already available!

I installed it and set the save time to 10 seconds.
After this was done the crashes no longer happen!
And my sources are constantly saved to disk

Win-Win! Highly recommended to use.

--
Bo Berglund
Developer in Sweden

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] IDE rebuild fails on raspi4

Free Pascal - Lazarus mailing list
In reply to this post by Free Pascal - Lazarus mailing list
Hi Bo,

Again, thanks for your many useful replies.

Your approach to doing a local user build is a good one and what I'll also do on the problematic Raspbian. May also try it on another distro I like called Devuan. They used to release Pi versions but stopped with the 4B, so I'll have to build their latest 2.1 from scratch as well. Your install script is very readable and clarifies the OS configuration I'll need to support Lazarus builds.

It will be time consuming to build both the OS and Lazarus on the PI4, but I'm sure it will be a more enjoyable use of my spare time then trying to find something intelligent to watch on US TV. :)

Thanks,

-Tom


On Wed, Feb 12, 2020 at 9:31 AM Bo Berglund via lazarus <[hidden email]> wrote:
On Wed, 12 Feb 2020 00:21:06 +0000, Tom Lisjac via lazarus
<[hidden email]> wrote:

>
>https://wiki.freepascal.org/Build_current_FPC_and_Lazarus_for_Raspbian
>
>Is your build process similar on the pi4?

No, I am not building any packages for my installations.

Instead I have written a script that handles everything for the
*installation* including dependencies etc.
It is designed to be executed on a pristine RPi3B or RPi4B device and
the result is an installation within the pi user's home directory,
below /home/pi/dev and using /home/pi/bin and a few other local dirs.

I have posted the script and RPi seed compilers on my blog site:
http://blog.boberglund.com/

The script there is now updated to use the current release versions
Fpc 3.0.4 and Lazarus 2.0.6 and download the help files.

(Also sent the script privately to Tom Lisjac )


--
Bo Berglund
Developer in Sweden

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus

--
_______________________________________________
lazarus mailing list
[hidden email]
https://lists.lazarus-ide.org/listinfo/lazarus