I'm trying to update tvheadend to master branch. I get an error:
main: iconv() routine is not working properly ((null)), aborting!
This check was introduced here:
I understand that OpenWrt built without "Full language support" will include a stub (or is it musl iconv?) instead of standard iconv.
Can someone explain OpenWrt iconv functionality?
What is the expected behaviour when a package uses default OpenWrt iconv? Is null expected for that test?
Second question:
What should I do if newer versions of tvheadend won't work without full iconv?
According to this email, I should add DEPENDS:=@BUILD_NLS, and the tvheadend package will no longer be visible unless "Full language support" is selected. I think that also means it won't be built and made available from official repo for opkg install.
Yes, a failure is expected in this case. Apparently they want to convert utf-8 into ascii (removing accents, transliterate) which the OpenWrt intl stubs cannot really handle since such conversions require huge mapping tables which would take up a lot of space.
The UTF-8->ASCII Codec in the stub will map any byte >= 0x80 to (wchar_t)0xfffe. Not sure if it is actually put as (char)0xff, (char)0xfe into the output buffer or whether it is clamped to (char)0xff. Can check more thoroughly when I am near a PC again.
I agree that it should use ? as replacement char though.