GNOME Bugzilla – Bug 583923
NI_IDN undefined
Last modified: 2012-01-06 23:52:19 UTC
a) 2.26.x is missing in the Version field b) for gnome-system-monitor-2.26.2, compilation on NetBSD fails with: openfiles.cpp: In function 'char* friendlier_hostname(const char*, int)': openfiles.cpp:70: error: 'NI_IDN' was not declared in this scope I looked up the value on a Linux system and added #ifndef NI_IDN #define NI_IDN 32 #endif to that file which makes compilation succeed.
*** Bug 595800 has been marked as a duplicate of this bug. ***
Note my (accidental dup) filing, which adds OS X as a platform affected by this same problem. However, I don't think hard-coding a constant that isn't defined in a system header is the right way to get the intended action from a system-library function...solves the build failure, but makes a blind assumption that the value platform-independent (may be true) and that the feature the flag triggers is even available at all (definitely not true).
Looks like it's the "libidn" extension in glibc. Well heck, libidn is an independently-available library, so a portable solution is to use the standard-compliant form of getnameinfo() and then use libidn to do the IDN conversion. That would work for everyone. Alternatively, could have ./configure test for the availability of NI_IDN and only fall back to external libidn if necessary. Could developers chime in here about what approach would be preferred?
*** Bug 617033 has been marked as a duplicate of this bug. ***
Anyway, still broken on 2.28. Could a developer chime in here about how to proceed, or if there is still any work being done on this module?
*** This bug has been marked as a duplicate of bug 652602 ***