Sign in Join

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

Mailing lists / lazarus / 2015-10

Theoretical question about future of Lazarus

69 messages · 22 people · –

Reply by email Subscribe to this list Your subscription

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

JuuS

Hi,

Lazarus has had the number schemes 0.xxx to now of 1.4.xx

Before falling asleep it passed through my mind about a lazarus 2.xx and...

...I thought what could it be? Lazarus is already so good and so feature filled that I struggled to understand what could possibly be in or justify a Lazarus 2.xx

Any thoughts from anyone what a Laz 2 would be?

Julius

Reply by email

Sven Barth
to JuuS
"JuuS" wrote 6 lines
Hi, Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed through my mind about a lazarus 2.xx

and...

Show quoted text 6 lines
...I thought what could it be? Lazarus is already so good and so feature filled that I struggled to understand what could possibly be in or justify a Lazarus 2.xx Any thoughts from anyone what a Laz 2 would be?

Lazarus with support for dynamic packages? (once FPC supports them which isn't that far in the future anymore ;) )

Regards,
Sven
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151012/49430871/attachment.html>

Reply by email

Jamal Gabra
to JuuS: Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed…

I can think of a version that supports Right-To-Left, out of the box. Not necessarily Laz. 2 though :)

Right now FlipChildren() must be used. It works, but not on all the controls. For instance it does not work over the DateTimePicker very well, to my knowledge/experience, I would say.

Probably in version 2, "BiDiMode:= bdRightToLeft;" would be enough to do
the trick.

I offered to help in this regard before, but I got lost between been busy and try to find where to start.

Jamal

JuuS wrote 20 lines
Hi, Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed through my mind about a lazarus 2.xx and... ...I thought what could it be? Lazarus is already so good and so feature filled that I struggled to understand what could possibly be in or justify a Lazarus 2.xx Any thoughts from anyone what a Laz 2 would be? Julius -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Jamal -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151012/aad1cf8d/attachment-0001.html>

Reply by email

Mattias Gaertner
to JuuS: Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed…
Show quoted text 11 lines
Hi, Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed through my mind about a lazarus 2.xx and... ...I thought what could it be? Lazarus is already so good and so feature filled that I struggled to understand what could possibly be in or justify a Lazarus 2.xx Any thoughts from anyone what a Laz 2 would be?

Probably many incompatibilities (more than usual).

For example project groups, UTF-8/16 strings, dynamic packages deserve some changes that will break old code.

Mattias

Reply by email

Juha Manninen
to JuuS: Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed…
JuuS wrote 9 lines
Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed through my mind about a lazarus 2.xx and... ...I thought what could it be? Lazarus is already so good and so feature filled that I struggled to understand what could possibly be in or justify a Lazarus 2.xx Any thoughts from anyone what a Laz 2 would be?

Thanks for the positive thinking! Usually people complain how buggy Lazarus is and how it still misses crucial features. Did you dream about Lazarus 2.0 after falling asleep? How did it look like? :)

The development version (trunk) already has new features like configurable IDE Coolbar and configurable desktops + many other improvements. They will surely be in next release. Also Projects Groups will be there most likely.
Improved Unicode support breaks some code and justifies the big version change.

Not sure what other features will be in time, but there surely is a lot to improve!

Dynamic packages (mentioned by others).
Proper Right-To-Left support (mentioned by others). Integrated Pascal debugger (fpdebug) to get rid of GDB and its bugs + limitations.
A way to search and install online packages from global repositories. Support more widgetsets.
Easier cross-compilation.
Fix the > 1700 open bug reports.
Better documentation.
Etc... etc...

Juha

Reply by email

Fabio Luis Girardi
to Sven Barth: and... Lazarus with support for dynamic packages? (once FPC supports them which isn't…
Lazarus with support for dynamic packages? (once FPC supports them which isn't that far in the future anymore ;) )

+1

The best regards, Fabio Luis Girardi PascalSCADA Project http://sourceforge.net/projects/pascalscada http://www.pascalscada.com -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151012/8f01f57a/attachment.html>

Reply by email

Tony Whyman
to JuuS: Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed…

This could be a good moment for someone to bring the Wiki up-to-date (version 0.9.31 was a little while ago now). Also, the wiki page doesn't give any policy rules for interpreting major, minor and patch(?) numbers.

Interesting, if you took a pretty common view in that:

- patch numbers are used for bug fix releases
- minor numbers are changed for backwards but not forwards compatible changes (i.e. a 1.2.x app should still work under 1.4.x but the other way around is not true), and
- major changes are used when existing apps may be broken,

then Lazarus 2.0.x is only just around the corner. That's because as soon as FPC 3 becomes the required compiler there will be backwards compatibility issues (e.g. the TBookmark type changes break any app that uses it).

Tony Whyman
MWA

http://wiki.freepascal.org/Version_Numbering

JuuS wrote 19 lines
Hi, Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed through my mind about a lazarus 2.xx and... ...I thought what could it be? Lazarus is already so good and so feature filled that I struggled to understand what could possibly be in or justify a Lazarus 2.xx Any thoughts from anyone what a Laz 2 would be? Julius -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply by email

JuuS
to Graeme Geldenhuys
Graeme Geldenhuys wrote 8 lines
On 2015-10-12 13:03, JuuS wrote: > Any thoughts from anyone what a Laz 2 would be? Mind control.... Think of the program, and Lazarus writes it. ;-) Regards, - Graeme -

All good replies thank you! But...

...This is the best one!

Anyway, yes I see. Major reorganization(s) would certainly justify a 2.

Standing outside the developer group these (thanks all) types of needs were something I couldn't see.

So anyway what about a 3.xx???? :) just kidding!

Reply by email

Mattias Gaertner
to Tony Whyman: This could be a good moment for someone to bring the Wiki up-to-date (version 0.9.31 was…
This could be a good moment for someone to bring the Wiki up-to-date (version 0.9.31 was a little while ago now). Also, the wiki page doesn't give any policy rules for interpreting major, minor and patch(?) numbers.

The Lazarus patches are in the svn revision numbers.

The version scheme is major, minor, release.
The forth number (patch) is only used for release candidates and special OS releases.

Interesting, if you took a pretty common view in that: - patch numbers are used for bug fix releases

s/patch/release/

- minor numbers are changed for backwards but not forwards compatible changes (i.e. a 1.2.x app should still work under 1.4.x but the other way around is not true), and - major changes are used when existing apps may be broken,

Well, even bugfix releases may break apps, although it is unlikely. And even major versions try to be backwards compatible. For example the IDE can read old project files. When something is not backwards compatible it is listed as incompatibility.
Every application is affected differently by the incompatibilities, so the distinction in major and minor numbers is just the personal decision of the Lazarus developers.

then Lazarus 2.0.x is only just around the corner. That's because as soon as FPC 3 becomes the required compiler there will be backwards compatibility issues (e.g. the TBookmark type changes break any app that uses it).

A "minor" change from 1.4 to 1.6 usually contains similar incompatibilities like TBookmark.
And you are right, that FPC 3 is a big leap, especially for UTF-8 applications. Some projects and packages need to check a lot of strings. If you see a Lazarus release as an unity of IDE and compiler, then the string change alone would require a 2.0. If you only see Lazarus, the amount of incompatibilities are far less than 1.2 to 1.4.

Mattias

Reply by email

Bart
to Mattias Gaertner
Mattias Gaertner wrote 5 lines
And you are right, that FPC 3 is a big leap, especially for UTF-8 applications. Some projects and packages need to check a lot of strings. If you see a Lazarus release as an unity of IDE and compiler, then the string change alone would require a 2.0. If you only see Lazarus, the amount of incompatibilities are far less than 1.2 to 1.4.

Well, I would vote for 2.0 for the next stable release that comes with the 3.0 compiler.
We can then get rid of all code that is win9x compatible etc. This will cleanup the LCL a bit.
Especially if we also then decide that 2.0 will NOT support the fpc 2.6 branch (the cp-aware strings and "utf8 in lcl" tend to give plenty of ifdef-ed code).

Just my 2 cents.

Bart

Reply by email

Vincenzo Campanella
to Bart: Well, I would vote for 2.0 for the next stable release that comes with the 3.0 compiler.…

Il 12.10.2015 17:58, Bart ha scritto:

Show quoted text 10 lines
Well, I would vote for 2.0 for the next stable release that comes with the 3.0 compiler. We can then get rid of all code that is win9x compatible etc. This will cleanup the LCL a bit. Especially if we also then decide that 2.0 will NOT support the fpc 2.6 branch (the cp-aware strings and "utf8 in lcl" tend to give plenty of ifdef-ed code). Just my 2 cents.

+2 (cents)... :)

