Support #940
Audacious fails to build on OpenIndiana Hipster 2019.10
0%
Description
Greetings,
When attempting to build Audacious 3.10.1 from the Audacious website source on OpenIndiana (Hipster), I receive the following error during `gmake`:
Successfully compiled audio.cc (lib).
Successfully compiled audstrings.cc (lib).
charset.cc: In function 'StringBuf str_convert(const char*, int, const char*, const char*)':
charset.cc:56:31: error: invalid conversion from 'const char**' to 'char**' [-fpermissive]
size_t ret = iconv (conv, & in, & inbytesleft, & out, & outbytesleft);
^~~~
In file included from charset.cc:24:0:
/usr/include/iconv.h:43:15: note: initializing argument 2 of 'std::size_t iconv(iconv_t, char**, std::size_t*, char**, std::size_t*)'
extern size_t iconv(iconv_t, char **_RESTRICT_KYWD,
^~~~~
At global scope:
cc1plus: warning: unrecognized command line option '-Wno-stringop-truncation'
Failed to compile charset.cc (lib)!
gmake[5]: *** [../../buildsys.mk:428: charset.lib.o] Error 1
gmake[4]: *** [../../buildsys.mk:125: all] Error 2
gmake[3]: *** [../buildsys.mk:135: libaudcore] Error 2
gmake[2]: *** [../buildsys.mk:123: all] Error 2
gmake[1]: *** [buildsys.mk:135: src] Error 2
gmake: *** [buildsys.mk:123: all] Error 2
Configure command:
./configure --prefix=/export/home/will/Apps/audacious --disable-nls
System Info:
- OpenIndiana Hipster 2019.10
- AMD64 arch
- uname -a:
SunOS openindiana 5.11 illumos-3b436d06bb i86pc i386 i86pc
(Is actually a 64-bit system) - gcc --version:
gcc (OpenIndiana 6.5.0-oi-2) 6.5.0
Thanks!
History
#1 Updated by John Lindgren almost 5 years ago
- Tracker changed from Bug to Support
Look at line 52:
ICONV_CONST char * in = (ICONV_CONST char *)str;
The prototype of iconv
varies from system to system. You need to define it correctly for your system (to either const or nothing).
Usually autoconf will detect the correct settings for you, but it appears to be not able to handle "OpenIndiana" (whatever type of system that is, never heard of it before).
#2 Updated by Will B almost 5 years ago
John Lindgren wrote:
Look at line 52:
ICONV_CONST char * in = (ICONV_CONST char *)str;
The prototype of
iconv
varies from system to system. You need to define it correctly for your system (to either const or nothing).Usually autoconf will detect the correct settings for you, but it appears to be not able to handle "OpenIndiana" (whatever type of system that is, never heard of it before).
Thanks, I'll try that.
OpenIndiana is the community continuation of Sun Microsystem's OpenSolaris after Oracle closed-sourced it.
Just about everything else compiles fine on here, but some stragglers (including one of my own projects) need some tweaking.
#3 Updated by Will B almost 5 years ago
It appears ICONV_CONST
is actually being set to const
. Audacious fails to build with it defined as such. I overrode it and set it to nothing and Audacious finally built, but when attempting to run it, it threw up an error about not finding a certain lib.
It seems like iconv is a major pain no matter what it's used in. I have had all kinds of issues on FreeBSD, Linux and OpenIndiana with iconv and wish there was something less troublesome to replace it.
I'll pass on Audacious and OpenIndiana for now. I'll have to use the included Rhythmbox for now (ugh).