Closed MarkoSchuetz closed 3 years ago
Sorry, I'm working on that
Il dom 27 dic 2020, 18:56 Marko Schütz-Schmuck notifications@github.com ha scritto:
Whenever I launch rebol-server I get an error message:
Cannot run program "/data/user/0/giuliolunati.rebolserver/files/system/r3" (in directory "/data/user/0/giuliolunati.rebolserver/files"): error=20, Not a directory
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/metaeducation/rebol-server/issues/8, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABLC4M453XDJE3M4FJNHDCDSW5YLJANCNFSM4VLBPUOA .
Changed prebuilt binary source, should work now. NOTE: please remove completely the app before reinstall
I uninstalled the APK on the phone and did a fresh git clone & build. Now I get
Attempt to invoke virtual method 'int java.lang.String.indexOf(java.lang.String)' on a null object reference
@MarkoSchuetz You may not have used --recurse-submodules
when cloning and so wound up with an empty rebol-httpd directory, so there was no server put in the package. I updated the bash script to raise errors in such cases.
Anyway, I'm trying to add building and testing of the rebol-server.apk to the GitHub CI build for Android, so I made a rebol-server.apk.
I've done this only once before, and when I did, I did it in Termux on an Android phone as in @giuliolunati's conference video. However, since that's not pleasant to try and use a debug bridge in an emulator to automate, I did a build on the host. Here is the resulting APK:
http://hostilefork.com/media/shared/android/rebol-server.apk
It works for me on my Moto G6, as well as in an API Level 30 Emulator that comes in a relatively recent Android Studio. However, it gives a dialog box complaining that it was built for an older version of Android and to ask for a new version.
I'm pretty sure this was the result of not having --recurse-submodules in the enlistment, hence an empty rebol-httpd directory.
The GitHub Action for building the server just goes ahead and overwrites the committed directories with the latest versions of rebol-httpd and replpad-js.
If the latest binary of the interpreter is being pulled from s3, then what probably makes sense is to check to see if you have a rebol-httpd and replpad-js enlistment and just use it if you do, otherwise get the latest. This is how the interpreter is handled.
Will make that a separate issue and close this one.
Whenever I launch rebol-server I get an error message: