Why this linking fail?
Unga
unga888 at yahoo.com
Thu Jul 17 05:37:44 UTC 2008
--- On Thu, 7/17/08, Unga <unga888 at yahoo.com> wrote:
> Sorry guys, I have found an issue. In the libc compile log
> shows following error:
> lex -P_nsyy -o/dev/stdout /usr/src/lib/libc/net/nslexer.l
> | sed -e '/YY_BUF_SIZE/s/16384/1024/'
> >nslexer.c
> lex: fatal internal error, exec failed
>
> Let me check why the lex failed.
>
Ok, I managed to narrow down the problem.
I'm in a chroot jail.
lex -P_nsyy -o/dev/stdout /usr/src/lib/libc/net/nslexer.l >nslexer.c
lex: could not create /dev/stdout
ls -l /dev/stdout
lrwxr-xr-x 1 root wheel 4 Jul 17 12:24 /dev/stdout -> fd/1
ls -l /dev/fd/
crw-rw-rw- 1 root wheel 0, 17 Jul 17 10:30 0
crw-rw-rw- 1 root wheel 0, 19 Jul 17 10:30 1
crw-rw-rw- 1 root wheel 0, 21 Jul 17 10:30 2
echo xxx > /dev/stdout
xxx
Note, writing /dev/stdout works, it prints back the xxx.
Before I enter into chroot jail, this is how mount devfs:
mount -v -o rw -t devfs dev /somepath/dev
But this statement works well outside of jail:
lex -P_nsyy -o/dev/stdout /usr/src/lib/libc/net/nslexer.l >nslexer.c
Is my devfs mount correct? I did not do any devfs configuration. Does it require any devfs configuration on the new /somepath/dev mount?
Appreciate very much your reply on this.
Unga
More information about the freebsd-questions
mailing list