---
Questa e-mail ? stata controllata per individuare virus con Avast antivirus. https://www.avast.com/antivirus

Reply by email

Leonardo M. Ramé
to JuuS: Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed…

El 12/10/15 a las 09:03, JuuS escribi?:

Show quoted text 14 lines
Hi, Lazarus has had the number schemes 0.xxx to now of 1.4.xx Before falling asleep it passed through my mind about a lazarus 2.xx and... ...I thought what could it be? Lazarus is already so good and so feature filled that I struggled to understand what could possibly be in or justify a Lazarus 2.xx Any thoughts from anyone what a Laz 2 would be? Julius

An api for command line .lpi handling, I user "lazbuild -B myproject.lpi" for command line compiling, and I wonder if there's something similar for project creation, package inclusion, etc.

Reply by email

Ondrej Pokorny
to Anthony Walter: A small thing, but I would like it if the CodeTools in 2.0 worked with units that have…
Anthony Walter wrote 5 lines
A small thing, but I would like it if the CodeTools in 2.0 worked with units that have dotted namespaces. Right now if you type "use CompanyName." and press CTRL+SPACE you don't get a code completion list of units which start with "CompanyName."

I was investigating this and I have to say it is everything else than easy to get all parts of codetools working with unit scopes and dotted names. But I am sure Mattias will apply your patch if you create one!

Ondrej

Reply by email

Anthony Walter
to Ondrej Pokorny

I'll looked at CodeTools, attempted changes, and rapidly gave up after trying to work through all kinds of confusion.

Earlier this year I offered to try once again if only I could get a little help/tutelage but no follow up contact was made. The offer still stands. If the maintainer of CodeTools want some help, I'll be glad to do what I can but can we setup some time to chat (like on IRC) to help me get more familiar with however CodeTools is organized?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151012/6fe9d62e/attachment.html>

Reply by email

Bo Berglund
to Juha Manninen: Thanks for the positive thinking! Usually people complain how buggy Lazarus is and how it…
Juha Manninen wrote
The development version (trunk) already has new features like configurable IDE Coolbar and configurable desktops + many other improvements. They will surely be in next release.

Is that version 1.5?
This is what I got when I followed an installation guide for putting FPC/Lazarus on a Raspberry Pi2 (ARM Cortex 7).
Help/About says FPC 3.1.1 and Lazarus 1.5 (SVN 50023)

If this is the beeding edge should I worry???

Bo Berglund Developer in Sweden

Reply by email

Juha Manninen
to Bo Berglund
Bo Berglund wrote
Is that version 1.5?

Yes.

Show quoted text 5 lines
This is what I got when I followed an installation guide for putting FPC/Lazarus on a Raspberry Pi2 (ARM Cortex 7). Help/About says FPC 3.1.1 and Lazarus 1.5 (SVN 50023) If this is the beeding edge should I worry???

No worries! Trunk works pretty well now.

How many seconds does Lazarus take to start in Raspberry Pi2? The startup was sped up before 1.4 release, it has most effect in low-end machines.
How long does it take to build Lazarus? For example : $ time make clean bigide

Juha

Reply by email

Ondrej Pokorny
to Anthony Walter: I'll looked at CodeTools, attempted changes, and rapidly gave up after trying to work…
Anthony Walter wrote
I'll looked at CodeTools, attempted changes, and rapidly gave up after trying to work through all kinds of confusion.

Just don't give up, otherwise Lazarus won't move forward!

Show quoted text 5 lines
Earlier this year I offered to try once again if only I could get a little help/tutelage but no follow up contact was made. The offer still stands. If the maintainer of CodeTools want some help, I'll be glad to do what I can but can we setup some time to chat (like on IRC) to help me get more familiar with however CodeTools is organized?

