Re: [fpc-other] I need ppcjvm for ARM64 architecture

2020-04-28 Thread Mgr. Janusz Chmiel via fpc-other
Dear MR Barth,
You are elite programmer and thank you very very much for yours detailed and
professional description.
To be honest, I have occured The most positive feeling thanks to Pascal
language. Because PPCJVM creates .class files and Android build tools
transfer it to .dex format. I can run many variousapps on Android.
The most exciting fact is, that There are two projects which can enable
visually impaired users with no sight at all program for Android. Resulting
GUI of apps are fully accessible with screen readers. Code is reliable and
memory allocations are very friendly, if developer work as he should work
with his source code and Pascal commands.
javavcl-code-r1007
Contain VCL units. Author have been inspired by Borland Delphi VCL. Sure
code have been his and adapted for PPCJVM Android development. Visually
impaired users and not only those users can specify adjectives to specify
object to left, top, bottom, ETC.
There are even adjectives to speciy font name, size.
Sure. Java programmers can also do that. But I love Pascal very much. I do
not like combining .java with .xml files. Pascal language is structured and
its procedural form enable Me to develop more effectively. Pandroid from MR
Swianovitz contain various modules and I can develop with noneed to add
object position values in Pixels. It is not easy to imagine The value if
developer do not see at all. But thanks to people, who have develop unique
aalgorithms, object position values are only volunteer not mandatory.
GUI is acceptable even by sighted users. No data are overlapping and there
are even no system crashes. Mr Swianovitz is very kind to Me. He has helped
Me very very much and I would like to publicly thank him for his complex
work.
He has generated bass Pascal unit for Me. And he has shown Me how to call
Android APi functions.
The most difficult task is to generate Android Pascal headers. Android
28.inc, etc.
Process is so complex that it can not be develop to work fully automated. It
is necessary to deeply know Java and Pascal and it is necessary to swap
lines.
It is really work for professional. But eljuko have done it not only for Me.
He was very patient and I Am deeply appreciating his approach to My ples and
he is good programmer.
Pandroid even allow to combine not only to .dex but Pascal sources can be
even compiled to .so libraryes by using ARM instructions machine code.
And resulting GUI is fully accessible.

___
fpc-other maillist  -  fpc-other@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-other


Re: [fpc-other] I need ppcjvm for ARM64 architecture

2020-04-28 Thread Sven Barth via fpc-other

Am 27.04.2020 um 13:38 schrieb Mgr. Janusz Chmiel via fpc-other:

Dear specialists,
My long term dream is to develop simple Android IDE which will be able to
compile Pascal app based on PPCJVM to The fully functional .apk package. The
first what I would like to plea you is to give Me direct link to download
PPCJVM for ARM64. So PPCJVM, which can compile Pascal sources to .class
files.
Unfortunately, I do not know, who have developed Android build tools for
Android, not for Windows or for Linux and if those build tools can be
legally downloaded from somewhere.


We do not provide a compiler that can run on Android, but you can 
compile it yourself. Please note that I have not fully tested the 
following steps, but please feel free to ask back if you have problems.


You'll need the following:
- a FPC 3.2 RC1 installation (at least for now until we've released the 
final version); you can find it here: 
ftp://ftp.freepascal.org/pub/fpc/beta/3.2.0-rc1/ (just to avoid 
confusion: the aarch64-android mentioned there is *not* what you want 
right now)

- the sources for FPC 3.2 RC1 also available on that site
- the fpcjvmutilities.zip, if you don't have it already; it's available 
here: ftp://ftp.freepascal.org/pub/fpc/contrib/jvm/fpcjvmutilities.zip

- the NDK for the Android version you want to target

For this example I'll assume that you installed FPC 3.2 RC1 on a Linux 
in /opt/fpc. Thus the fpc binary will be available in /opt/fpc/bin/fpc 
and the units will be in /opt/fpc/lib/fpc/3.2.0rc1/units. The sources I 
assume to be in ~/sources/fpc/3.2.0 and the NDK (the directory 
containing "as" and "ld") as well as the fpcjvmutiltities I assume to be 
available in $PATH, otherwise you'll need to specify their paths using 
CROSSBINDIR for their corresponding steps.


First we create the Java compatible units and class files.

For this go to the directory with the FPC sources and execute the 
following (here you need to specify the fpcjvmutilties using CROSSBINDIR 
if you don't have them in PATH):


make crossall FPC=/opt/fpc/bin/fpc OS_TARGET=android CPU_TARGET=jvm

If this was successful do the following (the INSTALL_PREFIX will be the 
same directory you installed FPC in, in our example /opt/fpc):


make crossinstall FPC=/opt/fpc/bin/fpc OS_TARGET=android CPU_TARGET=jvm 
INSTALL_PREFIX=/opt/fpc


As next step you need to create a cross compiler for aarch64-android 
(here you need to specify the NDK using CROSSBINDIR if you don't have 
them in PATH):


make crossall FPC=/opt/fpc/bin/fpc OS_TARGET=android CPU_TARGET=aarch64

If this was successful you do a

make crossinstall FPC=/opt/fpc/bin/fpc OS_TARGET=android 
CPU_TARGET=aarch64 INSTALL_PREFIX=/opt/fpc


As the last step we need to cross compile the JVM compiler for 
aarch64-android. For this change into the compiler directory and execute:


make all FPC=/opt/fpc/bin/ppcrossa64 JVM=1

This will create a ppcjvm that you can run on an Android device. 
Additionally you will need all the files that were copied to the 
/opt/fpc/lib/3.2.0rc1/units/jvm-android directory. Now you only need to 
supply a suitable fpc.cfg file to the compiler and hope that the 
jasmin.jar assembler can run on Android.


I hope this helps you.

Regards,
Sven
___
fpc-other maillist  -  fpc-other@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-other


Re: [fpc-other] VSCode

2020-04-28 Thread Sven Barth via fpc-other

Am 28.04.2020 um 02:14 schrieb Graeme Geldenhuys:

On 26/04/2020 2:37 pm, Sven Barth via fpc-other wrote:

It's more lightweight than eclipse.

Well that's comparing Apples to Oranges isn't it? Yes originally Eclipse
was designed as an IDE for many languages, but it has grown to be so
much more - even a platform to base new applications on (similar to VCL,
LCL etc).

Granted I haven't played much with VSCode, but considering it is built
on the same foundations as Atom, Sublime Text... ie CSS/HTML engine,
they are quite resource intensive.

But then I guess I'm comparing them as pure text editors in the lines of
EditPad Pro, Vim, gEdit etc that uses a fraction of the memory (one
example of resource usage) to load the same set of files. eg: The last
time I tried Atom (2 months ago) it used 380MB to load a set of 10 large
Java files. jEdit used 180MB and EditPad Pro used 18MB. Vim was
something like 8MB - lol.


I meant that in the context of "I need a JDK installed". Which I usually 
don't have on my computers. On my current one I installed a JDK only a 
few weeks ago to test something with Ghidra, but before that I was happy 
without one. And I'll probably kick that one out again...


Regards,
Sven
___
fpc-other maillist  -  fpc-other@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-other