pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Problem with pkgsrc'd bison running non-pkgsrc'd m4



Hi,

I'm using a recent pkgsrc snapshot on Suse Linux Enterprise Desktop 10.
While compiling net/libIDL, I've got the following error (I've removed
stderr redirection to /dev/null):

% ===> Building for libIDL-0.8.11
% /usr/pkg/bin/bison -y -d -v ./parser.y
% conflicts: 23 shift/reduce, 3 reduce/reduce
% NONE:0: /usr/bin/m4: ERROR: EOF in string
% /usr/pkg/bin/bison: subsidiary program `/usr/bin/m4' failed (exit status 1)
% *** Error code 1

I've investigated further using strace(1), and discovered that
/usr/pkg/bin/bison is used, and which in turn runs /usr/bin/m4.
The latter opens a couple of files:

% 29676 open("/usr/pkg/share/bison/m4sugar/m4sugar.m4", O_RDONLY) = 3
% 29676 open("m4sugar/version.m4", O_RDONLY) = -1 ENOENT
% 29676 open("/usr/pkg/share/bison/m4sugar/version.m4", O_RDONLY) = -1 ENOENT
% 29676 open("m4sugar/foreach.m4", O_RDONLY) = -1 ENOENT
% 29676 open("/usr/pkg/share/bison/m4sugar/foreach.m4", O_RDONLY) = 3
% 29676 open("/usr/pkg/share/bison/bison.m4", O_RDONLY) = 0
% 29676 open("/usr/pkg/share/bison/c-skel.m4", O_RDONLY) = 0
% 29676 open("/usr/pkg/share/bison/yacc.c", O_RDONLY) = 3

If I replace /usr/bin/m4 with a symlink to /usr/pkg/bin/gm4, the error
goes away.

The host's m4 is m4-1.4.4-12.2, while pkgsrc'd m4 is m4-1.4.12.

I'm not sure from which layer the error comes, the most obvious being to
configure pkgsrc'd bison to use pkgsrc'd m4.

Thanks.
Regards,
-- 
Jeremie LE HEN


Home | Main Index | Thread Index | Old Index