I cannot speak for Mattias but from my point of view (and I am at the same side as you - learning CodeTools code), you should not need or require such help. You can study by debugging the code. And I always got answers from Mattias to specific technical questions (I think I didn't have more than 3, though). One of my first patches for CodeTools was class helper support http://bugs.freepascal.org/view.php?id=28266 and it was 2 weeks of work. To support file names with dotted namespaces you won't probably need so much time but it should not be underestimated.

You probably will have to create a new structure for file namespaces, break filenames to pieces by dots and store the file information accordingly. Actually, thinking of it now, it should be possible with this approach.

Question to FPC people: does FPC support defining namespaces as Delphi does? E.g. that a unit "MyCompany.MyLibrary.MyUnit.pas" I can be refered to with only "MyUnit" in the uses clause if the namespace "MyCompany.MyLibrary" is added to the project settings?

I have never used dotted names in FPC, only in Delphi, so forgive me if it is a dumb question.

Ondrej

Show quoted text 7 lines
-- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151012/3c737891/attachment.html>

Reply by email

Sven Barth
to Ondrej Pokorny
"Ondrej Pokorny" wrote
Question to FPC people: does FPC support defining namespaces as Delphi

does?

E.g. that a unit "MyCompany.MyLibrary.MyUnit.pas" I can be refered to

with only "MyUnit" in the uses clause if the namespace "MyCompany.MyLibrary" is added to the project settings?

Not yet, but it's planned.

Regards,
Sven
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151012/fa98d9a9/attachment.html>

Reply by email

Mattias Gaertner
to Ondrej Pokorny: Just don't give up, otherwise Lazarus won't move forward! I cannot speak for Mattias but…
Show quoted text 5 lines
[...] Question to FPC people: does FPC support defining namespaces as Delphi does? E.g. that a unit "MyCompany.MyLibrary.MyUnit.pas" I can be refered to with only "MyUnit" in the uses clause if the namespace "MyCompany.MyLibrary" is added to the project settings?

AFAIK there is no FPC flag yet for specifying namespaces.

Mattias

Reply by email

Bo Berglund
to Juha Manninen: Yes. No worries! Trunk works pretty well now. How many seconds does Lazarus take to start…
Juha Manninen wrote 16 lines
On Mon, Oct 12, 2015 at 9:52 PM, Bo Berglund wrote: > Is that version 1.5? Yes. > This is what I got when I followed an installation guide for putting > FPC/Lazarus on a Raspberry Pi2 (ARM Cortex 7). > Help/About says FPC 3.1.1 and Lazarus 1.5 (SVN 50023) > > If this is the beeding edge should I worry??? No worries! Trunk works pretty well now. How many seconds does Lazarus take to start in Raspberry Pi2? The startup was sped up before 1.4 release, it has most effect in low-end machines.

Just measured it:

From the Menu/Programming/Lazarus click to when Lazarus is on the

screen with the last project loaded: 7 s

How long does it take to build Lazarus? For example : $ time make clean bigide

I cannot give a definite answer here even though I have done about 4-5 full clean installs on different size SDcards over the week-end. But after the svn was done fetching sources and FPC was compiled I did this to Lazarus:

# cd /usr/local/lazarus/source
# make all OPT=-dFPC_ARMHF
# make install OPT=-dFPC_ARMHF PREFIX=/usr/local

I had set swap to 1000MB and I had configured the Pi to boot to the command line rather than the GUI for the FPC/Lazarus build operations.

I would say that it took upwards of an hour to do the make. But I went out for coffee during the make operation, I should really have put it into a shelscript with a command to save a timestamp into a file at the start and end of the operation.
Will do so the next time around.

But that might perhaps not be what you asked?

Both FPC and Lazarus sources are retrieved as trunk from svn.

Oh, I see now that you invoke a make not as root! Are you supposed to be able to build Lazarus (and FPC) as a non-priviliged user?

Bo Berglund Developer in Sweden

Reply by email

Sven Barth
to Bo Berglund: On Mon, 12 Oct 2015 23:13:53 +0300, Juha Manninen Just measured it: screen with the last…
"Bo Berglund" wrote
Oh, I see now that you invoke a make not as root! Are you supposed to be able to build Lazarus (and FPC) as a non-priviliged user?

Yes. Normally you need root only to do a "make install" into a system directory.

Regards,
Sven
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151013/4abe4144/attachment.html>

Reply by email

Juha Manninen
to Bo Berglund: On Mon, 12 Oct 2015 23:13:53 +0300, Juha Manninen Just measured it: screen with the last…
Bo Berglund wrote 5 lines
>Just measured it: >From the Menu/Programming/Lazarus click to when Lazarus is on the screen with the last project loaded: 7 s

Not bad.

I would say that it took upwards of an hour to do the make. But I went

Show quoted text 6 lines
out for coffee during the make operation, I should really have put it into a shelscript with a command to save a timestamp into a file at the start and end of the operation. Will do so the next time around. But that might perhaps not be what you asked?

One hour is accurate enough. My Beebox does "make bigide" in about 4 minutes.
I wrote about it in forum (thread "dead computer") and hoped somebody would measure the time in a really fast machine. How fast are they nowadays?

Oh, I see now that you invoke a make not as root! Are you supposed to be able to build Lazarus (and FPC) as a non-priviliged user?

I build and run Lazarus in the local SVN repo directory as a normal user.

Juha
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151013/b888f5a2/attachment.html>

Reply by email

Marc Santhoff
to Bo Berglund: On Mon, 12 Oct 2015 23:13:53 +0300, Juha Manninen Just measured it: screen with the last…
Bo Berglund wrote
Are you supposed to be able to build Lazarus (and FPC) as a non-priviliged user?

Yes, if you install Lazarus into the users home directory.

I do this since years with fpc and Lazarus. It has the advantage of being writable by the user. If I like to fiddle with Lazarus' code, build the examples or some components need to be installed - all possible without changing the OS installation.

Marc Santhoff

Reply by email

Mattias Gaertner
to Juha Manninen: Not bad. I would say that it took upwards of an hour to do the make. But I went One hour…
Show quoted text 5 lines
[...] One hour is accurate enough. My Beebox does "make bigide" in about 4 minutes. I wrote about it in forum (thread "dead computer") and hoped somebody would measure the time in a really fast machine. How fast are they nowadays?

For example i7-3770 CPU @ 3.40GHz on Linux/Ubuntu 64bit:

fpc 2.6.4:
real 1m2.630s
user 0m58.592s
sys 0m3.556s

fpc 3.1.1:
real 1m23.381s
user 1m17.052s
sys 0m5.748s

fpc.cfg created by fpc's install.sh.

Mattias

Reply by email

Juha Manninen
to Mattias Gaertner
Mattias Gaertner wrote 11 lines
For example i7-3770 CPU @ 3.40GHz on Linux/Ubuntu 64bit: fpc 2.6.4: real 1m2.630s user 0m58.592s sys 0m3.556s fpc 3.1.1: real 1m23.381s user 1m17.052s sys 0m5.748s

Strange, FPC 3.1.1 is slower. Maybe the new additions in trunk have caused it. In earlier tests I remember they were about equal. My Beebox test was with FPC 3.0RC1. Beebox is maybe about 3 times slower than i7. Not bad for a small fanless gadget! It is like the high-end machines were just few years ago.

This gadget is still not for sale in many places. I got mine from Amazon, Germany :
http://www.amazon.de/Asrock-Desktop-PC-Celeron-Betriebssystem-schwarz/dp/B0104LW7AU/ref=sr_1_1?ie=UTF8&qid=1444727010&sr=8-1&keywords=beebox

Regards,
Juha

Reply by email

Unknown author
to Juha Manninen: Not bad. I would say that it took upwards of an hour to do the make. But I went One hour…
Juha Manninen wrote
One hour is accurate enough. My Beebox does "make bigide" in about 4 minutes. I wrote about it in forum (thread "dead computer") and hoped somebody would measure the time in a really fast machine. How fast are they nowadays?

what do you call "really fast"?? i might be able to try this on my 8-core 4Ghz box... i'm not sure because the current installation was done with fpcup and i'm not sure of its status so that i can update this installation further... the only other thing is that i don't use bigide at this time... it was too confusing for me while trying to learn the interface... so i started off with the basics and then added packages as i needed...

I build and run Lazarus in the local SVN repo directory as a normal user.

i do the same here as well as on my sole remaining winwhatever box which is scripted for updated using a .bat file i wrote before fpcup came on the scene...

NOTE: No off-list assistance is given without prior approval. *Please keep mailing list traffic on the list* unless private contact is specifically requested and granted.

Reply by email

Anthony Walter
to Unknown author

It's not that hard to build new Lazarus from trunk sources off your home folders ($HOME/development for example). Assuming you have svn, build tools, and your choice of compiler in the path then ...

If you don't have Lazarus from svn:

svn co http://svn.freepascal.org/svn/lazarus/trunk lazarus cd lazarus

Once you have Lazarus with an svn folder:

# update to the latest revision
svn update
make all
# optionally build in your favorite packages. on windows replace / with \ ./lazbuild ./components/anchordocking/design/anchordockingdsgn.lpk make useride

Then run:

./startlazarus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151013/b120a1b5/attachment.html>

Reply by email

Marc Santhoff
to Juha Manninen: Not bad. I would say that it took upwards of an hour to do the make. But I went One hour…
Juha Manninen wrote
I wrote about it in forum (thread "dead computer") and hoped somebody would measure the time in a really fast machine. How fast are they nowadays?

You only want a figure, the big picture?

Making target "bigide" is not completely comparable, it depends on what additional components are installed. And if the disk is a rotating one or an SSD. And the moons phase, me thinks ... ;)

