On Thu, Oct 15, 2015 at 10:23:21AM -0400, Chet Ramey wrote: > The first beta release of bash-4.4 is now available with the URL > > ftp://ftp.cwru.edu/pub/bash/bash-4.4-beta.tar.gz
Building on HP-UX 10.20 with gcc 3.3: imadev:/var/tmp/bash/bash-4.4-beta$ CC=/net/appl/gcc-3.3/bin/gcc ./configure [...] imadev:/var/tmp/bash/bash-4.4-beta$ make [...] /net/appl/gcc-3.3/bin/gcc -c -I. -I../.. -I../.. -I../../lib -I../../include -I. -I../../lib/intl -I/var/tmp/bash/bash-4.4-beta/lib/intl -DHAVE_CONFIG_H -DSHELL -DHPUX -DDEBUG -g -O2 -Wno-parentheses -Wno-format-security casemod.c casemod.c: In function `sh_modcase': casemod.c:133: error: `mb_cur_max' undeclared (first use in this function) casemod.c:133: error: (Each undeclared identifier is reported only once casemod.c:133: error: for each function it appears in.) make[1]: *** [casemod.o] Error 1 make[1]: Leaving directory `/var/tmp/bash/bash-4.4-beta/lib/sh' make: *** [lib/sh/libsh.a] Error 1 Looks like the "int mlen, mb_cur_max;" which is inside #if defined (HANDLE_MULTIBYTE) needs to be moved outside. Or at least the mb_cur_max variable. Moving the whole line above the #if is simple, and works for me. Next: /net/appl/gcc-3.3/bin/gcc -c -DHAVE_CONFIG_H -DSHELL -I. -I/var/tmp/bash/bash-4.4-beta -I../.. -I../../lib -DHPUX -DDEBUG -g -O2 -Wno-parentheses -Wno-format-security display.c display.c: In function `rl_redisplay': display.c:1032: error: `mb_cur_max' undeclared (first use in this function) display.c:1032: error: (Each undeclared identifier is reported only once display.c:1032: error: for each function it appears in.) display.c: In function `rl_character_len': display.c:2263: warning: comparison is always true due to limited range of data type make[1]: *** [display.o] Error 1 make[1]: Leaving directory `/var/tmp/bash/bash-4.4-beta/lib/readline' make: *** [lib/readline/libreadline.a] Error 1 Similar. This time I removed the "int" from "int mb_cur_max = MB_CUR_MAX;" inside the #if block, and put "int mb_cur_max;" above it. These may not be the correct fixes (maybe the actual code that's using this variable should be #if protected instead of leaving the variable exposed in both cases), but they got it to compile for me.