Skip to content

Building the sample for Android on Linux #80

Open
@lemonmojo

Description

  1. Install .NET 9 RC SDK.
    https://dotnet.microsoft.com/en-us/download/dotnet/9.0

  2. Ensure dotnet --version works.

  3. Install Android NDK.
    https://developer.android.com/ndk/downloads

  4. Set environment variable ANDROID_NDK_HOME to the path of the NDK installation.
    ie. nano ~/.bashrc, add line export ANDROID_NDK_HOME="$HOME/dev/android-ndk-r27".

  5. Clone beyondnet.
    ie. git clone https://github.com/royalapplications/beyondnet.git.

  6. cd to beyondnet/Generator/Beyond.NET.CodeGenerator.CLI.

  7. Run ./publish_linux_arm64 or ./publish_linux_x64 depending on the host platform.

  8. Add a symlink to beyondnetgen so that it's on the PATH.
    ie. sudo ln -s ~/dev/beyondnet/Generator/Beyond.NET.CodeGenerator.CLI/bin/Release/net9.0/linux-arm64/publish/beyondnetgen /usr/local/bin/beyondnetgen.

  9. Check if invoking beyondnetgen works and shows usage info.

  10. cd to beyondnet/Samples/Beyond.NET.Sample.Managed.

  11. Run ./publish_managed.

  12. cd to beyondnet/Samples.

  13. Run beyondnetgen Beyond.NET.Sample_Config.json.

  14. cd to beyondnet/Samples/Beyond.NET.Sample.Native.

  15. Run ./publish_android_arm64.
    NOTE: It appears that the Android NDK is currently unavailable for ARM64-based Linux machines and at least for me, the compilation fails within Parallels with the following error EXEC : rosetta error : failed to open elf at /lib64/ld-linux-x86-64.so.2 [/home/fx/dev/beyondnet/Samples/Beyond.NET.Sample.Native/Beyond.NET.Sample.Native.csproj].

  16. Open beyondnet/Samples/Beyond.NET.Sample.Android in Android Studio and try to build/run OR to build from the command line, cd to beyondnet/Samples/Beyond.NET.Sample.Android and run ./build.sh.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions