Installing on Redhat 7.2

Hi,

I’ve been trying to install RT on Redhat Linux running Apache 1.3.23 without
success.

The problem I have seems to be around which version of Mason is installed.

Originally I installed Mason via CPAN, hence 1.11 with the 2-0-13 release of
RT. This gave off several errors about Lexer and Compile no longer being
part of the Mason package.

I then went back and looked at the instructions on the website about
installing on RH 7.2 and found the instructions were written for Mason 1.04.
I regressed to this version, but then tripped over extensions to the API
made to the library since then that RT 2-0-13 requires.

After searching this mailing list archive I found this message:

http://lists.fsck.com/pipermail/rt-users/2002-July/008847.html

where it recommends using RT 2-0-14pre1 with Mason 1.10. I have tried this
combination with Mason 1.10 and 1.11 but get the same error when running
apachectl to test the config:

[root@nbingham]# apachectl configtest
Variable “$m” is not imported at /usr/local/rt2/bin/webmux.pl line 94.
[Fri Jul 5 09:17:09 2002] [error] Global symbol “$m” requires explicit
package name at /usr/local/rt2/bin/webmux.pl line 94.
Compilation failed in require at (eval 32) line 1.

Syntax error on line 51 of /etc/httpd/conf/vhosts/etg.conf:
Global symbol “$m” requires explicit package name at
/usr/local/rt2/bin/webmux.pl line 94.
Compilation failed in require at (eval 32) line 1.

Can anyone point out what is wrong with this?

Thanks,

Neil.

Neil Bingham, Software Team Leader, Engineering Tools Group.
Pace Micro Technology plc Tel: +44 (0) 1223 518574
645 Newmarket Road, Fax: +44 (0) 1223 518526
Cambridge, United Kingdom, CB5 8PB WWW: http://www.pace.co.uk/

Hi,

I’ve been trying to install RT on Redhat Linux running
Apache 1.3.23 without
success.

Syntax error on line 51 of /etc/httpd/conf/vhosts/etg.conf:
Global symbol “$m” requires explicit package name at
/usr/local/rt2/bin/webmux.pl line 94.
Compilation failed in require at (eval 32) line 1.

Can anyone point out what is wrong with this?

Yup… Download Mason-1.05 and all your troubles will go away.

Unfortunately I now get

line 90: Can’t call method “content_type” on an undefined value
context:

86:
87: # Set this page’s content type to whatever we are called with
88: sub SetContentType {
89: my $type = shift;
90: $RT::Mason::r->content_type($type);
91: }
92:
93: sub CGIObject {
94: $m->cgi_object();

with RT 2-0-14pre1

Neil.

Neil Bingham, Software Team Leader, Engineering Tools Group.
Pace Micro Technology plc Tel: +44 (0) 1223 518574
645 Newmarket Road, Fax: +44 (0) 1223 518526
Cambridge, United Kingdom, CB5 8PB WWW: http://www.pace.co.uk/

I’ve been trying to install RT on Redhat Linux running
Apache 1.3.23 without
success.

Syntax error on line 51 of /etc/httpd/conf/vhosts/etg.conf:
Global symbol “$m” requires explicit package name at
/usr/local/rt2/bin/webmux.pl line 94.
Compilation failed in require at (eval 32) line 1.

Can anyone point out what is wrong with this?

Yup… Download Mason-1.05 and all your troubles will go away.

Unfortunately I now get

line 90: Can’t call method “content_type” on an undefined value
context:

86:
87: # Set this page’s content type to whatever we are called with
88: sub SetContentType {
89: my $type = shift;
90: $RT::Mason::r->content_type($type);
91: }
92:
93: sub CGIObject {
94: $m->cgi_object();

with RT 2-0-14pre1

I’m using 2.0.13 with mason 1.05 - that’s what made the issue go away.

Of course, I’m having my own troubles getting this to work.

That has made no difference. For completeness my config files are:

mason.conf
PerlSetVar MasonCompRoot “/usr/local/rt2/WebRT/html”
PerlSetVar MasonDataDir “/etc/httpd/mason”
PerlModule HTML::Mason::ApacheHandler

<Directory “/usr/local/rt2/WebRT/html”>
<FilesMatch “(.html)$”>
SetHandler perl-script
PerlHandler HTML::Mason::ApacheHandler

httpd.conf snippet

Include /etc/httpd/conf/mason.conf

Alias /rt/ /usr/local/rt2/WebRT/html/
Alias /rt /usr/local/rt2/WebRT/html
PerlRequire /usr/local/rt2/bin/webmux.pl
<Location /rt2>
SetHandler perl-script
PerlHandler RT::Mason

Neil.

Hi,

I’ve been trying to install RT on Redhat Linux running
Apache 1.3.23 without
success.

Syntax error on line 51 of /etc/httpd/conf/vhosts/etg.conf:
Global symbol “$m” requires explicit package name at
/usr/local/rt2/bin/webmux.pl line 94.
Compilation failed in require at (eval 32) line 1.

Can anyone point out what is wrong with this?

Yup… Download Mason-1.05 and all your troubles will go away.

Unfortunately I now get

line 90: Can’t call method “content_type” on an undefined value
context:

86:
87: # Set this page’s content type to whatever we are called with
88: sub SetContentType {
89: my $type = shift;
90: $RT::Mason::r->content_type($type);
91: }
92:
93: sub CGIObject {
94: $m->cgi_object();

with RT 2-0-14pre1

I’m using 2.0.13 with mason 1.05 - that’s what made the issue go away.

Of course, I’m having my own troubles getting this to work.

–Yan

    o
 /\ /_       o__

o* ~() ,>/’ o__
Yan Seiner, PE ()() ,>/‘_ o__ o__
Cardinal Engineering, Inc. ()() ,>/’_ ,>/'_
http://www.cardinalengineering.com ()() ()()
spam killer code kpwq1jkcsEzdx39gnkVvgycd15ayqq

Hi,

I’ve been trying to install RT on Redhat Linux running
Apache 1.3.23 without success.

After a week on holiday, and some other useful posts on this list I now have
an installed combination that doesn’t give the Mason errors. Turns out
Mason 1.02 and RT 2-0-13 work for me. Hohum.

However I am now getting Internal Server Errors. The Apache error log
gives:

[Mon Jul 15 15:25:12 2002] [error] Connect Failed Can’t connect to local
MySQL server through socket ‘/tmp/mysql.sock’ (2)
at /usr/local/rt2/lib/RT.pm line 27

I can connect to the database using the mysql binary and the rt2 username
and password. The config file has the correct username and password
specified (and apache has been stopped and restarted).

I am pretty confidant there isn’t a general MySQL problem as we are running
Bugzilla on this server too.

RT is unfortunately not writing logs to /tmp as per the config file. The RT
FAQ seems rather empty on this subject…

TIA,

Neil.

[Mon Jul 15 15:25:12 2002] [error] Connect Failed Can’t connect to local
MySQL server through socket ‘/tmp/mysql.sock’ (2)
at /usr/local/rt2/lib/RT.pm line 27

hmm…
I’d be rather suprised to find the mysql socket in /tmp. Something like
/var/lib/mysql/mysql.sock is far more likely. Check the setting in
/etc/my.conf, which should be something like
[mysqld]
socket=/var/lib/mysql/mysql.sock

Then check that your perl modules are pointing to the same place.

cheers
john

Neil Bingham wrote:

Hi,

I’ve been trying to install RT on Redhat Linux running
Apache 1.3.23 without success.

After a week on holiday, and some other useful posts on this list I now have
an installed combination that doesn’t give the Mason errors. Turns out
Mason 1.02 and RT 2-0-13 work for me. Hohum.

However I am now getting Internal Server Errors. The Apache error log
gives:

[Mon Jul 15 15:25:12 2002] [error] Connect Failed Can’t connect to local
MySQL server through socket ‘/tmp/mysql.sock’ (2)
at /usr/local/rt2/lib/RT.pm line 27

I can connect to the database using the mysql binary and the rt2 username
and password. The config file has the correct username and password
specified (and apache has been stopped and restarted).

I am pretty confidant there isn’t a general MySQL problem as we are running
Bugzilla on this server too.

RT is unfortunately not writing logs to /tmp as per the config file. The RT
FAQ seems rather empty on this subject…

TIA,

Neil.

Hello Neil,
in the mysql configuration you can look up where MySQL is creating it’s local
communications socket. This is either /tmp/mysql.sock or
/var/lib/mysql/mysql.sock or something around that.

You can easily fix this by either fixing Your mysql setup, or simply create a
link from the real location to /tmp/mysql.sock.

The reason this is not in the RT FAQ is that this really is a MySQL problem.

Regards,
Harald

Harald WagenerAn der Alster 4220099 Hamburg*http://www.fcb-wilkens.com

hwagener.vcf (202 Bytes)

[Mon Jul 15 15:25:12 2002] [error] Connect Failed Can’t
connect to local
MySQL server through socket ‘/tmp/mysql.sock’ (2)
at /usr/local/rt2/lib/RT.pm line 27

hmm…
I’d be rather suprised to find the mysql socket in /tmp.
Something like
/var/lib/mysql/mysql.sock is far more likely. Check the setting in
/etc/my.conf, which should be something like
[mysqld]
socket=/var/lib/mysql/mysql.sock

Then check that your perl modules are pointing to the same place.

You’re right. MySQL is configured to use /var/lib/mysql/mysql.sock.

Just symlinking /tmp/mysql.sock to that file makes it work. I’ve grep’d
down through all the RT source and can’t find a reference to /tmp/mysql.sock

Searching the /usr/lib/perl5 doesn’t produce a match either.

Strange.

Neil.

Just symlinking /tmp/mysql.sock to that file makes it work. I’ve
grep’d down through all the RT source and can’t find a reference to
/tmp/mysql.sock

This could be dangerous if /usr/local and /tmp are not on the same
filesystem.

Searching the /usr/lib/perl5 doesn’t produce a match either.

If you are using DBD::mysql without specifying a hostname, then
localhost and Unix domain socket are assumed. Have you set the hostname
in the etc/config.pm?

(darren)

You know the great thing about TV? If something important happens
anywhere at all in the world, no matter what time of the day or
night, you can always change the channel.
– Jim Ignatowski

Just symlinking /tmp/mysql.sock to that file makes it work. I’ve
grep’d down through all the RT source and can’t find a reference to
/tmp/mysql.sock

This could be dangerous if /usr/local and /tmp are not on the same
filesystem.

Indeed.

Searching the /usr/lib/perl5 doesn’t produce a match either.

If you are using DBD::mysql without specifying a hostname, then
localhost and Unix domain socket are assumed. Have you set
the hostname in the etc/config.pm?

I left $DatabaseHost as the default “localhost”.

Incidentally I’ve been experimenting successfully with this for the last
couple of hours. So far it pretty much makes the installation hassle
worthwhile.

However one problem I have encountered is that requests emailed in from
users that don’t have RT accounts are being thrown out:

No permission to create tickets in the queue ‘general’.

I assume the Nobody user has CreateTicket privs but it isn’t listed in the
user list so I can’t check.

Anyone got any ideas on this one?

Thanks,

Neil.

Within RT, grant the Everyone group CreateTicket.

James.From: Neil Bingham [mailto:neil.bingham@pace.co.uk]
Sent: Monday, July 15, 2002 9:34 AM
To: rt-users@lists.fsck.com
Subject: RE: [rt-users] Installing on Redhat 7.2

Just symlinking /tmp/mysql.sock to that file makes it work. I’ve
grep’d down through all the RT source and can’t find a reference to
/tmp/mysql.sock

This could be dangerous if /usr/local and /tmp are not on the same
filesystem.

Indeed.

Searching the /usr/lib/perl5 doesn’t produce a match either.

If you are using DBD::mysql without specifying a hostname, then
localhost and Unix domain socket are assumed. Have you set the
hostname in the etc/config.pm?

I left $DatabaseHost as the default “localhost”.

Incidentally I’ve been experimenting successfully with this for the last
couple of hours. So far it pretty much makes the installation hassle
worthwhile.

However one problem I have encountered is that requests emailed in from
users that don’t have RT accounts are being thrown out:

No permission to create tickets in the queue ‘general’.

I assume the Nobody user has CreateTicket privs but it isn’t listed in the
user list so I can’t check.

Anyone got any ideas on this one?

Thanks,

Neil.

rt-users mailing list
rt-users@lists.fsck.com http://lists.fsck.com/mailman/listinfo/rt-users

Have you read the FAQ? The RT FAQ Manager lives at http://fsck.com/rtfm