Recent

Author Topic: LAMW: 32 and 64 bit libraries in APK to comply with Google Play policy  (Read 3587 times)

Thaddy

  • Hero Member
  • *****
  • Posts: 10527
Last time I checked - minutes ago - both Aarch-linux and Android worked.
There are some problems with older Android SDK versions when compiling for 64 bit, though, so choose a higher version.
This is device dependent to some extend.

ADiV

  • Jr. Member
  • **
  • Posts: 63
    • ADiV Software

Quote
aarch64 not work in windows with fpcupdeluxe!!

Strange, a few days ago I did some testing and everything worked .... maybe some installability on trunk .... [remember, we need fpc 3.2 [beta] or up...]

ref.
https://github.com/jmpessoa/lazandroidmodulewizard/blob/master/docs/how_to_64bits_Apk.txt

For windows we have the alternative of trying with a [canonical] preview of the Laz 2.0.2 + fpc3.2-beta
ref. https://od.lk/f/Ml8xNzEyOTI1NDlf       [TUTORIAL II  -  "Do It Yourself" ]

Attached image of the error you give me.

jmpessoa

  • Hero Member
  • *****
  • Posts: 1625

if you choose "yes" what happens?  [usually it works ....]
Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

ADiV

  • Jr. Member
  • **
  • Posts: 63
    • ADiV Software
It crashes and never ends.

jmpessoa

  • Hero Member
  • *****
  • Posts: 1625
@Thaddy
Quote
There are some problems with older Android SDK versions when compiling for 64 bit

Here,  I tested using NDK18b (64bits) and it is OK...

@TR3E
Quote
It crashes and never ends.

Here,  I tested "fpcupdeluxe-x86_64-win64.exe" and it is OK..

Can you try  "TUTORIAL II  -  Do It Yourself"
[https://od.lk/f/Ml8xNzEyOTI1NDlf]   .... ???   
Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

ADiV

  • Jr. Member
  • **
  • Posts: 63
    • ADiV Software
Finally I managed to install it, apparently it was because I used a different SSL. In the "ExtraSheet" tab download "Get OpenSSL by Browser" and if I let it install it. I think you should include this in the manual, before you start installing "fpcupdeluxe". Greetings and thanks.

jmpessoa

  • Hero Member
  • *****
  • Posts: 1625
Quote
Finally I managed to install it, apparently it was because I used a different SSL. In the "ExtraSheet" tab download "Get OpenSSL by Browser" and if I let it install it.

I do not understand ... what do you recommend?
Lamw: Lazarus Android Module Wizard
https://github.com/jmpessoa/lazandroidmodulewizard

DonAlfredo

  • Hero Member
  • *****
  • Posts: 1350
Let me guess.

Just yesterday, I added the Windows binary utilities for aarch64-android as a zip. Previously, only a rar-version was available.

I guess this caused the issue: no unrar available on the system in use.

Hope this helps. Greetings.

ADiV

  • Jr. Member
  • **
  • Posts: 63
    • ADiV Software
I thought I was using an erroneous SSL version that I searched online. Today download the fpcupdeluxe "Get OpenSSL by Browser" and unzip it into the fpcupdeluxe directory with which everything worked. I thought this was the mistake.

The recommendation for the tutorial is that fpcupdeluxe needs "OpenSSL" and this step does not appear. Without it, the files cannot be downloaded at least in my case.

Thank you DonAlfredo and jmpessoa for your great work.

DanielTimelord

  • New Member
  • *
  • Posts: 38
Re: LAMW: 32 and 64 bit libraries in APK to comply with Google Play policy
« Reply #24 on: August 01, 2019, 05:20:07 pm »
LAMW Manager v0.3.1-devel (for Linux) now supports AARCH64-Android

    1) Download [and unzip]:
https://github.com/DanielOliveiraSouza/LAMW4Linux-installer/archive/0.3.1-devel.zip

    2) Install LAzarus + LAMW and all dependencies:

       Go to directory lamw_manager and run:
          ./lamw_manager


If you want a clean install (or in case of failure) run:

2) ./lamw_manager --reset

Note:
1) First Boot (after upgrading LAMW Manager from v0.3.0 to v0.3.1-devel)

click on "Update-Info" on the first boot of the Lazarus IDE and then click on "Upgrade"

Ready!

DanielTimelord

  • New Member
  • *
  • Posts: 38
Re: LAMW: 32 and 64 bit libraries in APK to comply with Google Play policy
« Reply #25 on: August 10, 2019, 08:50:33 pm »
The 0.3.1-devel branch (LAMW Manager with AARCH64 support) is stable and was merged into master (trunk) on 08/06/2019. Please download LAMW Manager from the Master branch.

DanielTimelord

  • New Member
  • *
  • Posts: 38
Re: LAMW: 32 and 64 bit libraries in APK to comply with Google Play policy
« Reply #26 on: August 21, 2019, 12:04:15 am »
LAMW Manager v0.3.2 (to Linux) has has been released with important fixes for FPC and Lazarus.
  For information on new features and bug fixes read the Release Notes https://github.com/DanielOliveiraSouza/LAMW4Linux-installer/blob/master/lamw_manager/docs/release_notes.md
« Last Edit: March 29, 2020, 04:48:39 am by DanielTimelord »

svd71

  • New Member
  • *
  • Posts: 16
Done!

Improved build for other chipset!

How to get more ".so" chipset builds:

   :: Warning 1: Your Lazarus/Freepascal needs to be prepared [cross-compile] for the various chipset builds!
   :: Warning 2: Laz4Android [out-of-box] support only 32 Bits chipset: "armV6", "armV7a+Soft", "x86"

1. From LazarusIDE menu:

   > Project -> Project Options -> Project Options -> [LAMW] Android Project Options -> "Build" -> Chipset [select!] -> [OK]

2. From LazarusIDE  menu:

   > Run -> Clean up and Build...

3. From LazarusIDE menu:

   > [LAMW] Build Android Apk and Run


Thank You!

Hi.

1.
I had tried to install  the cross-compiling for aarch6-android  over fpcupdelux under Linix Mint x64 with follows report:

