LAMW - Compilation Error lazarus / 43-Android ---------------------------------------------------------------------- wcleyton · 2016-06-20 21:26 Hello, I tried to install LAMW following the WIKI : http://wiki.lazarus.freepascal.org/LAMW When compiling a project appears the error ( attached): Fatal: Cannot find system used by controls. Make sure all ppu files of a package are in its output directory. ppu in wrong directory=C:\lamw\laz4android\fpc\3.0.0\units\arm- android\rtl\system.ppu.. How to fix this error ? Lazarus 1.6 - FPC 3.0.0 - Win 10 64 Bits ---------------------------------------------------------------------- jmpessoa · 2016-06-20 22:04 Hi wcleyton! Please,  put here (attached and ziped) your project  "....\jni"  folder.... ---------------------------------------------------------------------- wcleyton · 2016-06-21 14:30 Hi jmpessoa, Attached the requested folder. ---------------------------------------------------------------------- jmpessoa · 2016-06-21 16:00 Hi WCleyton! There is a  gtk  "contamination" in your "controls.lps".  Possibly because you, accidentally, dragged some LCL control to your "jForm". Suggestions:  1) delete "controls.lps"  and re-open your jForm/unit1  using: IDE menu "Project" ---> "Form..." 2) IDE menu "Project" ---> "Project Inspector" and delete some LCL reference (if there is some...) ---------------------------------------------------------------------- wcleyton · 2016-06-21 19:28 Hi jmpessoa, The error remains . Any more suggestions? ---------------------------------------------------------------------- A.S. · 2016-06-21 20:45 lps does not have any sense. Could you post here zip of whole project? I suggest to check your fpc.cfg ---------------------------------------------------------------------- wcleyton · 2016-06-22 14:39 Hi, Attached: Project and fpc.cfg ---------------------------------------------------------------------- A.S. · 2016-06-22 18:26 Menu Project -> Project Options... -> Custom options: change -CfVFPv3 to -CfSoft. ---------------------------------------------------------------------- wcleyton · 2016-06-23 13:26 Hi, It worked! Thank you all for your help. ---------------------------------------------------------------------- sesilla · 2017-07-07 23:08 Hi, which is the differenze between -CfVFPv3 vs -CfSoft? Why with -CfVFPv3 option appears this error: Fatal: Cannot find system used by controls. Make sure all ppu files of a package are in its output directory. ppu in wrong directory=C:\lamw\laz4android\fpc\3.0.0\units\arm- android\rtl\system.ppu? Thanks in advance Sesilla ---------------------------------------------------------------------- jmpessoa · 2017-07-08 17:27 QuoteHi, which is the differenze between -CfVFPv3 vs -CfSoft? Why with -CfVFPv3 option appears this error: Fatal: Cannot find system used by controls. Make sure all ppu files of a package are in its output directory. ppu in wrong directory=C:\lamw\laz4android\fpc\3.0.0\units\arm- android\rtl\system.ppu? This will depend on the way/options with which you build your FPC "cross-compiler" by source ... [In case of Laz4Android distro, we have support only for  -CfSoft ...] ---------------------------------------------------------------------- sesilla · 2017-07-15 08:03 Hi jmpessoa, thanks for the reply. I tried to compile with [Lamw] Build FPC Cross Android and ArmV7a + VFPv3 but I get this error: Cannot Run Extern [make] Tool. I use Lazarus 1.6.4 64bit. Have you suggestions? Thanks Regards Sesilla ---------------------------------------------------------------------- Leledumbo · 2017-07-15 16:19 Quote from: sesilla on July 08, 2017, 01:08:05 amwhich is the differenze between -CfVFPv3 vs -CfSoft? ARM processors have "Vector Floating Point" unit, v3 is the 3rd version of this unit. With this switch on, the compiler will generate FPU instruction for that VFP unit. Hence, the compiled code can only be run on processors having compatible VFP unit. Soft, as its name implies, is an emulation of floating point operations, done purely in software using integer arithmetics. It will run on wider processors, but the speed is a hell lot slower. Quote from: sesilla on July 08, 2017, 01:08:05 amWhy with -CfVFPv3 option appears this error: Fatal: Cannot find system used by controls. Make sure all ppu files of a package are in its output directory. ppu in wrong directory=C:\lamw\laz4android\fpc\3.0.0\units\arm- android\rtl\system.ppu? -Cf option (and any other options that form a compilation target) must be applied to ALL used units, including ones from RTL, especially the system unit. Above message appears when the compiler cannot find system unit with matching option for the target you want to compile for. e.g. your RTL is compiled to target soft FPU, but you want to compile for VFPv3. ---------------------------------------------------------------------- jmpessoa · 2017-07-15 17:12 Quote... I tried to compile with [Lamw] Build FPC Cross Android and ArmV7a + VFPv3 but I get this error: Cannot Run Extern [make] Tool. In "dialog build" Configure the Path to fpc "*.exe"       [so,  we will get the fpc  "make.exe" path] example: c:\lazarus\fpc\3.0.0\bin\i386-win32 ---------------------------------------------------------------------- sesilla · 2017-07-18 15:01 QuoteIn "dialog build" Configure the Path to fpc "*.exe"       [so,  we will get the fpc  "make.exe" path] example: c:\lazarus\fpc\3.0.0\bin\i386-win32 The paths are correct. Has any of you compiled Android Module Wizard demo with option "-CpARMv7a -CfVFPv3"? I have compiled lazarus/fpc with this instructions: Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i C:\lazarus\fpc\3.0.2\bin\x86_64-win64\make.exe clean crossall crossinstall FPC=C:\lazarus\fpc\3.0.2\bin\x86_64-win64\fpc.exe OS_TARGET=android CPU_TARGET=arm OPT="-dFPC_ARMEL" CROSSOPT="-CpARMv7a -OoFASTMATH -CfVFPv3" CROSSBINDIR=C:\android-ndk-r10e\toolchains\arm- linux-androideabi-4.9\prebuilt\windows-x86_64\arm-linux- androideabi\bin INSTALL_PREFIX=C:\fpc_svn_3.1.1  The result: ppcrossarm.exe and "arm-android" folder under units. When compile a demo (Android Module Wizard) width follow custom options: "-Xd -CfVFPv3 -CpARMv7a -XParm-linux-androideabi- -FDC:\android- ndk-r10e\toolchains\arm-linux- androideabi-4.9\prebuilt\windows-x86_64\bin" This is the full error: Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i [0.008] (1002) Target OS: Android for ARMEL[0.008] (1003) Using executable path: C:\lazarus\fpc\3.0.2\bin\x86_64-win64\[0.008] (1004) Using unit path: .\[0.008] (1004) Using unit path: C:\lazarus\fpc\3.1.1\units\arm-android\httpd22\[0.008] (1004) Using unit path: C:\lazarus\fpc\3.1.1\units\arm-android\rtl\[0.008] (1004) Using unit path: C:\lazarus\fpc\3.1.1\units\arm-android\zlib\[0.008] (1004) Using unit path: etc etc etc --> all others units[0.008] (1004) Using unit path: C:\lazarus\fpc\3.1.1\units\arm-android\[0.008] (1004) Using unit path: C:\lazarus\fpc\3.0.2\bin\x86_64-win64\[0.008] (1006) Using library path: .\[0.008] (1006) Using library path: C:\lazarus\fpc\3.1.1\units\arm-android\httpd22\[0.008] (1006) Using library path: C:\lazarus\fpc\3.1.1\units\arm-android\rtl\[0.008] (1006) Using library path: etc etc etc --> all others units[0.008] (1007) Using object path: .\[0.008] (1007) Using object path: C:\lazarus\fpc\3.1.1\units\arm-android\httpd22\[0.008] (1007) Using object path: C:\lazarus\fpc\3.1.1\units\arm-android\rtl\[0.008] (1007) Using library path: etc etc etc --> all others units[0.008] (3104) Compiling fcllaz.pas[0.008] Searching file fcllaz.pas... found2 171/800 Kb Used[0.008] C:\lazarus\packager\registration\fcllaz.pas(7,2)  (2032) Handling switch "$WARN"[0.008] C:\lazarus\packager\registration\fcllaz.pas(8,1)  (3101) Macro defined: FPC_PIC[0.008] C:\lazarus\packager\registration\fcllaz.pas(8,1)  (3101) Macro defined: PIC[0.008] (PROGRAM)  (10043) Loading interface units from FCLLAZ[0.008] (fcllaz)   (10057) Registering new unit SYSTEM[0.008] (fcllaz)   (10027) Load from FCLLAZ (interface) unit SYSTEM[0.008] (SYSTEM)   (10055) Loading unit SYSTEM[0.008] (10000) Unitsearch: system.ppu[0.008] (10000) Unitsearch: C:\lazarus\packager\units\arm- android\system.ppu[0.008] (10000) Unitsearch: system.pp[0.008] (10000) Unitsearch: system.pas[0.008] (10000) Unitsearch: system.ppu[0.008] (10000) Unitsearch: system.pp[0.008] (10000) Unitsearch: system.pas[0.008] (10000) Unitsearch: C:\lazarus\fpc\3.1.1\units\arm- android\httpd22\system.ppu[0.008] (10000) Unitsearch: C:\lazarus\fpc\3.1.1\units\arm-android\httpd22\system.pp[0.008] (10000) Unitsearch: C:\lazarus\fpc\3.1.1\units\arm- android\httpd22\system.pas[0.008] (10000) Unitsearch: C:\lazarus\fpc\3.1.1\units\arm-android\rtl\system.ppu[0.008] (10001) PPU Loading C:\lazarus\fpc\3.1.1\units\arm- android\rtl\system.ppu[0.008] (SYSTEM)   (10002) PPU Name: C:\lazarus\fpc\3.1.1\units\arm-android\rtl\system.ppu[0.008] (SYSTEM) (10042) Trying to use a unit which was compiled with a different FPU mode[0.008] (10000) Unitsearch: C:\lazarus\fpc\3.1.1\units\arm- android\rtl\system.pp[0.008] (10000) Unitsearch: C:\lazarus\fpc\3.1.1\units\arm-android\rtl\system.pas[0.008] (10000) Unitsearch: etc etc etc --> all others units[0.020] Fatal: (10022) Can't find unit system used by fcllaz[0.020] Fatal: (1018) Compilation abortedError: C:\lazarus\fpc\3.0.2\bin\x86_64-win64\ppcrossarm.exe returned an error exitcode  Thank you Regards Sesilla