Because I don't want to keep interfering with users on our live CVS system
(which is on Debian) I decided today to set up an experimental SCMBug system on
a spare machine I have which runs Ubuntu 7.04.
The .debs from mkgnu.net did install cleanly, but the packages do not declare
their dependency on libnet-ldap-perl, which is the Ubuntu package which
provides Net::LDAP. However, I was able to install this without difficulty.
SCMBug 0.23.4 by default expects to find Bugzilla 3.0.0, but the version of
Bugzilla packaged for Ubuntu Fiesty Fawn is 2.22.1. However, again, that's a
simple edit of daemon.conf.
Having got that far the daemon still fails to start with the error message:
*******************************************
**
**
** Scmbug error 79: Package 'globals.pl' not found in installation directory
'/usr/share/bugzilla'.
Initialization of bug-tracking system 'Bugzilla' version '2.22.1' failed. This
could be due to an unsupported version of this system, or misconfiguration.
**
**
*******************************************
What's frustrating about that is that /usr/share/bugzilla/globals.pl is indeed
provided by the Ubuntu bugzilla package, so the error message is just wrong.
Strace shows us:
chdir("/usr/share/bugzilla") = 0
stat64("/usr/share/scmbug/lib/globals.pl", 0xbfeb418c) = -1 ENOENT (No such
file or directory)
stat64("/etc/perl/globals.pl", 0xbfeb418c) = -1 ENOENT (No such file or
directory)
stat64("/usr/local/lib/perl/5.8.8/globals.pl", 0xbfeb418c) = -1 ENOENT (No such
file or directory)
stat64("/usr/local/share/perl/5.8.8/globals.pl", 0xbfeb418c) = -1 ENOENT (No
such file or directory)
stat64("/usr/lib/perl5/globals.pl", 0xbfeb418c) = -1 ENOENT (No such file or
directory)
stat64("/usr/share/perl5/globals.pl", 0xbfeb418c) = -1 ENOENT (No such file or
directory)
stat64("/usr/lib/perl/5.8/globals.pl", 0xbfeb418c) = -1 ENOENT (No such file or
directory)
stat64("/usr/share/perl/5.8/globals.pl", 0xbfeb418c) = -1 ENOENT (No such file
or directory)
stat64("/usr/local/lib/site_perl/globals.pl", 0xbfeb418c) = -1 ENOENT (No such
file or directory)
stat64("./globals.pl", {st_mode=S_IFREG|0755, st_size=28594, ...}) = 0
open("./globals.pl", O_RDONLY|O_LARGEFILE) = 5
ioctl(5, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfeb3fa8) = -1 ENOTTY (Inappropriate
ioctl for device)
_llseek(5, 0, [0], SEEK_CUR) = 0
read(5, "#!/usr/bin/perl\n# -*- Mode: perl"..., 4096) = 4096
so the file is found and is opened.
I'm assuming that it is this stanza starting at line of Bugzilla.pm which is
failing:
# This is the Bugzilla API file.
$package_name = "globals.pl";
if ( package_exists( $package_name ) == 0) {
return ( 2, "Package '" . $package_name . "' not found in
installation directory '" .
$self->installation_directory() . "'.\n" );
}
do 'globals.pl';
but beyond that I really can't go - I'm not sufficiently familiar with how the
Perl package system works to debug further. The last thing in the strace output
before the error message is:
stat64("/usr/share/scmbug/lib/Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No such
file or directory)
stat64("/usr/share/scmbug/lib/Bugzilla.pm", 0xbf8ef73c) = -1 ENOENT (No such
file or directory)
stat64("/etc/perl/Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No such file or
directory)
stat64("/etc/perl/Bugzilla.pm", 0xbf8ef73c) = -1 ENOENT (No such file or
directory)
stat64("/usr/local/lib/perl/5.8.8/Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No
such file or directory)
stat64("/usr/local/lib/perl/5.8.8/Bugzilla.pm", 0xbf8ef73c) = -1 ENOENT (No
such file or directory)
stat64("/usr/local/share/perl/5.8.8/Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No
such file or directory)
stat64("/usr/local/share/perl/5.8.8/Bugzilla.pm", 0xbf8ef73c) = -1 ENOENT (No
such file or directory)
stat64("/usr/lib/perl5/Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No such file or
directory)
stat64("/usr/lib/perl5/Bugzilla.pm", 0xbf8ef73c) = -1 ENOENT (No such file or
directory)
stat64("/usr/share/perl5/Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No such file
or directory)
stat64("/usr/share/perl5/Bugzilla.pm", 0xbf8ef73c) = -1 ENOENT (No such file or
directory)
stat64("/usr/lib/perl/5.8/Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No such file
or directory)
stat64("/usr/lib/perl/5.8/Bugzilla.pm", 0xbf8ef73c) = -1 ENOENT (No such file
or directory)
stat64("/usr/share/perl/5.8/Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No such
file or directory)
stat64("/usr/share/perl/5.8/Bugzilla.pm", 0xbf8ef73c) = -1 ENOENT (No such file
or directory)
stat64("/usr/local/lib/site_perl/Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No
such file or directory)
stat64("/usr/local/lib/site_perl/Bugzilla.pm", 0xbf8ef73c) = -1 ENOENT (No such
file or directory)
stat64("./Bugzilla.pmc", 0xbf8ef82c) = -1 ENOENT (No such file or directory)
stat64("./Bugzilla.pm", {st_mode=S_IFREG|0644, st_size=13306, ...}) = 0
open("./Bugzilla.pm", O_RDONLY|O_LARGEFILE) = 6
ioctl(6, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbf8ef558) = -1 ENOTTY (Inappropriate
ioctl for device)
_llseek(6, 0, [0], SEEK_CUR) = 0
read(6, "# -*- Mode: perl; indent-tabs-mo"..., 4096) = 4096
stat64("/usr/share/scmbug/lib/Bugzilla/Auth.pmc", 0xbf8ef38c) = -1 ENOENT (No
such file or directory)
stat64("/usr/share/scmbug/lib/Bugzilla/Auth.pm", 0xbf8ef29c) = -1 ENOENT (No
such file or directory)
stat64("/etc/perl/Bugzilla/Auth.pmc", 0xbf8ef38c) = -1 ENOENT (No such file or
directory)
stat64("/etc/perl/Bugzilla/Auth.pm", 0xbf8ef29c) = -1 ENOENT (No such file or
directory)
stat64("/usr/local/lib/perl/5.8.8/Bugzilla/Auth.pmc", 0xbf8ef38c) = -1 ENOENT
(No such file or directory)
stat64("/usr/local/lib/perl/5.8.8/Bugzilla/Auth.pm", 0xbf8ef29c) = -1 ENOENT
(No such file or directory)
stat64("/usr/local/share/perl/5.8.8/Bugzilla/Auth.pmc", 0xbf8ef38c) = -1 ENOENT
(No such file or directory)
stat64("/usr/local/share/perl/5.8.8/Bugzilla/Auth.pm", 0xbf8ef29c) = -1 ENOENT
(No such file or directory)
stat64("/usr/lib/perl5/Bugzilla/Auth.pmc", 0xbf8ef38c) = -1 ENOENT (No such
file or directory)
stat64("/usr/lib/perl5/Bugzilla/Auth.pm", 0xbf8ef29c) = -1 ENOENT (No such file
or directory)
stat64("/usr/share/perl5/Bugzilla/Auth.pmc", 0xbf8ef38c) = -1 ENOENT (No such
file or directory)
stat64("/usr/share/perl5/Bugzilla/Auth.pm", {st_mode=S_IFREG|0644,
st_size=10715, ...}) = 0
open("/usr/share/perl5/Bugzilla/Auth.pm", O_RDONLY|O_LARGEFILE) = 8
ioctl(8, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbf8ef0b8) = -1 ENOTTY (Inappropriate
ioctl for device)
_llseek(8, 0, [0], SEEK_CUR) = 0
read(8, "# -*- Mode: perl; indent-tabs-mo"..., 4096) = 4096
brk(0x8b82000) = 0x8b82000
_llseek(8, 1447, [1447], SEEK_SET) = 0
_llseek(8, 0, [1447], SEEK_CUR) = 0
close(8) = 0
_llseek(6, 1004, [1004], SEEK_SET) = 0
_llseek(6, 0, [1004], SEEK_CUR) = 0
close(6) = 0
_llseek(5, 28590, [28590], SEEK_SET) = 0
_llseek(5, 0, [28590], SEEK_CUR) = 0
close(5) = 0
time(NULL) = 1208434465
write(3, "Thu Apr 17 13:14:25 2008 Package"..., 260) = 260
write(1, "\n", 1
) = 1
write(1, "********************************"...,
44*******************************************
) = 44
write(1, "**\n", 3**
) = 3
write(1, "**\n", 3**
) = 3
write(1, "** Scmbug error 79: Package \'glo"..., 255** Scmbug error 79: Package
'globals.pl' not found in installation directory '/usr/share/bugzilla'.
Initialization of bug-tracking system 'Bugzilla' version '2.22.1' failed. This
could be due to an unsupported version of this system, or misconfiguration.
) = 255
write(1, "**\n", 3**
) = 3
write(1, "**\n", 3**
) = 3
write(1, "********************************"...,
44*******************************************
I was running the daemon as:
sudo strace -o /tmp/scmbug.dump /usr/bin/perl /usr/sbin/scmbug_daemon
/etc/scmbug/daemon.conf
The permissions on globals.pl are as follows:
ls -l /usr/share/bugzilla/globals.pl
-rwxr-xr-x 1 www-data www-data 28594 2006-11-16 19:15
/usr/share/bugzilla/globals.pl
Simon Brooke, Software Specialist
Cygnet Solutions Ltd
Registered office: Swan House, Darvel, Ayrshire, Scotland, KA17 0LP
Registered in Scotland No. SC158059
mail: [EMAIL PROTECTED]
www: http://www.cygnets.co.uk
tel: +44(0)1560 323444
fax: +44(0)1560 323432
_______________________________________________
scmbug-users mailing list
[email protected]
http://lists.mkgnu.net/cgi-bin/mailman/listinfo/scmbug-users