Bug 4117 - RPM deps are broken - fedora core 2
: RPM deps are broken - fedora core 2
Status: RESOLVED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: RPM
: 6.5b3
: PC Fedora
: P1 major (vote)
: ---
Assigned To: Dan Sully
:
Depends on:
Blocks: 4118
  Show dependency treegraph
 
Reported: 2006-09-15 11:44 UTC by Kevin Pearsall
Modified: 2009-09-08 09:19 UTC (History)
2 users (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Kevin Pearsall 2006-09-15 11:44:31 UTC
Until I did a yum install mysql slimserver would not run and would tell me i needed to run build perl modules.  Which failed because I didn't have mysql devel installed.  But i was able to do this, which Andy says may cause bad behavior, so I'll rerun build perl modules...  The RPM is quite broken, it's missing deps, and even if you do what slimserver.pl tells you to do, THAT's broken too.

I will do the following:
[install: mysql 3.23.58-16.FC2.1.i386]
I will install/upgrade these to satisfy the dependencies:
[deps: perl-DBD-MySQL 2.9003-4.i386]
[deps: perl-DBI 1.40-4.i386]
Is this ok [y/N]: y
Downloading Packages
Getting perl-DBD-MySQL-2.9003-4.i386.rpm
perl-DBD-MySQL-2.9003-4.i 100% |=========================| 111 kB    00:01     
Getting mysql-3.23.58-16.FC2.1.i386.rpm
mysql-3.23.58-16.FC2.1.i3 100% |=========================| 3.2 MB    00:18     
Getting perl-DBI-1.40-4.i386.rpm
perl-DBI-1.40-4.i386.rpm  100% |=========================| 467 kB    00:02     
Running test transaction:
Test transaction complete, Success!
perl-DBI 100 % done 1/3 
mysql 100 % done 2/3 
perl-DBD-MySQL 100 % done 3/3 
Installed:  mysql 3.23.58-16.FC2.1.i386
Dep Installed:  perl-DBD-MySQL 2.9003-4.i386 perl-DBI 1.40-4.i386
Transaction(s) Complete
root@eatbox ~ # service slimserver start
Starting SlimServer:                                       [  OK  ]
root@eatbox ~ # service slimserver status
slimserver.pl (pid 
13050) is running...
Comment 1 Kevin Pearsall 2006-09-15 11:58:42 UTC
ok so the above comment gets me up and running, but with an old version of mysql so i have to run build-perl-modules.pl...  deps should require mysql 4 or 5, OR include the binaries that Andy tells me are in the tarball.
Comment 2 Kevin Pearsall 2006-09-15 13:47:05 UTC
just reproduced in fedora core 5 as well.  but FC5 has additional problems, please see bug 4117 as well as:
http://wiki.slimdevices.com/index.cgi?RPM
Comment 3 Kevin Pearsall 2006-09-15 13:47:41 UTC
sorry that was, see also: bug 4118
Comment 4 Kevin Pearsall 2006-09-15 14:18:40 UTC
on fedora core 5 so far it's looking like you can get away with just doing a 'yum install mysql-devel' which installs 5.0.22-1 and perl-DBI 1.50...
Comment 5 Kevin Pearsall 2006-09-15 16:35:11 UTC
can not get 6.5.0b3 rpm working AT ALL on fedora core 5.  even after running build-perl-modules.pl with mysql-devel, mysql and perl-dbi installed, it still complains that it can't load DBD::mysql.  it tells me to run buid-perl-modules.pl DBD::mysql which i've run multiple times, and it says it's successful, but the server still will not start.

if you want to take a look i'll leave my parallel running, 10.0.3.48 root:root
Comment 6 Kevin Pearsall 2006-09-15 16:43:22 UTC
(This is on Fedora Core 5 Parallel on OSX 10.4.7 on an Intel iMac.  10.0.4.38 u:root p:root)

[root@localhost slimserver]# ./slimserver.pl
The following modules failed to load: DBD::mysql

To download and compile them, please run: /usr/local/slimserver/Bin/build-perl-modules.pl DBD::mysql

Exiting..
[root@localhost slimserver]# Bin/build-perl-modules.pl DBD::mysql
Welcome to the Slim Devices perl module installer.

These packages are needed for SlimServer to function.
You will need a C compiler (gcc), make, and perl installed.

You will need development libraries for MySQL. eg: libmysqlclient

You will need development libraries for expat. eg: libexpat1-dev

*** Ignore any warnings about AppConfig. ***

Please enter a perl binary to use (defaults to /usr/bin/perl)
This must be the same perl binary that you ran this program with --> 
Please enter a directory to download files to --> /tmp
Downloads will use lwp to fetch tarballs.

Downloading DBD-mysql-3.0002.tar.gz to: /tmp
Uncompressing..
Configuring..
PERL5LIB=/tmp/DBI-1.50/blib/lib:/tmp/DBI-1.50/blib/arch /usr/bin/perl Makefile.PL 
Multiple copies of Driver.xst found in: /tmp/DBI-1.50/blib/arch/auto/DBI/ /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi/auto/DBI/ at Makefile.PL line 727
Building..
In file included from /tmp/DBI-1.50/blib/arch/auto/DBI/DBIXS.h:31,
                 from dbdimp.h:20,
                 from dbdimp.c:20:
/tmp/DBI-1.50/blib/arch/auto/DBI/dbipport.h:227:1: warning: "PERL_UNUSED_DECL" redefined
In file included from /tmp/DBI-1.50/blib/arch/auto/DBI/DBIXS.h:19,
                 from dbdimp.h:20,
                 from dbdimp.c:20:
/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/perl.h:163:1: warning: this is the location of the previous definition
dbdimp.c: In function �mysql_db_login�:
dbdimp.c:1553: warning: unused variable �Perl___notused�
dbdimp.c: In function �mysql_db_disconnect�:
dbdimp.c:1686: warning: unused variable �Perl___notused�
dbdimp.c: In function �dbd_discon_all�:
dbdimp.c:1719: warning: unused variable �Perl___notused�
dbdimp.c: In function �mysql_st_execute�:
dbdimp.c:2557: warning: unused variable �Perl___notused�
dbdimp.c: In function �mysql_st_finish�:
dbdimp.c:3023: warning: unused variable �Perl___notused�
dbdimp.c: In function �mysql_st_internal_execute41�:
dbdimp.c:2461: warning: �rows� may be used uninitialized in this function
In file included from /tmp/DBI-1.50/blib/arch/auto/DBI/DBIXS.h:31,
                 from dbdimp.h:20,
                 from mysql.xs:14:
/tmp/DBI-1.50/blib/arch/auto/DBI/dbipport.h:227:1: warning: "PERL_UNUSED_DECL" redefined
In file included from /tmp/DBI-1.50/blib/arch/auto/DBI/DBIXS.h:19,
                 from dbdimp.h:20,
                 from mysql.xs:14:
/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE/perl.h:163:1: warning: this is the location of the previous definition
mysql.xs: In function �XS_DBD__mysql__GetInfo_dbd_mysql_get_info�:
mysql.xs:631: warning: implicit declaration of function �is_prefix�
mysql.xs:639: warning: ignoring return value of �Perl_newSViv�, declared with attribute warn_unused_result
mysql.xs:642: warning: ignoring return value of �Perl_newSViv�, declared with attribute warn_unused_result
mysql.xs:645: warning: ignoring return value of �Perl_newSVpv�, declared with attribute warn_unused_result
Library for DBD-mysql-3.0002.tar.gz is OK!
All done!

[root@localhost slimserver]# ./slimserver.pl 
The following modules failed to load: DBD::mysql

To download and compile them, please run: /usr/local/slimserver/Bin/build-perl-modules.pl DBD::mysql

Exiting..
[root@localhost slimserver]# perl -V | head -4
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
  Platform:
    osname=linux, osvers=2.6.9-22.18.bz155725.elsmp, archname=i386-linux-thread-multi
    uname='linux hs20-bc1-6.build.redhat.com 2.6.9-22.18.bz155725.elsmp #1 smp thu nov 17 15:34:08 est 2005 i686 i686 i386 gnulinux '
[root@localhost slimserver]# find . | grep DBD
./CPAN/DBI/DBD.pm
./CPAN/DBI/DBD
./CPAN/DBI/DBD/Metadata.pm
./CPAN/DBD
./CPAN/DBD/mysql.pm
./CPAN/DBD/mysql
./CPAN/DBD/mysql/GetInfo.pm
./CPAN/DBD/Sponge.pm
./CPAN/arch/5.8.8/i386-linux-thread-multi/auto/DBD
./CPAN/arch/5.8.8/i386-linux-thread-multi/auto/DBD/mysql
./CPAN/arch/5.8.8/i386-linux-thread-multi/auto/DBD/mysql/mysql.so
./CPAN/arch/5.8/i386-linux-thread-multi/auto/DBD
./CPAN/arch/5.8/i386-linux-thread-multi/auto/DBD/mysql
./CPAN/arch/5.8/i386-linux-thread-multi/auto/DBD/mysql/mysql.so
./CPAN/arch/5.8/i386-linux-thread-multi/auto/DBD/mysql/mysql.bs
[root@localhost slimserver]# 
Comment 7 Kevin Pearsall 2006-09-15 16:57:31 UTC
Andy discovered this is probably related to selinux.
Comment 8 Kevin Pearsall 2006-09-15 17:04:26 UTC
disabled selinux and fc5 works now.  selinux was already disabled on my fc2 machine at home.  sorry about so many notes that were related to a completely different herring.
Comment 9 Blackketter Dean 2006-09-16 19:32:26 UTC
So, is there a fix to make it work with selinux turned on, or is this just something we need to document?  Is there a fix for 6.5?
Comment 10 Dan Sully 2006-09-17 11:10:57 UTC
At one point the RPM worked fine under SELinux - what does the SELinux log file say?

Also - we need to set a limit as to how far back we will support $LinuxDistribution.

FC1 & FC2 have been end of lifed. We as a company don't have the support resources to deal with all these different Linux distributions, especially if we want a YUM based RPM install that has the same ease as the Debian package.

http://www.fedoralegacy.org/

FC4 has even moved to maintaining status, now that FC6 is about to be released.

I know that Al Pacifico, who is working on a nice RPM package for FC5, isn't paying any attention to anything less than FC5, nor should he.

The workaround/alternative for people who can't or won't upgrade is to use the tarball.
Comment 11 Robin Bowes 2006-09-17 16:53:13 UTC
I too use FC5 and found that the SELinux issue was due to slimserver loading Expat.pm and Expat.so from the slimserver directory. I found that if I removed these files slimserver uses the system-installed Expat library and works fine.
So, this comes back to a "bug" I've discussed previously with Dan that slimserver uses the local modules even if the module is installed system-wide.
NB. This was all done in April 2006 - I've not tried it recently.
Comment 12 Blackketter Dean 2006-09-18 11:27:30 UTC
Kevin: do we need to fix something here for 6.5.1 or is this just a FAQ/Wiki issue?
Comment 13 Kevin Pearsall 2006-09-18 11:42:43 UTC
I think this needs to be addressed.  If the RPM installs but *will not work*, that's a problem.  It either needs to be messaged that it will not work, or be made to work.

Regarding this:
*** The workaround/alternative for people who can't or won't upgrade is to use the tarball. ***

That's a support NIGHTMARE.
Comment 14 Kevin Pearsall 2006-09-18 11:43:54 UTC
regarding the selinux log file, you can see it on the machine i mentioned in my earlier notes...
Comment 15 Robin Bowes 2006-09-18 12:00:26 UTC
Kevin,

Can you attach the log to this bug - I don't have access to your machine :)

R.
Comment 16 Kevin Pearsall 2006-09-18 14:37:53 UTC
stupid q...not very familiar with selinux, where does it ordinarily log to?  i see a fair amount in /var/log/messages...but nothing that seems related.
Comment 17 Dan Sully 2006-09-18 14:41:23 UTC
Subject: Re:  RPM deps are broken - fedora core 2

/var/log/secure I believe

Comment 18 Kevin Pearsall 2006-09-18 14:45:58 UTC
not really seeing anything relevant in there except for the stuff i had to do when i tried to get things working manually...(this is from fc5 parallel):

Sep 15 13:28:25 localhost sshd[1590]: Server listening on :: port 22.
Sep 15 13:28:25 localhost sshd[1590]: error: Bind to port 22 on 0.0.0.0 failed: Address already in use.
Sep 15 13:28:27 localhost runuser: pam_unix(runuser:session): session opened for user slimserver by (uid=0)
Sep 15 13:28:31 localhost runuser: pam_unix(runuser:session): session closed for user slimserver
Sep 15 13:29:58 localhost gdm[1921]: pam_unix(gdm:session): session opened for user root by (uid=0)
Sep 15 13:31:43 localhost userdel[2144]: delete user `slimserver' 
Sep 15 13:31:43 localhost userdel[2144]: remove group `slimserver' 
Sep 15 13:34:23 localhost groupadd[2189]: new group: name=slimserver, GID=503
Sep 15 13:34:23 localhost useradd[2190]: new user: name=slimserver, UID=503, GID=503, home=/usr/local/slimserver, shel
l=/sbin/nologin 
Sep 15 13:34:23 localhost useradd[2190]: failed adding user `slimserver', data deleted
Sep 15 13:39:55 localhost groupdel[2271]: remove group `slimserver' 
Sep 15 13:40:37 localhost groupadd[2302]: new group: name=slimserver, GID=503
Sep 15 13:40:57 localhost useradd[2305]: new user: name=slimserver, UID=503, GID=503, home=/usr/local/slimserver, shel
l=/bin/bash
Sep 15 13:41:10 localhost runuser: pam_unix(runuser:session): session opened for user slimserver by (uid=0)
Sep 15 13:41:13 localhost runuser: pam_unix(runuser:session): session closed for user slimserver
Sep 15 14:33:37 localhost su: pam_unix(su:session): session opened for user beagleindex by (uid=0)
Sep 15 14:33:44 localhost su: pam_unix(su:session): session closed for user beagleindex 
Sep 15 14:33:44 localhost su: pam_unix(su:session): session opened for user beagleindex by (uid=0)
Sep 15 14:35:36 localhost su: pam_unix(su:session): session closed for user beagleindex
Comment 19 Dan Sully 2006-09-18 15:54:56 UTC
Fixed in change 9852
Comment 20 Robin Bowes 2006-09-18 17:20:11 UTC
SELinux messages are logged in /var/log/audit/audit.log, but only if you have the "audit" RPM installed.

[root@horse ~]# rpm -q audit
audit-1.1.5-1
[root@horse ~]# chkconfig auditd --list
auditd          0:off   1:off   2:on    3:on    4:on    5:on    6:off
[root@horse ~]# service auditd status
auditd (pid 2382) is running...

[root@horse ~]# audit2allow -i /var/log/audit/audit.log  -l
allow hald_t file_t:file { getattr ioctl };
allow prelink_t user_home_t:file relabelto;
allow unconfined_execmem_t self:process execheap;