[ic] Non-Threaded Perl RPMs For RedHat v9.0

Cameron B. Prince interchange-users@icdevgroup.org
Sun May 11 02:36:01 2003


Hi all,

As many of you have already noticed, Red Hat decided to configure Perl with
threads since v8.0 for some unknown reason. Interchange is incompatible with
threads and fails to run. To me, it's a hassle to compile a separate version
of Perl just for Interchange, especially when I have no need for threads.

I have reconfigured the Perl included with Red Hat v9.0 and created new RPMs
for it and all the default and Interchange required modules. Other packages
such as mod_perl and vim_enhanced had to be recompiled as well. All of these
are available via anonymous FTP at: ftp.rideware.com

Non-threaded Perl is in: /perl/rpm/rh9.0/perl-5.8.0-nonthreaded
The modules are in: /perl_modules/rpm/rh9.0/perl-5.8.0-nonthreaded
Other programs that had to be recompiled are in:
/perl/rpm/rh9.0/perl-5.8.0-nonthreaded/dep

These RPMs have been created and tested on a RH9 distro. I do not know if
they will work on a RH8 system. Maybe someone could give them a try and
reply.

I have found it's best to completely remove the default Perl and any modules
before installing the non-threaded Perl. You will need to do so using
"rpm -e --nodeps <package>" as there will be unresolved dependencies. Do an
"rpm -qa | grep perl" to get the full list.

Once you have removed everything, install the non-threaded Perl and then the
modules. If you need SOAP::Lite, you will need to add "--nodeps" as for some
reason it's requiring a Jabber module even though it's not compiled to
support that feature. Otherwise, all the prerequisite modules should be
there.

If you need other modules such as DBD::MySQL, you can recompile them from
the source RPM on your RH9 disc. Use "rpmbuild --rebuild <source package>".
You can create RPMs for other non-RPM modules by using
"cpanflute2 --buildall <module.tar.gz>". Cpanflute2 is included in the
perl-RPM-Specfile rpm with the other modules.

And finally, you need to install the other programs that needed to be
recompiled to support the new Perl. Just "rpm -e --nodeps" them and install
the ones provided on the site.

There could be other packages within your installation that may be broken by
installing this Perl. If so, all you should have to do is remove them and
recompile the source rpm using "rpmbuild --rebuild <source-package>" then
install the resulting RPMs.

And a final note for those not too familiar with Perl modules. You won't
need to install Bundle::Interchange once these steps are complete as all the
modules will already be installed.

Good luck,
Cameron