dmesg|grep -i cpu

CPU: AMD Phenom(tm) II X4 975 Processor (3612.05-MHz K8-class CPU) FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs

OK,not really fast and a bit dated, but enough for me. ;) Since "gmake -j4" failed I'm posting only one test:

gmake clean time gmake bigide

135.043u 10.460s 2:39.86 91.0% 2541+1181k 1059+11804io 74pf+0w

gmake clean time gmake bigide

135.264u 10.245s 2:37.18 92.5% 2542+1182k 0+11803io 0pf+0w

Files are stored on a rotating disc.
Two and a half minutes is not enough for a coffee break.

Marc Santhoff

Reply by email

Juha Manninen
to Marc Santhoff
Marc Santhoff wrote
You only want a figure, the big picture?

Yes, basically.

Making target "bigide" is not completely comparable, it depends on what additional components are installed.

No, "bigide" has a fixed set of components.

And if the disk is a rotating one or an SSD. And the moons phase, me thinks ... ;)

SSD is a valid way to speed up a computer.
Moon phase clearly was the cause for some nasty bugs which I could not solve, but "make bigide" timing can be reproduced quite accurately with the same compiler settings.

> dmesg|grep -i cpu CPU: AMD Phenom(tm) II X4 975 Processor (3612.05-MHz K8-class CPU) FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs

3,6 GHz. Is it the Black Edition (Deneb)?

Show quoted text 12 lines
OK,not really fast and a bit dated, but enough for me. ;) Since "gmake -j4" failed I'm posting only one test: > gmake clean > time gmake bigide 135.043u 10.460s 2:39.86 91.0% 2541+1181k 1059+11804io 74pf+0w > gmake clean > time gmake bigide 135.264u 10.245s 2:37.18 92.5% 2542+1182k 0+11803io 0pf+0w Files are stored on a rotating disc. Two and a half minutes is not enough for a coffee break.

Not bad. Still a lot faster than Beebox.
Yet, the processing power / electric power ratio is quite amazing in Celeron N3000. Its TDP is 4W.

Regards,
Juha

Reply by email

Marc Santhoff
to Juha Manninen
Juha Manninen wrote 9 lines
On Tue, Oct 13, 2015 at 5:02 PM, Marc Santhoff wrote: > You only want a figure, the big picture? Yes, basically. > Making target "bigide" is not completely comparable, it depends on what > additional components are installed. No, "bigide" has a fixed set of components.

Hmm, but it does build the components I have installed as an extra to "naked" Lazarus. So it does more work than a vanilla installation?

Show quoted text 6 lines
> And if the disk is a rotating one or an SSD. And the moons phase, me thinks ... ;) SSD is a valid way to speed up a computer. Moon phase clearly was the cause for some nasty bugs which I could not solve, but "make bigide" timing can be reproduced quite accurately with the same compiler settings.

Compiler settings are unchanged from the installation.

Show quoted text 5 lines
> > dmesg|grep -i cpu > CPU: AMD Phenom(tm) II X4 975 Processor (3612.05-MHz K8-class CPU) > FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs 3,6 GHz. Is it the Black Edition (Deneb)?

I had no idea, but a search for the invoice said: yes, it is.

Show quoted text 14 lines
> OK,not really fast and a bit dated, but enough for me. ;) > Since "gmake -j4" failed I'm posting only one test: > >> gmake clean >> time gmake bigide > 135.043u 10.460s 2:39.86 91.0% 2541+1181k 1059+11804io 74pf+0w >> gmake clean >> time gmake bigide > 135.264u 10.245s 2:37.18 92.5% 2542+1182k 0+11803io 0pf+0w > > Files are stored on a rotating disc. > Two and a half minutes is not enough for a coffee break. Not bad. Still a lot faster than Beebox.

Need it for CAD, simulations and the like. But the Beebox looks good for smaller servers and media boxes. And it's beautiful to some extent.

But the first run was Lazarus 1.4.2. Trying again using version 1.4.4 and including gmake clean:

time gmake clean bigide

135.607u 11.301s 2:39.85 91.8% 2513+1182k 56+17961io 0pf+0w

gmake clean time gmake bigide

135.717u 10.049s 2:37.20 92.7% 2537+1180k 37+11886io 0pf+0w

No big difference. For fun another run on a SSD:

time gmake clean bigide

135.293u 9.968s 2:26.14 99.3% 2526+1184k 23+5787io 37pf+0w

Helps a bit.

I'd like to see the times for RPi and RPi2 ... but on those devices the storage media playes a role even bigger, some sd-cards are awfully slow.

Yet, the processing power / electric power ratio is quite amazing in Celeron N3000. Its TDP is 4W.

That's the only thing not so nice, but using power management functions it's ok, having enough power when needed.

Marc Santhoff

Reply by email

Mattias Gaertner
to Marc Santhoff
Show quoted text 5 lines
[...] > No, "bigide" has a fixed set of components. Hmm, but it does build the components I have installed as an extra to "naked" Lazarus. So it does more work than a vanilla installation?

A "naked" Lazarus is built with "make all".
"make bigide" contains a lot of packages. Both are fixed sets.

"make useride" calls "lazbuild --buildide" which builds your own set of packages.

Show quoted text 10 lines
[...] But the first run was Lazarus 1.4.2. Trying again using version 1.4.4 and including gmake clean: > time gmake clean bigide 135.607u 11.301s 2:39.85 91.8% 2513+1182k 56+17961io 0pf+0w > gmake clean > time gmake bigide 135.717u 10.049s 2:37.20 92.7% 2537+1180k 37+11886io 0pf+0w

I forgot to mention. My times were for 1.5.

[...]

Mattias

Reply by email

Marc Santhoff
to Mattias Gaertner
Mattias Gaertner wrote 14 lines
On Tue, 13 Oct 2015 17:56:15 +0200 Marc Santhoff wrote: >[...] > > No, "bigide" has a fixed set of components. > > Hmm, but it does build the components I have installed as an extra to > "naked" Lazarus. So it does more work than a vanilla installation? A "naked" Lazarus is built with "make all". "make bigide" contains a lot of packages. Both are fixed sets. "make useride" calls "lazbuild --buildide" which builds your own set of packages.

You're right, some development packages I installed temporarily are gone. I stumbled on RTTI, but it seems to be included in the standard set.

Show quoted text 12 lines
>[...] > But the first run was Lazarus 1.4.2. Trying again using version 1.4.4 > and including gmake clean: > > > time gmake clean bigide > 135.607u 11.301s 2:39.85 91.8% 2513+1182k 56+17961io 0pf+0w > > > gmake clean > > time gmake bigide > 135.717u 10.049s 2:37.20 92.7% 2537+1180k 37+11886io 0pf+0w I forgot to mention. My times were for 1.5.

Which svn revision would check out 1.5?

Marc Santhoff

Reply by email

Juha Manninen
to Marc Santhoff: Hmm, but it does build the components I have installed as an extra to "naked" Lazarus. So…
Marc Santhoff wrote 5 lines
> Yet, the processing power / electric power ratio is quite amazing in > Celeron N3000. Its TDP is 4W. That's the only thing not so nice, but using power management functions it's ok, having enough power when needed.

Why is it not nice? It enables a fanless passively cooled design. IMO it is great!

Your CPU has TDP 125W. It needs a big power supply and efficient cooling.

Juha

Reply by email

Unknown author
to Juha Manninen: The fastest PC available today. Yes please! Bigide is used for Lazarus release versions.…
Juha Manninen wrote 8 lines
On Tue, Oct 13, 2015 at 3:43 PM, wrote: > what do you call "really fast"?? The fastest PC available today. > i might be able to try this on my 8-core 4Ghz box... Yes please!

let me see what i can do...

[time passes]

i get as far as this...

/bin/rm -f fpcmade.x86_64-linux Package.fpc ./ppas.sh script.res link.res /bin/rm -f *.s *_ppas.sh
make[1]: Leaving directory
`/home/wkitty42/development/lazarus/components/chmhelp/lhelp' make -C packager/registration
make[1]: Entering directory
`/home/wkitty42/development/lazarus/packager/registration' /bin/rm -f ../units/x86_64-linux/fcllaz.ppu
/home/wkitty42/development/fpc/bin/x86_64-linux/ppcx64 -MObjFPC -Scghi -O1 -g -gl -l -vewnhibq -Fu. -FE. -FU../units/x86_64-linux -Cg -dx86_64 fcllaz.pas Free Pascal Compiler version 3.1.1 [2015/06/13] for x86_64 Copyright (c) 1993-2015 by Florian Klaempfl and others (1002) Target OS: Linux for x86-64
(3104) Compiling fcllaz.pas
Fatal: (10022) Can't find unit system used by fcllaz Fatal: (1018) Compilation aborted
make[1]: *** [fcllaz.ppu] Error 1
make[1]: Leaving directory
`/home/wkitty42/development/lazarus/packager/registration' make: *** [registration] Error 2

real 0m4.228s
user 0m0.819s
sys 0m1.352s

i don't know why... everything is in a tree under ~/development where fpcup placed it... i've never installed fpc or lazarus using anything other than fpcup and bootstrapping it from the raw... there is
~/development/fcpbootstrap/x86_64-linux-ppcx64 which turns out to be fpc 2.6.2 but i don't know how to tell your "time make clean bigide" to use it :(

> the only other thing is that i don't use bigide at this time... > it was too confusing for me while trying to learn the interface... Bigide is used for Lazarus release versions. Why is it confusing?

way too many options to drag and drop on a form... i do not come from delphi or any other gui coding environment so i don't know anything about them... trying to find one being looked for was like hunting a needle in a haystack...

the last time i used any sort of RAD it was for relatively small programs in Foxbase or dBase III and IV... there was a RAD template system thing that we used... once we got the forms laid out the way we wanted and generated the basic code to access, edit and delete the data, we then rewrote the majority of the code so much adding to and refining the existing code that we could not use the template thing any more to adjust the forms... from then on, it was like we had never used a RAD at all...

NOTE: No off-list assistance is given without prior approval. *Please keep mailing list traffic on the list* unless private contact is specifically requested and granted.

Reply by email

Travis Ayres
to Unknown author

I hope we see more books detailing Lazarus and Freepascal, rather than more advanced features. New features are great but really getting the word out is necessary - I've had people laugh when I say I program in object Pascal because I like it better than C++, and others say it's a dead language. It's really a shame because Lazarus\fpc are so good!

Show quoted text 86 lines
On 10/13/2015 09:51 AM, Juha Manninen wrote: > On Tue, Oct 13, 2015 at 3:43 PM, wrote: > >> what do you call "really fast"?? >> > > The fastest PC available today. > > i might be able to try this on my 8-core 4Ghz box... >> > > Yes please! > let me see what i can do... [time passes] i get as far as this... /bin/rm -f fpcmade.x86_64-linux Package.fpc ./ppas.sh script.res link.res /bin/rm -f *.s *_ppas.sh make[1]: Leaving directory `/home/wkitty42/development/lazarus/components/chmhelp/lhelp' make -C packager/registration make[1]: Entering directory `/home/wkitty42/development/lazarus/packager/registration' /bin/rm -f ../units/x86_64-linux/fcllaz.ppu /home/wkitty42/development/fpc/bin/x86_64-linux/ppcx64 -MObjFPC -Scghi -O1 -g -gl -l -vewnhibq -Fu. -FE. -FU../units/x86_64-linux -Cg -dx86_64 fcllaz.pas Free Pascal Compiler version 3.1.1 [2015/06/13] for x86_64 Copyright (c) 1993-2015 by Florian Klaempfl and others (1002) Target OS: Linux for x86-64 (3104) Compiling fcllaz.pas Fatal: (10022) Can't find unit system used by fcllaz Fatal: (1018) Compilation aborted make[1]: *** [fcllaz.ppu] Error 1 make[1]: Leaving directory `/home/wkitty42/development/lazarus/packager/registration' make: *** [registration] Error 2 real 0m4.228s user 0m0.819s sys 0m1.352s i don't know why... everything is in a tree under ~/development where fpcup placed it... i've never installed fpc or lazarus using anything other than fpcup and bootstrapping it from the raw... there is ~/development/fcpbootstrap/x86_64-linux-ppcx64 which turns out to be fpc 2.6.2 but i don't know how to tell your "time make clean bigide" to use it :( the only other thing is that i don't use bigide at this time... >> it was too confusing for me while trying to learn the interface... >> > > Bigide is used for Lazarus release versions. Why is it confusing? > way too many options to drag and drop on a form... i do not come from delphi or any other gui coding environment so i don't know anything about them... trying to find one being looked for was like hunting a needle in a haystack... the last time i used any sort of RAD it was for relatively small programs in Foxbase or dBase III and IV... there was a RAD template system thing that we used... once we got the forms laid out the way we wanted and generated the basic code to access, edit and delete the data, we then rewrote the majority of the code so much adding to and refining the existing code that we could not use the template thing any more to adjust the forms... from then on, it was like we had never used a RAD at all... -- NOTE: No off-list assistance is given without prior approval. *Please keep mailing list traffic on the list* unless private contact is specifically requested and granted. -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151013/6ca77805/attachment.html>

Reply by email

Salvatore Coppola
to Travis Ayres

An easy way to got apk for Android as Sam Herzog said "able to generate a valid android package (.apk) by just pressing F9"

2015-10-13 19:50 GMT+02:00 Travis Ayres :

