Lazarus

Free Pascal => Other OS => Topic started by: Trenatos on August 26, 2015, 07:33:11 pm

Title: AmigaOS 4?
Post by: Trenatos on August 26, 2015, 07:33:11 pm
I read that there was work done on an AmigaOS 4 port (Not AOS4 classic), any info on how far that got?
Title: Re: AmigaOS 4?
Post by: molly on August 26, 2015, 07:55:02 pm
I'm curious as of where you might of heard that.

Free Pascal 3.0 now officially (re-) supports classic Amiga/68k/020 (note the absence of the OS 4 part, which is for the most recent Amiga OS family, see also here (http://wiki.freepascal.org/AmigaOS)).

Other then that MorphOS (http://wiki.freepascal.org/MorphOS) support was already available, and since release 3.0 FPC now also officially supports AROS (no official FPC wiki page yet, see here (http://fpcaroswiki.alb42.de/index.php?title=Main_Page)).

Amiga (Chain-Q + ALB42), AROS (ALB42) and MorphOS (Chain-Q) downloads are kindly provided by ALB42 on either the release directory (http://home.alb42.de/fpcbinint/) or nightly directory (http://home.alb42.de/fpcbin/) of ALB42's build-server, or you can take a look at ALB42's blog page (http://blog.alb42.de) which contains some links to downloads and other interesting topics as well. That is, if you're interested  :D

AFAIK AmigaOS 4 support has been dropped by lack of a maintainer  :'(
Title: Re: AmigaOS 4?
Post by: Trenatos on August 26, 2015, 08:04:20 pm
That's awesome, love that AROS is supported.

Do we have the full Lazarus on AROS?

I read about it here: http://wiki.freepascal.org/AmigaOS
And here: http://os4depot.net/?function=showfile&file=development/language/fpc.lha

I don't have an AOS4 machine, but plan on getting one.

It's much more interesting if I can use Lazarus on it though, as that's the only realistic way I can develop software for AOS4
Title: Re: AmigaOS 4?
Post by: Trenatos on August 26, 2015, 08:05:32 pm
Aha, yeah, seems the port was started by Chain-Q
Title: Re: AmigaOS 4?
Post by: molly on August 26, 2015, 08:34:25 pm
Quote
That's awesome, love that AROS is supported.
I second that   8)

Quote
Do we have the full Lazarus on AROS?
Unfortunately, that would require some additional work.

Lazarus is a _huge_ project, and currently ALB42 is the only person working on it. It takes some time to get LCL working for MUI/Zune.

It does compile many common components very well though (using FPC with Lazarus units installed), and you could always use Lazarus on linux/Windows to build your GUI and cross-compile (or compile on the native machine). For instance the Edisyn editor runs perfectly on Windows, Linux and AROS.

fp-ide runs as well on all Amiga and derived platforms.

fpGUI from Graeme is also fully supported, although i do believe Graeme updated fpGUI quite recently, so that would mean the port for AROS lacks behind a little.

Quote
I read about it here: http://wiki.freepascal.org/AmigaOS
Ah ok. i know the information on that page all too well...

Quote
And here: http://os4depot.net/?function=showfile&file=development/language/fpc.lha
Yes, that was Chain-Q's attempt to get some people interrested on OS4. Seems that never happened  :'(

(After all, Pascal is some dusty programming language from the seventees, and got stuck there for about half a century. ever heard that phrase ?)  >:D

Quote
I don't have an AOS4 machine, but plan on getting one.
Always nice to see someone trying another route  8-) Hopefully enjoy !

Quote
It's much more interesting if I can use Lazarus on it though, as that's the only realistic way I can develop software for AOS4
Sorry, i can't help you there. As said, no maintainer is currently available for the OS4 port, and Chain-Q does not have the time to fully maintain the port anymore (at least that is what i understood).

Quote
Aha, yeah, seems the port was started by Chain-Q
Correct. See also my above answers.

In case you (or someone else reading this) are interested in helping out maintaining the OS4 port, then please don't hesitate and contact Chain-Q. He's more than willing to give a hand (if his time permits).
Title: Re: AmigaOS 4?
Post by: Trenatos on August 26, 2015, 08:42:17 pm
I would love to help out with the port, and I'd be ok with developing on Windows/Linux/Mac, and then compiling on AOS4 or cross compiling.

But I don't have an AOS4 machine yet, so it doesn't seem like a good idea to go delving too deep into that at least until I get a machine.

I've also never written anything systems related like drivers, so I'm not sure how much help I would actually be..

People need to get over the "It's old" mentality, it's utterly irrelevant how old it is, as it's actively updated.
Title: Re: AmigaOS 4?
Post by: molly on August 26, 2015, 09:47:18 pm
Quote
But I don't have an AOS4 machine yet, so it doesn't seem like a good idea to go delving too deep into that at least until I get a machine.
No problem at all.

Indeed it would be better to wait until you actually have a physical machine in front of you  :)

Besides that, and if you're new to Amiga OS (or returning from long ago), then you might have some better things to explore before doing anything else  :P

Quote
I've also never written anything systems related like drivers, so I'm not sure how much help I would actually be..
Well, that's the beauty. No drivers writing required, although you would need to have some knowledge on system library calls, but that's basically the same as for Windows/Linux/etc. Read the documentation/SDK, figure out which system calls to make and implement a function  :D

Quote
People need to get over the "It's old" mentality, it's utterly irrelevant how old it is, as it's actively updated.
Correct. Other against arguments are available in plenty as well, but they can usually be counter-argumented.

I really don't mind if someone dislikes Pascal or has other well educated reasons to dismiss it. Even i dislike using it for certain projects. But the 'dusty' argument is one of those arguments that simply makes my skin crawl ...

... In case you still have interest after your machine arrived, then please feel free to post a message here again, or hang around the OS4 forums. You could always play around with the 'old' FPC compiler available for OS4 from the link you posted earlier and see where that brings you.
Title: Re: AmigaOS 4?
Post by: Trenatos on August 26, 2015, 10:16:57 pm
Oh I've been bent on developing software for AOS4 for many years, just never had enough spare money at the right time to buy a machine.

Now I'm in a good job, so should be able to afford one in a not too distant future.

Pascal/Lazarus has, for me, the perfect mixture or ease-of-use, RAD, and power.

Bah, dusty, it's dusty in the same way that internal combustion engines are dusty. lol
Title: Re: AmigaOS 4?
Post by: molly on May 07, 2016, 12:09:50 am
AmigaOS4 support added to trunk by Chain-Q and ALB42. These guys are on steroids  8-)

Family picture (http://blog.alb42.de/2016/05/06/amiga-family-photo/)

Keep in mind though: all experimental. Implementation(s) are (most probably) subject to change.

Visit ALB42's blog (http://blog.alb42.de/) to read more about AmigaOS4 support.

Some hihghlights:
- most required native libraries such as exec, dos, intuition, graphics etc. available
- FP-IDE up 'n running
- initial LCL implementation
Title: Re: AmigaOS 4?
Post by: saashapont on July 26, 2016, 03:23:10 pm
If it possible please write any tutorial, how i can install it on mac?
Title: Re: AmigaOS 4?
Post by: molly on July 26, 2016, 07:12:42 pm
If it possible please write any tutorial, how i can install it on mac?
Install what exactly for what mac hardware and which OS version ?

Note that AmigaOS4 support is officially not supported, only works from FPC trunk and is considered experimental as there is no (dedicated) maintainer.

That is one of the reasons that ALB42 provides a cross-platform development (VmWare) image (Linux inside) which can be downloaded here. (http://blog.alb42.de/virtual-lazarus/).
Title: Re: AmigaOS 4?
Post by: saashapont on July 27, 2016, 10:06:00 am
I download this image and this is work! But It will be better to have it on my system without virtualization
Title: Re: AmigaOS 4?
Post by: molly on July 27, 2016, 11:21:05 am
Hi saashapont,

Thank you for your interest, having tried the image and letting the developers know that it works.

But It will be better to have it on my system without virtualization
Of course it is  :D

As said, things for AmigaOS4 are (highly) experimental at the moment. No guarantees can be given whatsoever.

There is currently no (full) existing documentation (nor was there need for one until now). The little documentation that does exist is written here (http://fpcamigawiki.alb42.de/index.php?title=Installation_OS4).

One of the first hurdles is creating the AmigaOS4 (cross-)binutils for your system (hence my questions that btw didn't got answered). afaik that is only tried before on a 'normal' Linux distribution (i won't even touch the subject of crosscompiling those binutils. Although if you are familiar with doing so, then please feel free to make an attempt).

afaik the only existing patches and scripts that also supports MacOSX are available here (https://github.com/cahirwpz/amigaos-cross-toolchain) (that includes documentation on how to create them).

A short todo list:
- In case you haven't already, also read this (http://wiki.freepascal.org/AmigaOS).
- Create and setup AmigaOS4 binutils for your system
- Install and configure Free Pascal 3.0.0 compiler on your system
- check-out FPC svn sources
- Compile the 3.1.x (cross-)compiler
- Configure your 3.1.x (cross-)compiler so that it is able to cross-compile for AmigaOS4
- Compile your project(s) targetting OS4.

Please feel free to report any issues you encountered along the way (feel free to pm in case you'd prefer that). Every bit of information will allow us to improve the current (undocumented) situation.

Sorry, but i fear it is going to turn out to be you guinea-pigging for us. As far as i am aware of, all of the active maintainers for the Amiga-OS supported platforms are either busy with IRL or currently on vacation but i'll re-route the question as soon as i see/hear a sign of life.

Please be aware that the steps as described are highly experimental and that you might break your existing development setup. (so please don't come crying if it actually does). You've been warned.
Title: Re: AmigaOS 4?
Post by: saashapont on July 27, 2016, 12:24:34 pm
Thank you for quick answer!

And are there any ready solution for morphos?
Title: Re: AmigaOS 4?
Post by: molly on July 27, 2016, 12:47:27 pm
Well... you know ... MacOS is kind of a black sheep  ;)

At least you could try existing (cross-)binutils for MacOS, which can be found here (http://wiki.freepascal.org/MorphOS#Cross_compiling_from_OSX).

MorphOS is supported with 3.0 release compiler so all you would need to do is create a cross-compiler and setup fpc to to be able to cross-compile (besides the link in this post, you could follow about any "how to create a FPC cross-compiler" instructions for that).

So, at least that is documented  :)

But, there isn't a ready available MacOS cross-compiling for MorphOS Free Pascal distribution that you can download and install (and no wonder as that would mean a shitload of work for Free Pascal developers/maintainers).

Also for this case, if you run into problems then please feel free to report.

Do note that the cross-compiler you used inside the virtual machine is based on 3.1.x trunk compiler (with additional Lazarus MUI/LCL from ALB42 (https://github.com/alb42/lazarus)).
Title: Re: AmigaOS 4?
Post by: saashapont on August 01, 2016, 12:09:49 pm
I download cross-bin utils, make ceos-compiler, it works from command line, Then I downloaded and make for tacos lazarus from alb42 git....
Then i try compile any lcl hello word and have error "forms.pp(1794,2) Error: Resource files are not supported for this target"

How i can fix that?
Title: Re: AmigaOS 4?
Post by: Thaddy on August 01, 2016, 12:22:36 pm
I have no clue. Resources are implemented in a platform independent way now, so I can't see why they are not supported on Amiga and the likes. Is that the official source? Are you using 3.0.0 or trunk as FPC?
Title: Re: AmigaOS 4?
Post by: saashapont on August 01, 2016, 12:38:28 pm
3.0.0
Title: Re: AmigaOS 4?
Post by: molly on August 01, 2016, 12:55:35 pm
I have no clue. Resources are implemented in a platform independent way now, so I can't see why they are not supported on Amiga and the likes. Is that the official source? Are you using 3.0.0 or trunk as FPC?
ALB42's lazarus trunk can be found here (https://github.com/alb42/lazarus)
Support for fpcres was added in revision 31005 (http://svn.freepascal.org/cgi-bin/viewvc.cgi?view=revision&revision=31005)
For AROS fpcres support was added in revision 28671 (http://svn.freepascal.org/cgi-bin/viewvc.cgi?view=revision&revision=28671)
I take it there should be no problem at all using lazarus resource files ? (given that they are simple include files)

...and have error "forms.pp(1794,2) Error: Resource files are not supported for this target"
How i can fix that?
Which target might that be ? AmigaOS4 ?
(i cheat there as i already know it isn't OS4. AmigaOS4 target will only (cross-)compile with trunk compiler).

I find the error message a bit mysterious. do you have the correct target configured for your project (innside your project options) and have you pointed lazarus to the correct FPC (+ cross-compiler) directory ?
Title: Re: AmigaOS 4?
Post by: saashapont on August 01, 2016, 12:59:56 pm
I use this lazarus trunk

How i can see revision of fpcres?

Yes every project with lcl has this problem

Target morphOS
Title: Re: AmigaOS 4?
Post by: molly on August 01, 2016, 01:21:35 pm
Quote
How i can see revision of fpcres?
Given that fpc 3.0.0 release was tagged at revision 32319 (http://svn.freepascal.org/cgi-bin/viewvc.cgi/tags/release_3_0_0/) t is of no concern.

It is (automatically) included with the FPC 3.0 release archives (whether it be the install/executables or sources)

Quote
Yes every project with lcl has this problem
Which lcl widget type have you selected for your project ? Which resource comiler settings ? still there is the question of pointing lazarus to the correct FPC 3.0 directory which contains the necessary cross-compiler.

Have you got another lazarus installation on that machine ?

If the latter is to be the case: have you used the extra (second) configuration for your lazarus trunk build ? (more about having multiple lazarus installations can be read here (http://wiki.freepascal.org/Multiple_Lazarus)).
If not then you are messing up your existing lazarus installation and most likely things are pointing to the wrong FPC location.

BTW: Every project ? even if you compile for your native OS ?

To someone that might perhaps know: Could that be a pointer that perhaps fpcres executable is missing (or fpc/lazarus is unable to find/locate it) ? (*)

Quote
Target morphOS
Very important detail that you initially forgot to mention there  ;D

(*) ah i can now see (http://www.freepascal.org/docs-html/user/userse61.html) it is a default scanner message.

Please read (and apply) this thread (http://forum.lazarus.freepascal.org/index.php?topic=32906.0) saashapont, and show us the results.
Title: Re: AmigaOS 4?
Post by: saashapont on August 01, 2016, 05:01:04 pm
There are no new information in message windows with -vd option :(

Компиляция пакета LCLBase 1.7: Код завершения 256, ошибок: 1
forms.pp(1794,2) Error: Resource files are not supported for this target


Now i make compiler on src 3.1.1. I have installation from fink.

Which lcl widget type have you selected for your project ? Which resource comiler settings ? still there is the question of pointing lazarus to the correct FPC 3.0 directory which contains the necessary cross-compiler.

BTW: Every project ? even if you compile for your native OS ?

What i can change and where?

It is simple hello word project with one button. It was good compiled for win386, linux386, darwin386, linux arm.

This error is only for amorphous target
Title: Re: AmigaOS 4?
Post by: TRon on August 02, 2016, 10:37:15 am
Given that fpc 3.0.0 release was tagged at revision 32319 (http://svn.freepascal.org/cgi-bin/viewvc.cgi/tags/release_3_0_0/) t is of no concern.
That is, in theory ;)

Unfortunately, it seems that commit 31002 (http://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/compiler/systems/i_morph.pas?r1=31003&r2=31002&pathrev=31003) did not made it into release 3.0.

In order to be able to cross-compile your Lazarus project to MorphOS, you would need the trunk compiler (or apply the commit).

Thank you both for having noticed. The MorphOS maintainer will be notified. With a bit of luck it will be included into the next (upcoming) 3.0.x release.


@sashaapont:

With regards to AmigaOS4 cross-compilation.

Please forget that. It is not possible to do at this point in time unless you are really top notch in mastering GNU binutils. It is one of the reasons that ALB42 created the VM setup and provides that image for others to use.


With regards to cross compiling for MorphOS:

- Have a good and in working order Free Pascal 3.0.0 compiler
- Download the Free Pascal sources from svn (or download a daily zip)
- Create a Free Pascal 3.1.x compiler and cross-compiler from those sources you just obtained
- Download Lazarus from ALB42's github account. Make sure to select the MorphOS branch (and not the default AROS branch) and build that branch.
- Start Lazarus. As Molly suggested: use the extra configuration option in case you have another Lazarus installed.
- Make sure Lazarus uses your freshly compiled Free Pascal 3.1.x compiler
- Create a new project
- Make sure to select mui as widgetset, set the processor to PowerPC and the target to MorphOS
- Build your project

That should do the trick.

Sorry for the inconvenience. In principle Molly was correct ( hi Molly :P )

Regards,
Ron
Title: Re: AmigaOS 4?
Post by: saashapont on August 02, 2016, 11:54:52 am

With regards to cross compiling for MorphOS:

- Have a good and in working order Free Pascal 3.0.0 compiler
- Download the Free Pascal sources from svn (or download a daily zip)
- Create a Free Pascal 3.1.x compiler and cross-compiler from those sources you just obtained
- Download Lazarus from ALB42's github account. Make sure to select the MorphOS branch (and not the default AROS branch) and build that branch.
- Start Lazarus. As Molly suggested: use the extra configuration option in case you have another Lazarus installed.
- Make sure Lazarus uses your freshly compiled Free Pascal 3.1.x compiler
- Create a new project
- Make sure to select mui as widgetset, set the processor to PowerPC and the target to MorphOS
- Build your project

That should do the trick.


I do all excluding  Make sure to select mui as widgets. How i can do it on mac?
Title: Re: AmigaOS 4?
Post by: molly on August 02, 2016, 05:31:37 pm
I do all excluding  Make sure to select mui as widgets. How i can do it on mac?
I've contacted magorium and he says he's investigating the matter but has currently little time.

I was asked to inform you that it is possible by adding an IDE macro (although i do not know or received instructions on how to do so) . Apparently the MUI widget set is not (properly) listed yet  :'(

All i can say for now is "stay tuned"  :)
Title: Re: AmigaOS 4?
Post by: TRon on August 02, 2016, 07:52:06 pm
@saashapont:

Oh... I see that there isn't a MUI widget-option to choose from.

Sorry for that my friend.

If someone around knows how to create/add such a beast or is able to point towards some documentation on that subject...

In that case:
- Menu Project/Options
- Activate category Compiler Options/Additions and overrides
- On the right it shows a (empty) list with settings and a couple of buttons at the top.
- Select/click the item in the (empty) list that reads "Stored in project (.lpi)"
- Press the add button. A menu will drop down.
- Select the menuitem named IDE Macro
- A new entry will be added to the (sub)list that you selected earlier
- For the target subsection, make sure it reads "*" (without the quotes).
- Make sure the IDE Macro field directly below the target field reads: "LCLWidgetType:=MUI" (without the quotes)
- Press the OK button of the dialog, and make sure to save your projects settings.
- (Double-)Check with looking at Project/Options/Compiler Options/Config and Target. It should read: Current LCL widgetset: "mui"

Remember to do this for every lazarus/LCL/MUI project that you want to cross-compile to MorphOS.

Alternatively you could attempt to store this setting inside "Stored in IDE" environment options (instead of "Stored in Project" .lpi options) but then you should not set the target to the asterisk sign as that present all targets. Keep in mind though that there have been reports that this 'global' setting is not always working and/or stored correctly. Perhaps you're lucky and it works for you  :)

Regards,
Ron.
Title: Re: AmigaOS 4?
Post by: Mirosant on August 03, 2016, 11:04:27 am
- Download Lazarus from ALB42's github account. Make sure to select the MorphOS branch (and not the default AROS branch) and build that branch.

Wouldn't be better to add this to the official Lazarus repository? It's a little inconvenient to have multiple lazarus sources on Harddisk.
Title: Re: AmigaOS 4?
Post by: saashapont on August 03, 2016, 03:09:54 pm
yes! It will be better, but on this lazarus is not work win32 crosscompile
Title: Re: AmigaOS 4?
Post by: molly on August 03, 2016, 04:32:46 pm
Wouldn't be better to add this to the official Lazarus repository? It's a little inconvenient to have multiple lazarus sources on Harddisk.
That is to be classified as a rhetorical question  ;D

yes! It will be better, but on this lazarus is not work win32 crosscompile

From wikipedia (https://en.wikipedia.org/wiki/Fork_(software_development)):
Quote
In software engineering, a project fork happens when developers take a copy of source code from one software package and start independent development on it, creating a distinct and separate piece of software.

..but more importantly:

Quote
Distributed revision control (DVCS) tools have popularised a less emotive use of the term "fork", blurring the distinction with "branch".[15] With a DVCS such as Mercurial or Git, the normal way to contribute to a project is to first branch the repository, and later seek to have your changes integrated with the main repository.

What were those branches inside ALB42's Lazarus repository named again... lazarus-windows ?

If you take a good look at ALB42's MorphOS branch:
Quote
This branch is 188 commits ahead, 2762 commits behind graemeg:upstream.

.. and for ALB42's AROS branch:
Quote
This branch is 157 commits ahead, 2762 commits behind graemeg:upstream.

So, yeah. It might be that support for other targets is a bit broken for those branches.

It is completely irrelevant and a perfectly natural stage in software development.

Furthermore, and in case you don't like that then, you yourself are the one that can do something about that  ;)

Anyhows. Please inform yourself about the procedure that is to be followed for approval of write access to Lazarus repository and the requirements that have to be met for accepting a new target for Lazarus.

Then you might be able to answer the question(s) of what is missing to prevent these actions from actually taking place.

Again, you yourself as a community (whether that be FPC, Lazarus, AROS, MorphOS and/or Amiga(OS) -community) , are those that are able to do something about that.

It is not about what we can do for you but, what you can do for us  :o
Title: Re: AmigaOS 4?
Post by: saashapont on August 03, 2016, 05:51:22 pm
Try to set MUI
Now have error
Fatal: Can't find unit lineinfo used by project1
Title: Re: AmigaOS 4?
Post by: molly on August 03, 2016, 05:57:38 pm
Unfortunately, unit lineinfo is not available for MorphOS target.

Go to your project settings, compiler options, debugging and disable any setting that requires this unit (e.g. display line numbers in run-time backtraces). Do not compile/build with option -gl.
Title: Re: AmigaOS 4?
Post by: saashapont on August 03, 2016, 06:22:39 pm
Thank you! Thank you!! thank you!!! It is compile now!
I find solution i import settings from alb42's AllAmigaPlatforms.xml

I make hello word with one button.
It was compiled success.
But when I try to execute it on real morphos i have error Class TButton not found :(
Title: Re: AmigaOS 4?
Post by: molly on August 03, 2016, 06:27:21 pm
But when I try to execute it on real morphos i have error Class ЕИгеещт not found :(
Sorry, my Russian (assuming it is Russian) is non-existent.
Title: Re: AmigaOS 4?
Post by: molly on August 03, 2016, 06:44:39 pm
But when I try to execute it on real morphos i have error Class TButton not found :(
Ah, English i am able to read  :D

Hmz, i have no idea  :(

For the status for each individual control for the MUI/Zune widgetset, please see this page (http://fpcaroswiki.alb42.de/index.php?title=LCL_status).

As you can see for yourself,  the TButton control is listed as working and even has an accompanied example.

Does the same example that you now use, work(ed) when using the virtual machine for cross-compilation ?
Title: Re: AmigaOS 4?
Post by: saashapont on August 03, 2016, 06:49:46 pm
Create new project, uncheck -gl, And it works now!!!!! Without loading allamigaplatform.xml
Title: Re: AmigaOS 4?
Post by: molly on August 03, 2016, 07:07:30 pm
Create new project, uncheck -gl, And it works now!!!!! Without loading allamigaplatform.xml
Can i assume that everything is working as expected now ? e.g. can i close my error-report ?

For further issues regarding MorphOS i would advise to either post your issues @ morphzone (https://morph.zone/news/), ALB42's github account, MorphOS branch (https://github.com/alb42/lazarus/tree/lazarus-morphos) (just file a bug-report), or contact ALB42 at his blog (http://blog.alb42.de).

You are of course free to post your issue here on these forums (preferably in a thread which indicates MorphOS, instead of AmigaOS :P) but afaik ALB42 (as many other developers/maintainers) does not read much around here.
Title: Re: AmigaOS 4?
Post by: saashapont on August 03, 2016, 07:17:23 pm
Yes! It works! Thank you!

Now have a question, how i can use this project for other targets. For example if I try compile this project for win32 I have error muiint.pp(31,3) Fatal: Cannot find agraphics used by MUIInt.

In Additional and Overrides I create two build mode for morphos and for windows and set checkbooks.
Are there any options for this?
Title: Re: AmigaOS 4?
Post by: molly on August 03, 2016, 08:04:35 pm
Yes! It works! Thank you!
Thank you for the confirmation ! Bug-report has been closed.

Quote
Now have a question, how i can use this project for other targets. For example if I try compile this project for win32 I have error muiint.pp(31,3) Fatal: Cannot find agraphics used by MUIInt.
Well, you would have to select another widgetset.

The most common used widgetset for Windows is "Win32".

Besides that you, would require a cross-compiler that is able to target windows and you also need to have the GNU bintuils installed that are able to create windows executables for you.

Note that you need to create a cross-compiler from the same Free Pascal sources that you used to create the MorphOS cross-compiler from.

If you created the cross-compiler you would then need to install the cross compiled rtl and other units. Which basically means copying the units to your units directory next to your powerpc-MorphOS directory (but instead use the directory name i386-win32).

The cross-compiler itself must be copied next to your fpc (executable) compiler that you use for Lazarus (cross-)compilation.

Quote
In Additional and Overrides I create two build mode for morphos and for windows and set checkbooks.
Are there any options for this?
Yes, using different build-modes to select another target is also possible.

But, please note what Ron wrote that this does not always work as code-tools sometimes seem unable to pick up on the change (in which case you can save your project settings all that you want but, the settings you choose will not actually be saved for your project).

Also note that this might be an issue that perhaps already has been fixed in official Lazarus trunk (i have no clue whatsoever).

Or in short: follow the normal procedure of cross-compiling from Mac-OS to Windows but instead use the compiler that you yourself created (and also have been using for cross-compiling to MorphOS).

Note that for every widget change the complete widgetset needs to be (re-)compiled. Ergo, you might experience very slow compilation on the first compile directly after a widget-change. There are solutions to that 'problem' but that is really out of scope of this thread.

Have fun !
Title: Re: AmigaOS 4?
Post by: Mirosant on August 04, 2016, 08:16:46 am
Big thanks to all of you. It's working (thanks for this allamigaplatform.xml hint, this works for me). You are Magicians. I can run my programs on Amiga, this is really amazing, pure joy.

Quote
Furthermore, and in case you don't like that then, you yourself are the one that can do something about that  ;)

Anyhows. Please inform yourself about the procedure that is to be followed for approval of write access to Lazarus repository and the requirements that have to be met for accepting a new target for Lazarus.

me?
What?
I do not see anything I can do about it. I have no power in Lazarus. I do not have enough knowledge about Lazarus to improve it. I guess.
Do you have a link about this 'procedure' and 'requirements'?

Thanks again to all of you (molly, saashapont, TRon).
Title: Re: AmigaOS 4?
Post by: molly on August 04, 2016, 10:52:28 am
me?
Well, i was speaking more in the general sense of 'the people'. I'm guessing you are one of them so you fit the description  :D

Quote
What?
The power of common mortals like you and me.

Quote
I do not see anything I can do about it.
Really ? You have such low self-esteem ? C'mon  ;D

There is plenty work to do for any type of expertise. Again generally speaking. To name a few:

But, even simple things as was done just here. Try to setup the (cross-)compiler. Compile something and report your experiences. File a bug-report if you ran into a bug or problem.

Some of us simply do not have the hardware to check each and every tid-bit (As a matter of fact this thread was a good example of that, as non of us currently use MacOS or simply lack the time to test these things ourselves).

Quote
I have no power in Lazarus.
Sure you do. If you can write an application with lazarus you can also compile that program for different targets (At least you now know how to and, in principle the steps you've made/learned can be applied for every target that FPC/Lazarus supports).

Make your opinion count and ask/state that you want to have such support. If that requires a bigger user-base, then motivate people to join your cause. Get yourself informed and ask ALB42 why he hasn't pushed his changes upstream (yet). If there is reason for him to not do so (he might have perfect valid reasons to refrain from merging upstream) then  ask him what can be done to improve the situation and see if you can do anything about that. Ask the same question(s) to the Lazarus project manager(s) and/or other Lazarus developers.

Quote
I do not have enough knowledge about Lazarus to improve it. I guess.
Pardon my phrase but, bullocks  :D

If you can start the IDE, create an application, stick a button on a form and compile your project then you already have the knowledge.

You are able to cross-compile now, not ? Do you have any idea how many people that have been using lazarus/fpc for ages that have no clue on how to manually create their own cross-compiler ? I can tell you for sure that there are plenty, yet you've done it (even if it is with a little bit of help, you are the one that gained that knowledge).

Which reminds me: thank you very much for having reported that things work for you as well. See, that is exactly the kind of things i am talking about that makes you, help us  :)

Quote
Do you have a link about this 'procedure' and 'requirements'?
The only existing documentation that i am aware of is written here (http://wiki.lazarus.freepascal.org/How_to_become_Lazarus_developer_(committer))

But, please also realize that things are not always as easy and clear as they might appear on the surface. FPC/Lazarus is a relatively big open source project and as such, project manager(s) have to 'protect' their product. Patents and copyrights are amongst those things that can severely threathen a project like FPC or Lazarus.
Title: Re: AmigaOS 4?
Post by: Mirosant on August 05, 2016, 08:41:30 am
Really ? You have such low self-esteem ? C'mon  ;D

Or, realistic view to myself?

Make your opinion count and ask/state that you want to have such support. If that requires a bigger user-base, then motivate people to join your cause. Get yourself informed and ask ALB42 why he hasn't pushed his changes upstream (yet). If there is reason for him to not do so (he might have perfect valid reasons to refrain from merging upstream) then  ask him what can be done to improve the situation and see if you can do anything about that. Ask the same question(s) to the Lazarus project manager(s) and/or other Lazarus developers.

Is'nt this exactly what I did with my message? Asking you, why it's not included in the official Repository, in the official Lazarus forum. Where potentially official Lazarus developers can read it as well?

The only existing documentation that i am aware of is written here (http://wiki.lazarus.freepascal.org/How_to_become_Lazarus_developer_(committer))

But, please also realize that things are not always as easy and clear as they might appear on the surface. FPC/Lazarus is a relatively big open source project and as such, project manager(s) have to 'protect' their product. Patents and copyrights are amongst those things that can severely threathen a project like FPC or Lazarus.

looks not that harsh as I would expected, just a little bit sloppy/soft, more related that you know someone of the developers. (In Roman times one would call it an advocate.)
Title: Re: AmigaOS 4?
Post by: TRon on August 08, 2016, 09:00:28 am
>> Or, realistic view to myself?
In which case merging MOS-lazarus upstream would be of no importance whatsoever.

>> looks not that harsh as I would expected, just a little bit sloppy/soft, more related that you know someone of the developers. (In Roman times one would call it an advocate.)
Exactly.
TinyPortal © 2005-2018