Shared library libubus.so

Hello, I want to write a simple OpenWRT C/C++ app, which uses ubus for Netgear R7800 platform. I downloaded SDK archive https://downloads.openwrt.org/releases/24.10.5/targets/ipq806x/generic/openwrt-sdk-24.10.5-ipq806x-generic_gcc-13.3.0_musl_eabi.Linux-x86_64.tar.zst

The archive includes many libraries and header files but there is no bundled libubus.so library file. Why? And where can I find it?

The library is ABI versioned:

$ opkg files libubus20250102
Package libubus20250102 (2025.10.17~60e04048-r1) is installed on root and has the following files:
/lib/libubus.so.20250102
1 Like

I know this package. I wonder why libubus.so library is not bundled in OpenWRT SDK or Toolchain like all other libraries.

It's just a target (i.e. not host) package, so you add it as a dependency and it will be built when necessary:

  DEPENDS:=+libubus

I don't think SDKs come with any target .so's.

1 Like