Show quoted text 101 lines
I hope we see more books detailing Lazarus and Freepascal, rather than more advanced features. New features are great but really getting the word out is necessary - I've had people laugh when I say I program in object Pascal because I like it better than C++, and others say it's a dead language. It's really a shame because Lazarus\fpc are so good! On Oct 13, 2015 10:47 AM, wrote: > On 10/13/2015 09:51 AM, Juha Manninen wrote: > >> On Tue, Oct 13, 2015 at 3:43 PM, wrote: >> >>> what do you call "really fast"?? >>> >> >> The fastest PC available today. >> >> i might be able to try this on my 8-core 4Ghz box... >>> >> >> Yes please! >> > > let me see what i can do... > > [time passes] > > i get as far as this... > > /bin/rm -f fpcmade.x86_64-linux Package.fpc ./ppas.sh script.res link.res > /bin/rm -f *.s *_ppas.sh > make[1]: Leaving directory > `/home/wkitty42/development/lazarus/components/chmhelp/lhelp' > make -C packager/registration > make[1]: Entering directory > `/home/wkitty42/development/lazarus/packager/registration' > /bin/rm -f ../units/x86_64-linux/fcllaz.ppu > /home/wkitty42/development/fpc/bin/x86_64-linux/ppcx64 -MObjFPC -Scghi > -O1 -g -gl -l -vewnhibq -Fu. -FE. -FU../units/x86_64-linux -Cg -dx86_64 > fcllaz.pas > Free Pascal Compiler version 3.1.1 [2015/06/13] for x86_64 > Copyright (c) 1993-2015 by Florian Klaempfl and others > (1002) Target OS: Linux for x86-64 > (3104) Compiling fcllaz.pas > Fatal: (10022) Can't find unit system used by fcllaz > Fatal: (1018) Compilation aborted > make[1]: *** [fcllaz.ppu] Error 1 > make[1]: Leaving directory > `/home/wkitty42/development/lazarus/packager/registration' > make: *** [registration] Error 2 > > real 0m4.228s > user 0m0.819s > sys 0m1.352s > > > i don't know why... everything is in a tree under ~/development where > fpcup placed it... i've never installed fpc or lazarus using anything other > than fpcup and bootstrapping it from the raw... there is > ~/development/fcpbootstrap/x86_64-linux-ppcx64 which turns out to be fpc > 2.6.2 but i don't know how to tell your "time make clean bigide" to use it > :( > > the only other thing is that i don't use bigide at this time... >>> it was too confusing for me while trying to learn the interface... >>> >> >> Bigide is used for Lazarus release versions. Why is it confusing? >> > > way too many options to drag and drop on a form... i do not come from > delphi or any other gui coding environment so i don't know anything about > them... trying to find one being looked for was like hunting a needle in a > haystack... > > the last time i used any sort of RAD it was for relatively small programs > in Foxbase or dBase III and IV... there was a RAD template system thing > that we used... once we got the forms laid out the way we wanted and > generated the basic code to access, edit and delete the data, we then > rewrote the majority of the code so much adding to and refining the > existing code that we could not use the template thing any more to adjust > the forms... from then on, it was like we had never used a RAD at all... > > -- > NOTE: No off-list assistance is given without prior approval. > *Please keep mailing list traffic on the list* unless > private contact is specifically requested and granted. > > -- > _______________________________________________ > Lazarus mailing list > > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus > -- _______________________________________________ Lazarus mailing list http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151013/cc88e8b8/attachment-0001.html>

Reply by email

Marc Santhoff
to Juha Manninen: Why is it not nice? It enables a fanless passively cooled design. IMO it is great! Your…
Juha Manninen wrote 8 lines
On Tue, Oct 13, 2015 at 6:56 PM, Marc Santhoff wrote: >> Yet, the processing power / electric power ratio is quite amazing in >> Celeron N3000. Its TDP is 4W. > > That's the only thing not so nice, but using power management functions > it's ok, having enough power when needed. Why is it not nice?

Confusion. I was answering to your remark while thinking about my cpu.

It enables a fanless passively cooled design. IMO it is great!

It is.

Your CPU has TDP 125W. It needs a big power supply and efficient cooling.

_That's_ not so nice.

Marc Santhoff

Reply by email

Bo Berglund
to Juha Manninen: The fastest PC available today. Yes please! Bigide is used for Lazarus release versions.…
Juha Manninen wrote
Bigide is used for Lazarus release versions. Why is it confusing?

Did I do it wrong?
This is what I did (following an online tutorial):

# cd /usr/local/lazarus
# svn co http://svn.freepascal.org/svn/lazarus/trunk source # cd /usr/local/lazarus/source
# make all OPT=-dFPC_ARMHF
# make install OPT=-dFPC_ARMHF PREFIX=/usr/local

There is no mention of bigide here as far as I can see....

Did I get the latest version (at that time)?
svn reported revision 50023

Notice that it was done as sudo su....

Bo Berglund Developer in Sweden

Reply by email

Mark Morgan Lloyd
to Bo Berglund
Bo Berglund wrote 15 lines
On Tue, 13 Oct 2015 16:51:22 +0300, Juha Manninen wrote: > Bigide is used for Lazarus release versions. Why is it confusing? Did I do it wrong? This is what I did (following an online tutorial): # cd /usr/local/lazarus # svn co http://svn.freepascal.org/svn/lazarus/trunk source # cd /usr/local/lazarus/source # make all OPT=-dFPC_ARMHF # make install OPT=-dFPC_ARMHF PREFIX=/usr/local There is no mention of bigide here as far as I can see....

If you'd used make bigide there would have been extra packages built by default, giving you things like database and RTTI support.

Did I get the latest version (at that time)? svn reported revision 50023 Notice that it was done as sudo su....
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

Sven Barth
to Bo Berglund: On Tue, 13 Oct 2015 16:51:22 +0300, Juha Manninen Did I do it wrong? This is what I did…
"Bo Berglund" wrote 15 lines
On Tue, 13 Oct 2015 16:51:22 +0300, Juha Manninen wrote: > >Bigide is used for Lazarus release versions. Why is it confusing? Did I do it wrong? This is what I did (following an online tutorial): # cd /usr/local/lazarus # svn co http://svn.freepascal.org/svn/lazarus/trunk source # cd /usr/local/lazarus/source # make all OPT=-dFPC_ARMHF # make install OPT=-dFPC_ARMHF PREFIX=/usr/local

Note: you need OPT=-dFPC_ARMHF only for compiling the compiler, but not for the IDE.

Regards,
Sven
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151014/2ccb9448/attachment.html>

Reply by email

Juha Manninen
to Bo Berglund: On Tue, 13 Oct 2015 16:51:22 +0300, Juha Manninen Did I do it wrong? This is what I did…
Bo Berglund wrote 5 lines
# cd /usr/local/lazarus # svn co http://svn.freepascal.org/svn/lazarus/trunk source # cd /usr/local/lazarus/source # make all OPT=-dFPC_ARMHF # make install OPT=-dFPC_ARMHF PREFIX=/usr/local

...

Notice that it was done as sudo su....

If you already have a native compiler then "make bigide" should be enough.

There is no need to install Lazarus when using (and occationally updating) the trunk version.
Just compile it in the directory where sources are. Then run the binary from there.
Sudo is not needed for anything.

Juha

Reply by email

Bo Berglund
to Juha Manninen
Juha Manninen wrote 6 lines
There is no need to install Lazarus when using (and occationally updating) the trunk version. Just compile it in the directory where sources are. Then run the binary from there. Sudo is not needed for anything.

Even if the original make was done as su?

I would imagine that doing so has the effect that the produced files are owned by root rather than pi. But being not so Linux literate I might be wrong...

In any case given that I have a 3.1.1 fpc compiler (also built and installed as su) and have built the Lazarus IDE from trunk sources using the commands shown, can I then just do a svn update and then issue make as pi?

Bo Berglund Developer in Sweden

Reply by email

Ondrej Pokorny
to Anthony Walter: I'll looked at CodeTools, attempted changes, and rapidly gave up after trying to work…
Anthony Walter wrote 8 lines
I'll looked at CodeTools, attempted changes, and rapidly gave up after trying to work through all kinds of confusion. Earlier this year I offered to try once again if only I could get a little help/tutelage but no follow up contact was made. The offer still stands. If the maintainer of CodeTools want some help, I'll be glad to do what I can but can we setup some time to chat (like on IRC) to help me get more familiar with however CodeTools is organized?

FYI, that you don't develop it as well (see attached screenshots). I have to clean the source first, though.

Ondrej
-------------- next part --------------
A non-text attachment was scrubbed...
Name: unit-namespaces-2.png
Type: image/png
Size: 5340 bytes
Desc: not available
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151014/78c57580/attachment-0002.png> -------------- next part --------------
A non-text attachment was scrubbed...
Name: unit-namespaces-1.png
Type: image/png
Size: 5789 bytes
Desc: not available
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151014/78c57580/attachment-0003.png>

Reply by email

Juha Manninen
to Bo Berglund: On Wed, 14 Oct 2015 14:56:59 +0300, Juha Manninen Even if the original make was done as…
Bo Berglund wrote
Even if the original make was done as su?

No, then the generated files are owned by root and cannot be deleted by normal users.
You should delete those files and switch to a normal user. Building any programs as root is unusual and not recommended.

In any case given that I have a 3.1.1 fpc compiler (also built and installed as su) and have built the Lazarus IDE from trunk sources using the commands shown, can I then just do a svn update and then issue make as pi?

Yes, after you have deleted the generated files which are owned by root.

Juha

Reply by email

Anthony Walter
to Ondrej Pokorny: FYI, that you don't develop it as well (see attached screenshots). I have to clean the…

Ondrej,

Fantastic! That's exactly what I (and maybe some others) were looking for.

When you check it in please reply with the revision number so I can svn diff to see only your changes. I'd be interested in reviewing them. Hopefully your addition can shed some light on how to modify CodeTools for the rest of us.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20151014/91698dd1/attachment.html>

Reply by email

Marcos Douglas
to Ondrej Pokorny: FYI, that you don't develop it as well (see attached screenshots). I have to clean the…
Ondrej Pokorny wrote 14 lines
On 12.10.2015 20:19, Anthony Walter wrote: > > I'll looked at CodeTools, attempted changes, and rapidly gave up after > trying to work through all kinds of confusion. > > Earlier this year I offered to try once again if only I could get a little > help/tutelage but no follow up contact was made. The offer still stands. If > the maintainer of CodeTools want some help, I'll be glad to do what I can > but can we setup some time to chat (like on IRC) to help me get more > familiar with however CodeTools is organized? FYI, that you don't develop it as well (see attached screenshots). I have to clean the source first, though.

I was waiting this too. Thank you!

Best regards,
Marcos Douglas

Reply by email

Ondrej Pokorny
to Anthony Walter: Fantastic! That's exactly what I (and maybe some others) were looking for. When you check…
Anthony Walter wrote 8 lines
Ondrej, Fantastic! That's exactly what I (and maybe some others) were looking for. When you check it in please reply with the revision number so I can svn diff to see only your changes. I'd be interested in reviewing them. Hopefully your addition can shed some light on how to modify CodeTools for the rest of us.

I don't have commit rights. I'll send a patch to the bug report http://bugs.freepascal.org/view.php?id=22235 and send a message to mailing list when I uploaded it.

Ondrej

Reply by email

Bo Berglund
to Juha Manninen: No, then the generated files are owned by root and cannot be deleted by normal users. You…
Juha Manninen wrote 14 lines
On Wed, Oct 14, 2015 at 7:36 PM, Bo Berglund wrote: > Even if the original make was done as su? No, then the generated files are owned by root and cannot be deleted by normal users. You should delete those files and switch to a normal user. Building any programs as root is unusual and not recommended. > In any case given that I have a 3.1.1 fpc compiler (also built and > installed as su) and have built the Lazarus IDE from trunk sources > using the commands shown, can I then just do a svn update and then > issue make as pi? Yes, after you have deleted the generated files which are owned by root.

I am probably ways off now with the installation I did from the tutorial.
How to rectify?
1) Remove the already compiled version
How could I do that? It seems to exist in a this directory: /usr/local/share/lazarus
which is listed as follows:
drwxr-xr-x 18 root root 4096 Oct 10 14:27 lazarus