Code: Pascal  [Select][+][-]
  1. Going to install a cross-compiler from available sources.
  2. Fpcupdeluxe: FPC cross-builder: Building compiler for android-aarch64.
  3. FPCUP(deluxe) is starting up.
  4.  
  5. Bootstrap dir:         /home/svd/fpcupdeluxe/fpcupdeluxe/fpcbootstrap
  6. FPCupdeluxe basedir:   /home/svd/fpcupdeluxe/fpcupdeluxe
  7. FPC URL:               https://svn.freepascal.org/svn/fpc/tags/release_3_0_4
  8. FPC options:          
  9. FPC source directory:  /home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc
  10. FPC install directory: /home/svd/fpcupdeluxe/fpcupdeluxe/fpc
  11. Lazarus URL:           https://svn.freepascal.org/svn/lazarus/tags/lazarus_2_0_4
  12. Lazarus options:      
  13. Lazarus directory:     /home/svd/fpcupdeluxe/fpcupdeluxe/lazarus
  14.  
  15. Please stand back and enjoy !
  16.  
  17. fpcupdeluxe: info: 3-6-20 23:07:18: fpcupdeluxe: V210 (20200401) started.
  18. fpcupdeluxe: info: FPCUPdeluxe V1.6.8k for x86_64-linux running on Linux Mint
  19. fpcupdeluxe: info: FPCCrossInstaller (CleanModule: FPC): Running make distclean twice (OS_TARGET=android/CPU_TARGET=aarch64)
  20. fpcupdeluxe: info: FPCCrossInstaller (CleanModule: FPC): Execute: make. Params: --jobs=2,FPC=/home/svd/fpcupdeluxe/fpcupdeluxe/fpcbootstrap/ppcx64,--directory=/home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc,FPCMAKE=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux/fpcmake,PPUMOVE=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux/ppumove,FPCDIR=/home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc,PREFIX=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc,INSTALL_PREFIX=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc,INSTALL_BINDIR=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux,OS_TARGET=android,CPU_TARGET=aarch64,distclean
  21. Executing: make --jobs=2 FPC=/home/svd/fpcupdeluxe/fpcupdeluxe/fpcbootstrap/ppcx64 --directory=/home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc FPCMAKE=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux/fpcmake PPUMOVE=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux/ppumove FPCDIR=/home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc PREFIX=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc INSTALL_PREFIX=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc INSTALL_BINDIR=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux OS_TARGET=android CPU_TARGET=aarch64 distclean (working dir: /home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc)
  22. Makefile:209: *** The Makefile doesn't support target aarch64-android, please run fpcmake first.  Stop.
  23. fpcupdeluxe: info: FPCCrossInstaller (CleanModule: FPC): Deleting [stray] executable: /home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc/compiler/ppc
  24. fpcupdeluxe: info: FPCCrossInstaller (BuildModule: FPC): Building module FPC...
  25. fpcupdeluxe: info: FPC aarch64-android cross-builder: Detected source version FPC (compiler): 3.0.4
  26. fpcupdeluxe: info: TAny_android-aarch64: Found correct binary utilities in directory /home/svd/fpcupdeluxe/fpcupdeluxe/cross/bin/aarch64-android
  27. fpcupdeluxe: info: TAny_android-aarch64: Found correct library in directory /home/svd/fpcupdeluxe/fpcupdeluxe/cross/lib/aarch64-android
  28. fpcupdeluxe: info: FPCCrossInstaller (BuildModuleCustom: FPC): Using FPC itself to compile and build the cross-compiler
  29. fpcupdeluxe: info: FPC aarch64-android cross-builder: Using compiler with version: 3.0.4
  30. fpcupdeluxe: info: FPCCrossInstaller (BuildModuleCustom: FPC): Removing fpc.cfg config snippet.
  31. fpcupdeluxe: info: FPCCrossInstaller (InsertFPCCFGSnippet: fpc.cfg): Found existing snippet in /home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg. Replacing it with new version.
  32. fpcupdeluxe: info: FPCCrossInstaller (InsertFPCCFGSnippet: fpc.cfg): Inserting snippet in /home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg done.
  33. fpcupdeluxe: info: FPCCrossInstaller (BuildModuleCustom: FPC): Running make [step # st_Compiler] (FPC crosscompiler: aarch64-android) with CROSSOPT: -XPaarch64-linux-android- -Xd -Fl/home/svd/fpcupdeluxe/fpcupdeluxe/cross/lib/aarch64-android
  34. Executing: make --directory=/home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc FPCMAKE=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux/fpcmake PPUMOVE=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux/ppumove FPCDIR=/home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc PREFIX=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc INSTALL_PREFIX=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc INSTALL_BINDIR=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux CROSSBINDIR=/home/svd/fpcupdeluxe/fpcupdeluxe/cross/bin/aarch64-android FPC=/home/svd/fpcupdeluxe/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.sh compiler_cycle CROSSINSTALL=1 CPU_SOURCE=x86_64 OS_SOURCE=linux OS_TARGET=android CPU_TARGET=aarch64 NOGDBMI=1 BINUTILSPREFIX=aarch64-linux-android- 'CROSSOPT=-XPaarch64-linux-android- -Xd -Fl/home/svd/fpcupdeluxe/fpcupdeluxe/cross/lib/aarch64-android' 'OPT=-vw-n-h-l-d-u-t-p-c- ' (working dir: /home/svd/fpcupdeluxe/fpcupdeluxe/fpcsrc)
  35. Makefile:209: *** [b]The Makefile doesn't support target aarch64-android, please run fpcmake first.  Stop[/b].
  36. fpcupdeluxe: ERROR: [b]FPCCrossInstaller (BuildModuleCustom: FPC): Running cross compiler fpc make for aarch64-android failed with an error code.[/b]
  37.  
  38.  
  39. ERROR: Fpcupdeluxe fatal error !
  40. Building cross-tools failed ... ??? ... aborting.
  41.  

2.
Your sequence is wrong. if you do position 1 (" Project -> Project Options -> Project Options -> [LAMW] Android Project Options -> "Build" -> Chipset [select!] -> [OK]") it mean that you change a cpu and after it doing position 2 ("> Run -> Clean up and Build...")  you can get a message "illegal processor type".

 

TinyPortal © 2005-2018