Sign in Join

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

Mailing lists / fpc-pascal / 2012-12

CrossFPC is finally released

19 messages · 13 people · –

Reply by email Subscribe to this list Your subscription

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

Adrian Veith
to Graeme Geldenhuys

the website was dead for years and still nothing to download, but if I am not wrong one of the makers is BERO who did the impressive besen javascript in pascal.

Sounds interesting anyway - even if I see Object Pascal as a dead language for the future.

Graeme Geldenhuys wrote 14 lines
Using Delphi IDE to write code, and FPC to compile or cross-compile to 64-bit Windows, 32-bit Linux etc. http://www.crossfpc.com/ I believe it comes from the same authors that brought CrossKylix many years back. Regards, - Graeme -
Mattias Gaertner
to Graeme Geldenhuys
Show quoted text 5 lines
On 30/12/12 03:47, leledumbo wrote: > first public beta in 7 years since the latest > internal release, wow Hey, that seems the norm these days. Lazarus was in beta for over 12 years!

Actually it was beta for 10 years. Since 2002-08-18.

Mattias

Marco van de Voort
to leledumbo

In our previous episode, leledumbo said:

lazarus was in beta for that many years, but this project has just got its FIRST beta in many years

It looks to me that they more or less just decided to release what they had got.

More far out features that were talked about on the maillist (like designer, and debugging) are not in the release, and probably never will be.

I didn't mind those features back then, just didn't consider them very realistic.

What back then annoyed me more was the idea to based on Delphi and Kylix sources (with obvious non-freeness and (very) Linux/x86 specific behaviour).

It scares me that sources are still not available, despite the announcement. But at least they seem to support ARM, so they probably cleansed the worst from the sources. But without sources that is hard to tell. It might be an horrible ifdef mess in unit libc.

They also must have done something about the Delphi side of things seeing the amount of versions they support.

The trouble is that Kylix is nowadays much less relevant than back then, to the extend that we put deprecated messages in the libc unit in FPC 2.6.2

Also the difference between Delphi and Lazarus as an IDE is much less, cutting out another main motivator for the project.

Ralf A. Quint
to leledumbo: lazarus was in beta for that many years, but this project has just got its FIRST beta in…
leledumbo wrote
lazarus was in beta for that many years, but this project has just got its FIRST beta in many years

No so fast, they actually have to release something first. On their web site it says "The first public download will be provided within late December 2012" in one place and "24 December 2012 (internal beta)" in another, actually available is still nothing. Ok, still 33h to go 'til the end of December 2012 in this part of the world, let's see if something is going to happen (or not...)

Ralf

Simon Kissel

[Excuse the broken thread reference, I just subscribed to this list]

We've just released the first public
check it out. So yes, we kept the "late 2012" release date ;)

Bero indeed is the co-author of this project and he's a brilliant mind. Sadly his code typically is undocumented and a visual mess. That's part of the reason it took 7 years for this to be turned into a public project instead of an internal one only - a hell lot of clean up work had to be done, and there still is much more to do.

Marco: LTNS. Well, remote debugging is there, but at this point without any documentation. No visual designer however, we've kicked out the old CLX-based stuff we once had in it a long time ago. In case there is demand (and time) we might add one or more visual toolkits in the future - but for us personally, this is not a focus. I use CrossFPC commercially for embedded projects where all GUIs are web-based (typically ExtJS these days), and Bero uses the project for all kind of weird things (including Android games).

However, it's not just that we've "dumped what we had", this is not a one-shot thing. We are using it daily for years, and will keep doing so. In the background you probably have seen various activity and FPC improvements from Nico Erfurth on the ARM stuff, who is a developer at my Viprinet company, and we intend to keep investing into this as we really need better code generation for ARM.

In regards of CrossFPC it's just a matter of moving from a non-public release process to a public one. Therefore CrossFPC can be considered an active project. Yes, it's only serving a small niche, and maybe that niche even one day will be obsoleted by Embarcadero's mobile studio, or maybe not.

