[sudo-workers] 1.6.9b1 compilation fails on Solaris 10 x86
Drew Schatt
schatt at schatt.com
Tue Jun 19 15:07:12 EDT 2007
On Jun 19, 2007, at 11:54 AM, Drew Schatt wrote:
> Attempting to compile sudo 1.6.9b1 on Solaris 10 x86, I get the
> following error during compile:
>
>> cc -c -I. -I. -I/usr/local/include -I/usr/local/ssl/include -D_XPG6
>> -L/usr/local/lib -L/usr/local/ssl/lib -KPIC -lm -xc99 -I/usr/local/
>> include -I/usr/local/ssl/include -L/usr/local/lib -L/usr/local/ssl/
>> lib -D_XPG6 -xstrconst -KPIC -lm -D__EXTENSIONS__ -D_PATH_SUDOERS=
>> \"/etc/sudoers\" -D_PATH_SUDOERS_TMP=\"/etc/sudoers.tmp\" -
>> DSUDOERS_UID=0 -DSUDOERS_GID=0 -DSUDOERS_MODE=0440 parse.c
>> "parse.c", line 443: undefined symbol: FNM_CASEFOLD
>> "parse.c", line 445: undefined symbol: FNM_CASEFOLD
>> cc: acomp failed for parse.c
>
>
> According to the configure output, I have a working fnmatch:
>> checking for working POSIX fnmatch... yes
>
> Anyone have any ideas, or anything that I should try?
> -Drew Schatt
Bad form to respond to my own message, but I have the following
additional information:
To fix the error in compilation in parse.c, I think that the ifndef
needs to be changed to an ifdef - line 47 in parse.c needs to be:
> #ifdef HAVE_FNMATCH
> # include "emul/fnmatch.h"
> #endif /* HAVE_FNMATCH */
instead of:
> #ifndef HAVE_FNMATCH
> # include "emul/fnmatch.h"
> #endif /* HAVE_FNMATCH */
In addition, there is an undefined symbol "_PATH_DEVNULL", which
isn't mentioned anywhere else in the source code - (perhaps a missing
autoconf change?) on line 966 in sudo.c.
After changing that to be "/dev/null", sudo compiles fine.
However, visudo fails to compile, because of two missing symbols,
both of which are defined in sudo.c.
> cc -o visudo visudo.o fileops.o gettime.o goodpath.o find_path.o
> sudo.tab.o lex.yy.o alloc.o defaults.o err.o glob.o memrchr.o
> snprintf.o getprogname.o -lsocket -lnsl
> Undefined first referenced
> symbol in file
> sudo_getpwnam glob.o
> sudo_getpwuid glob.o
>
Any ideas on how to get visudo to compile as well?
-Drew Schatt
More information about the sudo-workers
mailing list