Message ID | 20240512175117.2096550-1-bernd@kuhls.net |
---|---|
State | Accepted |
Headers | show |
Series | [1/1] package/kodi: Link to libiconv when needed | expand |
Bernd, All, On 2024-05-12 19:51 +0200, Bernd Kuhls spake thusly: > Fixes build error > > /home/wbx/buildroot/output/host/lib/gcc/aarch64-buildroot-linux-uclibc/12.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: > build/utils/utils.a(CharsetConverter.cpp.o): undefined reference to symbol 'libiconv_open' > /home/wbx/buildroot/output/host/lib/gcc/aarch64-buildroot-linux-uclibc/12.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: > /home/wbx/buildroot/output/host/aarch64-buildroot-linux-uclibc/sysroot/usr/lib64/libiconv.so.2: > error adding symbols: DSO missing from command line > > reported by Waldemar: > http://lists.busybox.net/pipermail/buildroot/2024-May/690952.html > > Reproduced and fixed the build error using this defconfig: > > BR2_x86_64=y > BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y > BR2_TOOLCHAIN_BUILDROOT_WCHAR=y > BR2_TOOLCHAIN_BUILDROOT_CXX=y > BR2_PER_PACKAGE_DIRECTORIES=y > BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y > BR2_PACKAGE_KODI=y > BR2_PACKAGE_MESA3D=y > BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_IRIS=y > BR2_PACKAGE_MESA3D_OPENGL_EGL=y > BR2_PACKAGE_MESA3D_OPENGL_ES=y > BR2_PACKAGE_PYTHON3=y > BR2_PACKAGE_PYTHON3_PY_ONLY=y > > Signed-off-by: Bernd Kuhls <bernd@kuhls.net> > --- > package/kodi/kodi.mk | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/package/kodi/kodi.mk b/package/kodi/kodi.mk > index 94cab237dc..301330a574 100644 > --- a/package/kodi/kodi.mk > +++ b/package/kodi/kodi.mk > @@ -138,6 +138,7 @@ endif > KODI_CONF_OPTS += -DCORE_PLATFORM_NAME="$(KODI_CORE_PLATFORM_NAME)" > > ifeq ($(BR2_ENABLE_LOCALE),) > +KODI_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-liconv I don't understand how this is related: the defconfig you provide in the commit log does _not_ have BR2_ENABLE_LOCALE=y, so it can't exercise this code-path... Regards, Yann E. MORIN. > KODI_DEPENDENCIES += libiconv > endif > > -- > 2.39.2 > > _______________________________________________ > buildroot mailing list > buildroot@buildroot.org > https://lists.buildroot.org/mailman/listinfo/buildroot
Am Sun, 12 May 2024 20:07:55 +0200 schrieb Yann E. MORIN: >> ifeq ($(BR2_ENABLE_LOCALE),) >> +KODI_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-liconv > > I don't understand how this is related: the defconfig you provide in the > commit log does _not_ have BR2_ENABLE_LOCALE=y, so it can't exercise > this code-path... Hi Yann, the if-clause does not contain the letter "y" ;) Libconv is only needed when locale support is not present. Regards, bernd
Bernd, All, On 2024-05-12 20:07 +0200, Yann E. MORIN spake thusly: > On 2024-05-12 19:51 +0200, Bernd Kuhls spake thusly: [--SNIP--] > > diff --git a/package/kodi/kodi.mk b/package/kodi/kodi.mk > > index 94cab237dc..301330a574 100644 > > --- a/package/kodi/kodi.mk > > +++ b/package/kodi/kodi.mk > > @@ -138,6 +138,7 @@ endif > > KODI_CONF_OPTS += -DCORE_PLATFORM_NAME="$(KODI_CORE_PLATFORM_NAME)" > > > > ifeq ($(BR2_ENABLE_LOCALE),) > > +KODI_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-liconv > > I don't understand how this is related: the defconfig you provide in the > commit log does _not_ have BR2_ENABLE_LOCALE=y, so it can't exercise > this code-path... Ignore the above, I missed that it is testing agains "empty", i.e. disabled... Regards, Yann E. MORIN.
Bernd, All, On 2024-05-12 19:51 +0200, Bernd Kuhls spake thusly: > Fixes build error > > /home/wbx/buildroot/output/host/lib/gcc/aarch64-buildroot-linux-uclibc/12.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: > build/utils/utils.a(CharsetConverter.cpp.o): undefined reference to symbol 'libiconv_open' > /home/wbx/buildroot/output/host/lib/gcc/aarch64-buildroot-linux-uclibc/12.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: > /home/wbx/buildroot/output/host/aarch64-buildroot-linux-uclibc/sysroot/usr/lib64/libiconv.so.2: > error adding symbols: DSO missing from command line > > reported by Waldemar: > http://lists.busybox.net/pipermail/buildroot/2024-May/690952.html > > Reproduced and fixed the build error using this defconfig: > > BR2_x86_64=y > BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y > BR2_TOOLCHAIN_BUILDROOT_WCHAR=y > BR2_TOOLCHAIN_BUILDROOT_CXX=y > BR2_PER_PACKAGE_DIRECTORIES=y > BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y > BR2_PACKAGE_KODI=y > BR2_PACKAGE_MESA3D=y > BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_IRIS=y > BR2_PACKAGE_MESA3D_OPENGL_EGL=y > BR2_PACKAGE_MESA3D_OPENGL_ES=y > BR2_PACKAGE_PYTHON3=y > BR2_PACKAGE_PYTHON3_PY_ONLY=y > > Signed-off-by: Bernd Kuhls <bernd@kuhls.net> > --- > package/kodi/kodi.mk | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/package/kodi/kodi.mk b/package/kodi/kodi.mk > index 94cab237dc..301330a574 100644 > --- a/package/kodi/kodi.mk > +++ b/package/kodi/kodi.mk > @@ -138,6 +138,7 @@ endif > KODI_CONF_OPTS += -DCORE_PLATFORM_NAME="$(KODI_CORE_PLATFORM_NAME)" > > ifeq ($(BR2_ENABLE_LOCALE),) > +KODI_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-liconv You recently removed an instance of -DCMAKE_EXE_LINKER_FLAG for -latomic, so that would have been OK to re-introduce one here for -liconv. However, this is not very future-proof, and it would be easy to miss that should we need to introduce other conditional linker flags. So, instead, I rewrote it like we already did for KODI_C_FLAGS. Applied to master, thanks. Regards, Yann E. MORIN. > KODI_DEPENDENCIES += libiconv > endif > > -- > 2.39.2 > > _______________________________________________ > buildroot mailing list > buildroot@buildroot.org > https://lists.buildroot.org/mailman/listinfo/buildroot
>>>>> "Bernd" == Bernd Kuhls <bernd@kuhls.net> writes: > Fixes build error > /home/wbx/buildroot/output/host/lib/gcc/aarch64-buildroot-linux-uclibc/12.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: > build/utils/utils.a(CharsetConverter.cpp.o): undefined reference to symbol 'libiconv_open' > /home/wbx/buildroot/output/host/lib/gcc/aarch64-buildroot-linux-uclibc/12.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: > /home/wbx/buildroot/output/host/aarch64-buildroot-linux-uclibc/sysroot/usr/lib64/libiconv.so.2: > error adding symbols: DSO missing from command line > reported by Waldemar: > http://lists.busybox.net/pipermail/buildroot/2024-May/690952.html > Reproduced and fixed the build error using this defconfig: > BR2_x86_64=y > BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y > BR2_TOOLCHAIN_BUILDROOT_WCHAR=y > BR2_TOOLCHAIN_BUILDROOT_CXX=y > BR2_PER_PACKAGE_DIRECTORIES=y > BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y > BR2_PACKAGE_KODI=y > BR2_PACKAGE_MESA3D=y > BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_IRIS=y > BR2_PACKAGE_MESA3D_OPENGL_EGL=y > BR2_PACKAGE_MESA3D_OPENGL_ES=y > BR2_PACKAGE_PYTHON3=y > BR2_PACKAGE_PYTHON3_PY_ONLY=y > Signed-off-by: Bernd Kuhls <bernd@kuhls.net> Committed to 2024.02.x, thanks.
diff --git a/package/kodi/kodi.mk b/package/kodi/kodi.mk index 94cab237dc..301330a574 100644 --- a/package/kodi/kodi.mk +++ b/package/kodi/kodi.mk @@ -138,6 +138,7 @@ endif KODI_CONF_OPTS += -DCORE_PLATFORM_NAME="$(KODI_CORE_PLATFORM_NAME)" ifeq ($(BR2_ENABLE_LOCALE),) +KODI_CONF_OPTS += -DCMAKE_EXE_LINKER_FLAGS=-liconv KODI_DEPENDENCIES += libiconv endif
Fixes build error /home/wbx/buildroot/output/host/lib/gcc/aarch64-buildroot-linux-uclibc/12.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: build/utils/utils.a(CharsetConverter.cpp.o): undefined reference to symbol 'libiconv_open' /home/wbx/buildroot/output/host/lib/gcc/aarch64-buildroot-linux-uclibc/12.3.0/../../../../aarch64-buildroot-linux-uclibc/bin/ld: /home/wbx/buildroot/output/host/aarch64-buildroot-linux-uclibc/sysroot/usr/lib64/libiconv.so.2: error adding symbols: DSO missing from command line reported by Waldemar: http://lists.busybox.net/pipermail/buildroot/2024-May/690952.html Reproduced and fixed the build error using this defconfig: BR2_x86_64=y BR2_TOOLCHAIN_BUILDROOT_UCLIBC=y BR2_TOOLCHAIN_BUILDROOT_WCHAR=y BR2_TOOLCHAIN_BUILDROOT_CXX=y BR2_PER_PACKAGE_DIRECTORIES=y BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y BR2_PACKAGE_KODI=y BR2_PACKAGE_MESA3D=y BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_IRIS=y BR2_PACKAGE_MESA3D_OPENGL_EGL=y BR2_PACKAGE_MESA3D_OPENGL_ES=y BR2_PACKAGE_PYTHON3=y BR2_PACKAGE_PYTHON3_PY_ONLY=y Signed-off-by: Bernd Kuhls <bernd@kuhls.net> --- package/kodi/kodi.mk | 1 + 1 file changed, 1 insertion(+)