Cheers,

Simon

Sven Barth
to Simon Kissel: [Excuse the broken thread reference, I just subscribed to this list] We've just released…
Simon Kissel wrote
and Bero uses the project for all kind of weird things (including Android games).

Before I forget it: does Bero use the targetandroid branch? If not could he try to test it a bit? It's planned to merge it to trunk in the future, but the more it is tested before that the more stable the result will be then. He could even try the new possibility of running the testsuite on an Android device. This way we could figure out potential problems on different devices (as you could have access to a more wide range of devices).

Regards,
Sven

Michael Van Canneyt
to Simon Kissel: [Excuse the broken thread reference, I just subscribed to this list] We've just released…
Simon Kissel wrote
[Excuse the broken thread reference, I just subscribed to this list] We've just released the first public check it out. So yes, we kept the "late 2012" release date ;)

Technically, I am amazed by your achievement.
It installed flawlessly, examples compiled (well, with crossfpc). As a first impression: thumbs up.

What puzzles me is: why still do this ?

8-10 years ago, I could see the need.

These days, I much more prefer working in the Lazarus IDE than in Delphi.

Lazarus is much faster, is much better at finding units and identifiers, is more stable and has some features which I can no longer work without. And I have learned to live with its drawbacks. I'm sure people using MSEGUI+MSEIDE will have similar comments.

As for VCL functionality: You state that GUI will not work with CrossFPC. That means that third-party stuff like Dev Express or TMS software components are also out. So this reason for preferring Delphi over Lazarus also falls away.

Midas will also not work. (still a compelling reason to use Delphi).

Debugging is done with gdb, so similar in functionality to what Lazarus offers.

So what does Delphi+CrossFPC offer that Lazarus (or MSEGUI+MSEIDE, if you prefer) does not ?

Given that you obviously spent lots of time on this, I would think this time is better spent on implementing the missing things in Lazarus ? Which - after initial inspection - would seem to me a matter of improving the installer so it includes cross-compilation.

Please don't mistake this as critique (crossfpc performed as it should), I am just curious for your motivation. Maybe I missed some things.

Michael.

Graeme Geldenhuys
to Michael Van Canneyt
Michael Van Canneyt wrote
Which - after initial inspection - would seem to me a matter of improving the installer so it includes cross-compilation.

That is already very well done with CodeTyphon so by the way. I tried CodeTyphon the other day and was rather impressed by how easy they have made cross-compiling.

Regards,
- Graeme -

Simon Kissel
to Michael Van Canneyt: Technically, I am amazed by your achievement. It installed flawlessly, examples compiled…

Hi Michael,

What puzzles me is: why still do this ?

Depends.

From my own/commercial perspective:

I still love the Delphi 7 IDE, and my co-workers also are Delphi users and have not switched to Lazarus. We also use a hell lot of commercial Delphi components.

Our work-flow for our embedded products simply still is based on the Delphi 7 IDE, and on CrossKylix. Win32 versions of our embedded stuff are built using the Delphi compiler, the x86 Linux version is built using CrossKylix (because the generated executables are still much faster than FPC ones), and the ARM targets are compiled using CrossFPC.

So we have all targets using 3 different compiler platforms integrated into a single IDE, and a HUGE code base that works with all three of those.

Due to FPC on ARM being a moving target (there really is still a lot to do, and we are taking part in that) we need to maintain our own build of FPC anyway, so if we'd go Lazarus we'd also have to maintain our own Lazarus builds. Plus we are based on Libc on all Unix plattforms for a number of reasons.

From a "is this any useful for the public" perspective:

Embarcadero still has a number of customers who haven't switched to Lazarus for a number of reasons. CrossFPC is providing an infrastructure to those who want to stay with Delphi but also dive into cross-platform.

