How to host appinventor on a 32bit system?

I am running the same app inventor fork latest from github but get this error :frowning:

Why my appinventor instance hosted on Pi has image suffix?

@ewpatton I tried to host the buildserver on my pc and the build is working too but, for some reason some error is coming, log below

Check the logs on the appengine side. It's rejecting the build result from the buildserver and you should see more information there.

1 Like

Hmm, I will have a look there, however I have updated my Pi 4 to ubuntu server 64bit so I will able to host everything there

@ewpatton This error is coming now, no error message too

Java version

image

@ewpatton I thought it might be because its now 64bit but compiling need 32 bit arch, so I tried to run the command told in repo's read me, but some error came

I feel like you're mixing up too many things in order for me to help you. If you're on a Raspberry Pi still, then those versions of the libraries won't exist because it's not the right architecture. I still recommend that you should just install aapt, etc. from the Android SDK and then replace the copies in our source tree with versions known to work for your platform.

Sorry For That :sweat_smile:
I will clear the mess now,
Machine: Raspberry Pi 4 2GB Ram
Operating System: Ubuntu Server 20.04.2 LTS
Java version: image
Ant Version: image
Some More System Info:
image

Problem:

Suspected Cause: missing 32 bit libs

This step doesn't rely on any native code so 32-bit libraries are not a problem. You're also running on a 64-bit machine so you'd just want to use 64-bit binaries in that scenario. You're likely running into a memory issue given that you've only got 2 GB of RAM. Do you have swap set up for paging purposes? Do you see any OOM errors in /var/log/dmesg? You could try decreasing the max memory requested for the GWT compilation but odds are Java will then exit due to not having enough heap. Consider building YaClientApp on another platform with more RAM.

I am setting that up now

I don't find it, but some errors saying memory full or something like that

How can we do that? Can I build the appinventor on PC and transfer it to pi?

Yes now, swap setup

@ewpatton Is this step required now as when google has replaced the google android SDK for 32bit systems?

No, and it certainly won't work on a Raspberry Pi. Those instructions assume an x86_64 arch as i386 would be the corresponding 32-bit arch.

Sorry, but I didn't understand that. Can you tell that again?

Hopefully after making the swap file, it worked but again AAPT failed :frowning_face:

I tried as my friend @VSATISH13 said,

So I installed Oracle's Official JDK and tried again, but same AAPT failed error :frowning_face:

My java version now:
image

javaho
Here's mine, i am using this from long time and i haven't faced any issue or error since i faced and fixed some.

1 Like

I had decided to shift my "buildserver" (else everything is in pi, such as the appengine part) from pi to AWS EC2 , how to do that? I read the instructions at https://github.com/mit-cml/appinventor-sources/blob/master/appinventor/misc/buildserver/README
But I don't get how to do that, @ewpatton can you please tell how to host buildserver separately with buildserver.tar generated?

aapt is a native binary published by Google as part of the Android SDK. The version of Java you have installed is irrelevant to its operation. When you install the Android SDK (e.g., via apt), the appropriate version of aapt will be downloaded for your architecture. As I have already mentioned, the versions we include in the source tree are for x86_64 architectures, so if you are running on a system with any other architecture (e.g., a Raspberry Pi), then you must replace the ones in the source tree with a version that runs on your platform. If you run aapt --help from the command line and it outputs help information, then you've got an appropriate version and should place it into lib/android/tools/linux/.

We don't actually make use of Buildserver.tar any more as we deploy everything via Docker in production these days. All the tar file contains is the JARs needed to run the build server. You copy the tar file to your production server, untar it, and then run the buildserver JAR. There's a script called launch-buildserver in misc/buildserver/ you can use for that.

Thanks for the things mentioned above, I will try doing that later, for now I have shifted to a Amazon EC2 instance.

How to deploy appinventor via Docker? Got this GitHub - himgodfreyho/appinventor-docker