ARM64 Client on RK3588 Solution

Answered

Comments

6 comments

  • Avatar
    Norman - Nx Support

    Dear Chung I-Chia,

    Please refer to the following support articles regarding ARM based solutions.

    So far, I only have seen the ARM client to be running on the Nvidia Jetson boards with Ubuntu 18.04 LTS+Jetpack, but I'm aware other people had made it to work on the RPI4 8GB.

    Please note, that the board at least should be able to run 64 bit applications.

    Based on the output you shared, I don't know if missing libraries or dependencies are the issues, but you could run the following command to see it this resolves the issue:

    sudo apt install -f

     

    0
    Comment actions Permalink
  • Avatar
    Chu I Chuan

    Dear Sir:

    We have been success install server and client on this board.

    But, when we run client, will have bellows wrong message.

    Warning: Setting a new default format with a different version or profile after the global shared context is created may cause issues with context sharing.
    Cannot find EGLConfig, returning null config
    Cannot find EGLConfig, returning null config
    Unable to find an X11 visual which matches EGL config 0
    /opt/networkoptix/client/5.0.0.36634/bin/client: 第 20 列:  3113 程式記憶體區段錯誤   (核心已傾印) "$DIR/nxwitness_cn_client" "$@"
    0
    Comment actions Permalink
  • Avatar
    Norman - Nx Support

    Hi Chu I Chuan,

    The error message you provided suggests that there is an issue with the EGL configuration and the X11 visual when trying to install a GUI application on an ARM board using Ubuntu ARM 20.04 LTS. Here are a few steps you can try to resolve this issue:

    1. Update your system: Ensure that your Ubuntu ARM 20.04 LTS installation is up-to-date by running the following commands:

      sudo apt update
      sudo apt upgrade
    2. Install necessary dependencies: Check if there are any missing dependencies required by the GUI application you're trying to install. Install them using the package manager (apt) if they are available. For example, if the application requires OpenGL libraries, you can try installing them using:

      sudo apt install libgl1-mesa-dev

    3. Check GPU drivers: Verify that the appropriate GPU drivers are installed and functioning correctly on your ARM board. You can check if the GPU drivers are loaded by running the following command:

      lsmod | grep -i egl

      If no output is displayed, it indicates that the EGL drivers are not loaded. In such cases, you might need to install or update the GPU drivers provided by the manufacturer of your ARM board.

    4. Set environment variables: Try setting the following environment variables before running the GUI application:

      export DISPLAY=:0 export LIBGL_ALWAYS_INDIRECT=1

      These variables set the display and enable indirect rendering, which might help resolve issues related to X11 and EGL.

    0
    Comment actions Permalink
  • Avatar
    Chu I Chuan

    Dear Norman:

    neardi@LPA3588:~$ lsmod | grep -i egl
    neardi@LPA3588:~$ 

    "lsmod | grep -i egl" display nothing.

    But, The board provider says...

    lsmod only display insmod loaded KO, but, can't display build-in.
    And that board have support EGL and ARM MALI GPU driver support.
    Please use OPENCL API.

    Another, this is the wrong message now....

    neardi@LPA3588:~$ export DISPLAY=:0 export LIBGL_ALWAYS_INDIRECT=1
    neardi@LPA3588:~$ /opt/networkoptix/client/5.0.0.36634/bin/applauncher
    nx_utils.ini (absent) To fill in defaults, touch /home/neardi/.config/nx_ini/nx_utils.ini
    neardi@LPA3588:~$ Using bundled libstdc++.
    nx_utils.ini (absent) To fill in defaults, touch /home/neardi/.config/nx_ini/nx_utils.ini
    desktop_client.ini (absent) To fill in defaults, touch /home/neardi/.config/nx_ini/desktop_client.ini
    arm_release_ver of this libmali is 'g6p0-01eac0', rk_so_ver is '5'.
    Cannot find EGLConfig, returning null config
    2023-05-24 09:49:11.002  22347 WARNING QnLongRunnable(0x5577ac2540): QnLongRunnablePool instance does not exist, lifetime of this runnable will not be tracked.
    2023-05-24 09:49:11.015  22347    INFO nx::audio::AudioDevice(0x7f89cff548): Version: 1.1
    2023-05-24 09:49:11.015  22347    INFO nx::audio::AudioDevice(0x7f89cff548): Company: OpenAL Community
    2023-05-24 09:49:11.015  22347    INFO nx::audio::AudioDevice(0x7f89cff548): Device type: OpenAL Soft
    2023-05-24 09:49:11.049  22347    INFO QnClientModule(0x7fefe56018): Log is initialized from the settings
    2023-05-24 09:49:11.049  22347    INFO QnClientModule(0x7fefe56018): Log level is initialized from the settings
    nx_network.ini (absent) To fill in defaults, touch /home/neardi/.config/nx_ini/nx_network.ini
    nx_vms_client_core.ini (absent) To fill in defaults, touch /home/neardi/.config/nx_ini/nx_vms_client_core.ini
    static bool LibSecretKeyring::writePassword(const QString&, const QString&, const QString&, QKeychain::JobPrivate::Mode, const QByteArray&, QKeychain::JobPrivate*)
    static bool LibSecretKeyring::findPassword(const QString&, const QString&, QKeychain::JobPrivate*)
    Warning: Setting a new default format with a different version or profile after the global shared context is created may cause issues with context sharing.
    Cannot find EGLConfig, returning null config
    Cannot find EGLConfig, returning null config
    Unable to find an X11 visual which matches EGL config 0
    /opt/networkoptix/client/5.0.0.36634/bin/client: 第 20 列: 22347 程式記憶體區段錯誤   (核心已傾印) "$DIR/nxwitness_cn_client" "$@"

     

    0
    Comment actions Permalink
  • Avatar
    Chu I Chuan

    Oh....solved....

    by run bellows code....solved.

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/use/lib/aarch64-linux-gnu/
    0
    Comment actions Permalink
  • Avatar
    Norman - Nx Support

    Great job, Chu I Chuan!

    Thanks for the feedback, since it might help other users.

    0
    Comment actions Permalink

Please sign in to leave a comment.