When I did the build the checkout from svn went to: /usr/local/lazarus/source

Then the following commands were executed inside that directory: make all OPT=-dFPC_ARMHF
make install OPT=-dFPC_ARMHF PREFIX=/usr/local

And then the tutorial had this:
Remove sources:
---------------
cd /usr/local
rm -rf /usr/local/lazarus

2) Check out anew into the pi home directory:
cd ~/development
svn co http://svn.freepascal.org/svn/lazarus/trunk lazarus

3) Build lazarus.
How do I do this in the circumstances mentioned above? Is this the way or does one use another command?

cd ~/development/lazarus
make all
or
make all OPT=-dFPC_ARMHF

In any case, where does the compiled program wind up? (So I can start it?)

Or do I also run the second command:
make install OPT=-dFPC_ARMHF PREFIX=/usr/local

Sorry to be a nuisance, but I really want to get this right...

Bo Berglund Developer in Sweden

Reply by email

Marc Santhoff
to Bo Berglund
Bo Berglund wrote 8 lines
On Mon, 12 Oct 2015 23:13:53 +0300, Juha Manninen wrote: $ time make clean bigide I have never seen such a command before, does it print the time the command following time takes to complete??? man time does not mention such a functionality...

Yes, it does. See here:

https://www.freebsd.org/cgi/man.cgi?query=time&manpath=FreeBSD +9.3-stable

Sorry, no Linux man page link at hand, but I think any Linux variant will know that command.

Marc Santhoff

Reply by email

Juha Manninen
to Bo Berglund: On Wed, 14 Oct 2015 19:55:13 +0300, Juha Manninen I am probably ways off now with the…
Bo Berglund wrote
3) Build lazarus. How do I do this in the circumstances mentioned above?

If you have a native FPC installed then "make bigide" in the source dir should be enough.
If you have some cross-compiler setup then I don't know. You should also read the answers you already got.
For further assistance please open a new thread for "Lazarus in Raspberry Pi2", this is going out of topic here.

"man time" works here.

Juha

Reply by email

Flávio Etrusco
to Bo Berglund: On Mon, 12 Oct 2015 23:13:53 +0300, Juha Manninen $ time make clean bigide I have never…
Bo Berglund wrote 9 lines
On Mon, 12 Oct 2015 23:13:53 +0300, Juha Manninen wrote: $ time make clean bigide I have never seen such a command before, does it print the time the command following time takes to complete??? man time does not mention such a functionality...

time is a builtin command (integrated in bash) thus to obtain help use 'help time'.

Best regards,
-Fl?vio

Reply by email

Bo Berglund
to Flávio Etrusco
Fl?vio Etrusco wrote 14 lines
On Wed, Oct 14, 2015 at 5:58 PM, Bo Berglund wrote: > On Mon, 12 Oct 2015 23:13:53 +0300, Juha Manninen > wrote: > > $ time make clean bigide > > I have never seen such a command before, does it print the time the > command following time takes to complete??? > man time does not mention such a functionality... > time is a builtin command (integrated in bash) thus to obtain help use 'help time'.

Thanks, I thought it to be a version of date where the display would only be the time...
man time seemed to indicate that, but help time says otherwise. In fact a very handy tool. Always learning new stuff... :)

I am going to rebuild the Lazarus bigide on my Raspberry Pi2 later today and will use this command to get a good time for the process and report back here.
I just have to first find out how to get rid of the erroneously done installation using su...

Bo Berglund Developer in Sweden

Reply by email

Mark Morgan Lloyd
to Bo Berglund
Bo Berglund wrote 21 lines
On Wed, 14 Oct 2015 19:48:14 -0300, Fl?vio Etrusco wrote: > On Wed, Oct 14, 2015 at 5:58 PM, Bo Berglund wrote: >> On Mon, 12 Oct 2015 23:13:53 +0300, Juha Manninen >> wrote: >> >> $ time make clean bigide >> >> I have never seen such a command before, does it print the time the >> command following time takes to complete??? >> man time does not mention such a functionality... >> > time is a builtin command (integrated in bash) thus to obtain help use > 'help time'. > Thanks, I thought it to be a version of date where the display would only be the time... man time seemed to indicate that, but help time says otherwise. In fact a very handy tool. Always learning new stuff... :)

time is one of a number of commands that are implemented both as part of the most common shells (Bash, Dash etc.) and as standalone binaries. There's reasons for this, based on the fact that they're monitoring or changing the state of the shell itself.

Show quoted text 5 lines
I am going to rebuild the Lazarus bigide on my Raspberry Pi2 later today and will use this command to get a good time for the process and report back here. I just have to first find out how to get rid of the erroneously done installation using su...

Provided you've got the space you might want to rename it until you're happy the new build is OK.

$ sudo mv old_directory_name new_directory_name

Once you're happy you've got things right you can delete it

$ sudo rm -r directory_name

or even

$ sudo rm -rf directory_name

but that can be brutal if you get it wrong. I usually do something like this to create etc. a directory for Lazarus:

$ cd /usr/local/share
$ sudo mkdir lazarus
$ sudo chown markMLl:staff lazarus

After that you can fill the directory using svn or whatever and compile it, without needing root.

As discussed elsewhere, you need to sort out logging into the RPi as "yourself" rather than root, or you'll end up with a mix of file ownership which you'll periodically find yourself sorting out with something like

$ sudo chown -R markMLl:staff lazarus

or whatever.

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

Marco van de Voort
to Mattias Gaertner: On Tue, 13 Oct 2015 10:39:01 +0300 For example i7-3770 CPU @ 3.40GHz on Linux/Ubuntu…
Mattias Gaertner wrote 16 lines
> I wrote about it in forum (thread "dead computer") and hoped somebody would > measure the time in a really fast machine. How fast are they nowadays? For example i7-3770 CPU @ 3.40GHz on Linux/Ubuntu 64bit: fpc 2.6.4: real 1m2.630s user 0m58.592s sys 0m3.556s fpc 3.1.1: real 1m23.381s user 1m17.052s sys 0m5.748s fpc.cfg created by fpc's install.sh.

For further reference, I also have a i7-3770, and for trunk (3.1.1) on a SSD, FPC builds in about 55s. On Windows 1:10 or so when it is hot (been built before), 1:40 when not.

Reply by email

Bo Berglund
to Mark Morgan Lloyd: time is one of a number of commands that are implemented both as part of the most common…
Mark Morgan Lloyd wrote
$ sudo mv old_directory_name new_directory_name

I did:
sudo mv /usr/local/share/lazarus /usr/local/share/lazarus_old

Show quoted text 5 lines
$ sudo rm -r directory_name or even $ sudo rm -rf directory_name

What is the difference?

Show quoted text 8 lines
create etc. a directory for Lazarus: $ cd /usr/local/share $ sudo mkdir lazarus $ sudo chown markMLl:staff lazarus After that you can fill the directory using svn or whatever and compile it, without needing root.

I already created a directory /home/pi/development where I checked out lazarus trunk into subdir lazarus. So the sources are there. In these discussions I have understood that lazarus can be handled entirely within the home dir...

As discussed elsewhere, you need to sort out logging into the RPi as "yourself" rather than root

My problems earlier were again following the tutorial website where everything was done after sudo su...
That part is entirely fixed now! :)

---- Lazarus has been compiling bigide ----
~/development/lazarus $ time make bigide

Result:
real 17m57.477s
user 14m15.830s
sys 2m26.930s

My Rasberry Pi2 was set up with 1000GB swap and to boot into the command line interface (to not waste memory) for the build operation above.
I will now switch out of this thread and create a new one for installation of Lazarus on a Raspberry Pi2 since I still have problems.

Bo Berglund Developer in Sweden

Reply by email

Mattias Gaertner
to Marco van de Voort: For further reference, I also have a i7-3770, and for trunk (3.1.1) on a SSD, FPC builds…
Show quoted text 21 lines
On Tue, Oct 13, 2015 at 10:39:11AM +0200, Mattias Gaertner wrote: > > I wrote about it in forum (thread "dead computer") and hoped somebody would > > measure the time in a really fast machine. How fast are they nowadays? > > For example i7-3770 CPU @ 3.40GHz on Linux/Ubuntu 64bit: > > fpc 2.6.4: > real 1m2.630s > user 0m58.592s > sys 0m3.556s > > fpc 3.1.1: > real 1m23.381s > user 1m17.052s > sys 0m5.748s > > fpc.cfg created by fpc's install.sh. For further reference, I also have a i7-3770, and for trunk (3.1.1) on a SSD, FPC builds in about 55s. On Windows 1:10 or so when it is hot (been built before), 1:40 when not.

Thanks.
My numbers were for "make bigide" of Lazarus.

Mattias

Reply by email

Mark Morgan Lloyd
to Bo Berglund: On Thu, 15 Oct 2015 09:13:19 +0000, Mark Morgan Lloyd I did: sudo mv…
Bo Berglund wrote 14 lines
On Thu, 15 Oct 2015 09:13:19 +0000, Mark Morgan Lloyd wrote: > $ sudo mv old_directory_name new_directory_name I did: sudo mv /usr/local/share/lazarus /usr/local/share/lazarus_old > $ sudo rm -r directory_name > > or even > > $ sudo rm -rf directory_name What is the difference?

f

I think you've worked out things like man rm but at the risk of wandering too far off topic: it's the force option, which particularly if run by root can cause a lot of trouble.

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

Ondrej Pokorny
to Anthony Walter: Fantastic! That's exactly what I (and maybe some others) were looking for. When you check…
Anthony Walter wrote 8 lines
Ondrej, Fantastic! That's exactly what I (and maybe some others) were looking for. When you check it in please reply with the revision number so I can svn diff to see only your changes. I'd be interested in reviewing them. Hopefully your addition can shed some light on how to modify CodeTools for the rest of us.

You are welcome to study and test my patch:

http://bugs.freepascal.org/view.php?id=22235

Ondrej

Reply by email