However, I see no direct reference in dbus/manager/Makefile.am, nor can I see an indirect reference via the Makefile.am files used to generate: - bindings/glib/libgpiod-glib.la - dbus/lib/libgpiodbus.la Am I missing something obvious? Furthermore upon review, I believe the solution I proposed last October was flawed - I should have used: LDADD += $(top_builddir)/lib/libgpiod.la instead of directly modifying the linker via: AM_LDFLAGS += -Wl,-rpath,$(top_builddir)/lib/.libs Kind regards, Boerge Struempfel On Mon, Nov 4, 2024 at 12:18�PM Börge Strümpfel <boerge.struempfel@xxxxxxxxx> wrote: > > Hi Bart, > > thank you for your reply. > > you are in fact correct and the LDADD is enough. There seems to be an > issue with the sdk I was using. After manually crosscompiling using a > different sdk, I no longer get the error that libgpiod.so can not be > found by the linker. > > The sdk with which I got the error was generated using buildroot version > 2024.01. However the error does not occur on the current buildroot > master version. Therefore you can ignore this patch. > > Kind Regards, > Boerge > > On Mon, Nov 4, 2024 at 10:39�AM Bartosz Golaszewski <brgl@xxxxxxxx> wrote: > > > > On Wed, Oct 30, 2024 at 5:49�PM Boerge Struempfel > > <boerge.struempfel@xxxxxxxxx> wrote: > > > > > > When crosscompiling, the linker isn't finding libpgiod.so while linking > > > the manager to libgpiod-glib.so. > > > > > > In order to fix this issue, we manually force the linker to look in > > > the corresponding folder for needed shared libraries, when building the > > > manager. > > > > > > Signed-off-by: Boerge Struempfel <boerge.struempfel@xxxxxxxxx> > > > --- > > > dbus/manager/Makefile.am | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git a/dbus/manager/Makefile.am b/dbus/manager/Makefile.am > > > index d1cef8e..32c9e30 100644 > > > --- a/dbus/manager/Makefile.am > > > +++ b/dbus/manager/Makefile.am > > > @@ -9,6 +9,7 @@ AM_CFLAGS += -DG_LOG_DOMAIN=\"gpio-manager\" > > > AM_CFLAGS += $(PROFILING_CFLAGS) > > > AM_LDFLAGS = $(GLIB_LIBS) $(GIO_LIBS) $(GIO_UNIX_LIBS) $(GUDEV_LIBS) > > > AM_LDFLAGS += $(PROFILING_LDFLAGS) > > > +AM_LDFLAGS += -Wl,-rpath,$(top_builddir)/lib/.libs > > > LDADD = $(top_builddir)/bindings/glib/libgpiod-glib.la > > > LDADD += $(top_builddir)/dbus/lib/libgpiodbus.la > > > > > > -- > > > 2.43.0 > > > > > > > > > > Can you give me more info on your environment? I'm cross-compiling > > just fine and the: > > > > LDADD += $(top_builddir)/dbus/lib/libgpiodbus.la > > > > bit should be enough for linking. > > > > Bart