As mcd said, You can use the --test flag on the rpm command.
Here's an example showing UltraEdit.
Code:
[root@athlonz ~]# rpm -ivf --test /root/Download/UltraEdit-1.0-0.5.fc11.x86_64.rpm
error: Failed dependencies:
libboost_regex-mt.so.4()(64bit) is needed by UltraEdit-1.0-0.5.fc11.x86_64
libstdc++.so.6(GLIBCXX_3.4.11)(64bit) is needed by UltraEdit-1.0-0.5.fc11.x86_64
[root@athlonz ~]#
But that will tell you just what is immediately missing. If one of the missing dependencies in turn has a missing dependency you won't know that until you add that depend rpm file to the rpm command line (you can string out all of the rpm's and install them all together as one 'job'). This situation of iteratively running the rpm command, downloading the next missing dependency and repeating is known as dependency hell.
A better approach is to install using YUM (if you can). (FreeRadius is available via YUM on Fedora 10. It's probably available on Fedora 9, as well.)
Code:
[root@athlonz ~]# yum search FreeRadius
Loaded plugins: refresh-packagekit
fedora | 2.8 kB 00:00
livna | 2.4 kB 00:00
rpmfusion-free | 2.7 kB 00:00
rpmfusion free-updates | 2.8 kB 00:00
rpmfusion-nonfree | 2.7 kB 00:00
rpmfusion-nonfree-upda | 2.8 kB 00:00
updates | 3.4 kB 00:00
======================== Matched: FreeRadius =============================
freeradius.x86_64 : High-performance and highly configurable free RADIUS server
freeradius-devel.i386 : FreeRADIUS Development Files
freeradius-devel.x86_64 : FreeRADIUS Development Files
freeradius-dialupadmin.x86_64 : Web management for FreeRADIUS
freeradius-dialupadmin-ldap.x86_64 : LDAP component of the dialupadmin FreeRADIUS Web management tool
freeradius-dialupadmin-mysql.x86_64 : MySQL component of the dialupadmin FreeRADIUS Web management tool
freeradius-dialupadmin-postgresql.x86_64 : Postgresql component of the dialupadmin FreeRADIUS Web management tool
freeradius-krb5.x86_64 : Kerberos 5 support for freeradius
freeradius-ldap.x86_64 : LDAP support for freeradius
freeradius-libs.x86_64 : FreeRADIUS shared libraries
freeradius-mysql.x86_64 : MySQL support for freeradius
freeradius-perl.x86_64 : Perl support for freeradius
freeradius-postgresql.x86_64 : postgresql support for freeradius
freeradius-python.x86_64 : Python support for freeradius
freeradius-unixODBC.x86_64 : unixODBC support for freeradius
freeradius-utils.x86_64 : FreeRADIUS utilities
tinyca2.noarch : Simple graphical userinterface to manage a small CA
[root@athlonz ~]# cat /etc/*ease
Fedora release 10 (Cambridge)
Fedora release 10 (Cambridge)
Fedora release 10 (Cambridge)
[root@athlonz ~]#
YUM has the added advantage of downloading all of the dependent packages automatically. (It has the disadvantage of not having a built-in 'test' option.
Do a 'yum search FreeRadius' to make sure it's available; then you can 'yum install FreeRadius'.
You can supply a local file to YUM instead of using one out of the online repository... but you might end up with mismatched levels. The rpm I have (using my UltraEdit rpm as a example) is for fc11; I'm fc10. Messy.
Code:
[root@athlonz ~]# yum install /root/Download/UltraEdit-1.0-0.5.fc11.x86_64.rpm
Loaded plugins: refresh-packagekit
Setting up Install Process
Examining /root/Download/UltraEdit-1.0-0.5.fc11.x86_64.rpm: UltraEdit-1.0-0.5.fc11.x86_64
Marking /root/Download/UltraEdit-1.0-0.5.fc11.x86_64.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package UltraEdit.x86_64 0:1.0-0.5.fc11 set to be updated
--> Processing Dependency: libstdc++.so.6(GLIBCXX_3.4.11)(64bit) for package: UltraEdit-1.0-0.5.fc11.x86_64
--> Processing Dependency: libboost_regex-mt.so.4()(64bit) for package: UltraEdit-1.0-0.5.fc11.x86_64
--> Finished Dependency Resolution
UltraEdit-1.0-0.5.fc11.x86_64 from /UltraEdit-1.0-0.5.fc11.x86_64 has depsolving problems
--> Missing Dependency: libboost_regex-mt.so.4()(64bit) is needed by package UltraEdit-1.0-0.5.fc11.x86_64 (/UltraEdit-1.0-0.5.fc11.x86_64)
UltraEdit-1.0-0.5.fc11.x86_64 from /UltraEdit-1.0-0.5.fc11.x86_64 has depsolving problems
--> Missing Dependency: libstdc++.so.6(GLIBCXX_3.4.11)(64bit) is needed by package UltraEdit-1.0-0.5.fc11.x86_64 (/UltraEdit-1.0-0.5.fc11.x86_64)
Error: Missing Dependency: libboost_regex-mt.so.4()(64bit) is needed by package UltraEdit-1.0-0.5.fc11.x86_64 (/UltraEdit-1.0-0.5.fc11.x86_64)
Error: Missing Dependency: libstdc++.so.6(GLIBCXX_3.4.11)(64bit) is needed by package UltraEdit-1.0-0.5.fc11.x86_64 (/UltraEdit-1.0-0.5.fc11.x86_64)
You could try using --skip-broken to work around the problem
You could try running: package-cleanup --problems
package-cleanup --dupes
rpm -Va --nofiles --nodigest
[root@athlonz ~]#