Time will tell what comes out of this. CrossFPC as a sort of FPC distribution could serve as a supported platform for commercial Delphi component vendors - it makes it very easy to support multiple target platforms, even for closed-source applications. We've already fixed a quite big number of commercial components so they compile with Delphi, Kylix and FPC and therefore can be used by us. This also could be useful for others.

We've got a lot of requests for releasing CrossFPC, and we don't really yet know WHY people requested it, IOW what they are going to use it for. But I know that CrossKylix is still heavily used, so there appears to be an audience to it.

Today I think the biggest use for CrossFPC is to allow Windows Delphi developers to easily target embedded and server applications with a low learning curve.

CrossFPC also has a standalone-mode which does not require the Delphi IDE. You could therefore also regard it as a FPC cross-compiler distribution, which is also something that others potentially can build upon.

For example, we internally use Sencha Architect and ExtJS together with CrossFPC. You can create beautiful web applications using that, with a Pascal backend that runs on a hell lot of hardware devices.

So what does Delphi+CrossFPC offer that Lazarus (or MSEGUI+MSEIDE, if you prefer) does not ?

A different work-flow, a different infrastructure. And a team that actually does a lot of commercial embedded work using this, which means that things are tested a lot.

Given that you obviously spent lots of time on this, I would think this time is better spent on implementing the missing things in Lazarus ? Which - after initial inspection - would seem to me a matter of improving the installer so it includes cross-compilation.

Just as with the ARM improvements for FPC we have been working on, we'll be very happy if the work we do is re-used in other places. We also have the intention to financially invest into the FPC platform - for example we have the idea to host a sponsored FPC development weekend where work on the ARM platform would be done. An ARM compiler that produces better code which in the end would double the speed of our applications for me would be worth at least 30k Euro, to give an example. We are curious if Embarcadero will manage to put out it's LLVM-based ARM compiler in a quality that's an option to us, but we have learned that it's better not to depend on them. But that's a different topic.

Therefore: Even if CrossFPC as it is might only serve a very small niche, the commercial motivation behind it probably will be able to help FPC and Object Pascal relevance.

And yes, cross-compilation support inside Lazarus would be great.

Cheers,

Simon

Michael Van Canneyt
to Simon Kissel
Simon Kissel wrote 7 lines
Hi Michael, > What puzzles me is: why still do this ? Depends. From my own/commercial perspective:

Thank you for your answer and your support of FPC !

My curiosity is not really satisfied - still do not see why you consider retaining Delphi 7 an advantage - but I am at least glad that you consider FPC a viable platform.

As of tomorrow, I will be working for a new employer, who pays me to work part-time on FPC/Lazarus: Maybe you can discuss with them about sponsoring an event. I am sure the editor of Blaise Pascal magazine will also be interested in hearing your plans.

As for Sencha architect/ExtJS : I use it too with FPC, in a Lazarus environment, but am interested in knowing what you achieved. If you ever feel like sharing whatever you do in that area, I would appreciate it !

Michael.

geneb
to Gabor Boros: 2012.12.31. 0:18 keltezéssel, Ralf A. Quint írta:…
Gabor Boros wrote 10 lines
2012.12.31. 0:18 keltezéssel, Ralf A. Quint írta: > At 03:01 PM 12/30/2012, leledumbo wrote: > Ok, still 33h to go 'til the end of December 2012 in this part of the > world, let's see if something is going to happen (or not...) > > Ralf https://forums.embarcadero.com/thread.jspa?threadID=81323&tstart=0

The moderators pretty much delete anything he posts. At first guess it would be due to overwhelming corporate butthurt. *laughs*

g.

Proud owner of F-15C 80-0007 http://www.f15sim.com - The only one of its kind. http://www.diy-cockpits.org/coll - Go Collimated or Go Home. Some people collect things for a hobby. Geeks collect hobbies. ScarletDME - The red hot Data Management Environment A Multi-Value database for the masses, not the classes. http://www.scarletdme.org - Get it _today_!