FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Redhat > RPM Package Manager

 
 
LinkBack Thread Tools
 
Old 01-08-2008, 12:26 PM
"ELASRI Patrice SOFRECOM"
 
Default Failed dependencies on /usr

Hi,


I have built a package located by default under /usr/local.

When I try to install it, I’m returned the following error :


$ rpm -U sof-u-2.1.2-1.noarch.rpm

error: Failed dependencies:

******* /usr is needed by sof-u-2.1.2-1.noarch


If I relocate the package, I’m returned the following error,
with dependencies on original paths :


$ rpm -U --define "_autorelocate_path %{nil}"
--prefix /usr/local/sofrecom sof-u-2.1.2-1.noarch.rpm

error: Failed dependencies:

******* /usr is needed by sof-u-2.1.2-1.noarch

******* /usr/local is needed by sof-u-2.1.2-1.noarch

******* /usr/local/etc is needed by sof-u-2.1.2-1.noarch

******* ...


The _autorelocate_path macro setting is necessary. Otherwise, the package
is installed under /emul/noarch-hpux11.23
!!!


I’m using rpm 4.4.7 which I have built on HPUX 11.23 / ia64.
The RPM database was initialised with a pseudo package providing usual
interpreters ( /bin/sh, /bin/ksh, /bin/perl, … ).


Regards,


mailto: patrice.elasri@sofrecom.com

phone: +33 1
43985883







_______________________________________________
Rpm-list mailing list
Rpm-list@redhat.com
https://www.redhat.com/mailman/listinfo/rpm-list
 
Old 01-08-2008, 01:00 PM
"Jeff Johnson"
 
Default Failed dependencies on /usr

On Jan 8, 2008 8:26 AM, ELASRI Patrice SOFRECOM <patrice.elasri@sofrecom.com> wrote:


















Hi,


I have built a package located by default under /usr/local.

When I try to install it, I'm returned the following error :


$
rpm -U sof-u-2.1.2-1.noarch.rpm

error: Failed dependencies:

******* /usr is needed by sof-u-2.1.2-1.noarch


If I relocate the package, I'm returned the following error,
with dependencies on original paths :


$
rpm -U --define "_autorelocate_path %{nil}"
--prefix /usr/local/sofrecom sof-u-2.1.2-1.noarch.rpm

error: Failed dependencies:

******* /usr is needed by sof-u-2.1.2-1.noarch

******* /usr/local is needed by sof-u-2.1.2-1.noarch

******* /usr/local/etc is needed by sof-u-2.1.2-1.noarch

******* ...
In
rpm-4.4.7 and later, every file depends on its parent directory.All of the dependency failures you are seeing are parent directories
that aren't packaged.There is a --noparentdirs that disables the dependencies on parent
directories.Another easy persistent fix for your specific problem(s) is
** *mkdir -p /etc/rpm/sysinfo** *echo "/usr" >> /etc/rpm/sysinfoDirnames** *echo "/usr/local" >> /etc/rpm/sysinfo/Dirnames
** *echo "/usr/local/etc" >> /etc/rpm/sysinfo/Dirnames** *...
There is also ( in 4.4.7+?, I fergit) a --orphandirs*popt alias that willdisplay all directories that are not packaged:
** *rpm -Va --nofiles --orphandirsthat should generate a sort'd uniq'd list of directories that are not packaged.




The _autorelocate_path

macro setting is necessary. Otherwise, the package
is installed under /emul/noarch-hpux11.23
!!!


I'm using rpm 4.4.7 which I have built on HPUX 11.23 / ia64.
The RPM database was initialised with a pseudo package providing usual
interpreters ( /bin/sh, /bin/ksh, /bin/perl, … ).
Ah ia64 multilib.
Expect some problems is all that I can say. The implementation of multilib on ia64in rpm was done in like 8 hours on a borrowed ia64 developer's box and has never beenproperly QA'd to my knowledge.
SELinux, in particular, is likely to be extremely weird on a multilib/ia64 boxbecause of the /emul/noarch-hpux11.23 prefix breaking the lookup of
file contexts from SELinux configuration.I'll be happy to help you sort out any/all multilib/ia64.
Likely <rpm-devel@rpm5.org>*is a better place to report issues, as only the few & the brave are attempting*HP-UX multilib/ia64 relocated installs with rpm-4.4.7+.
73 de Jeff
_______________________________________________
Rpm-list mailing list
Rpm-list@redhat.com
https://www.redhat.com/mailman/listinfo/rpm-list
 
Old 01-11-2008, 08:03 AM
"ELASRI Patrice SOFRECOM"
 
Default Failed dependencies on /usr

-----Message d'origine-----

De*:
rpm-list-bounces@redhat.com [mailto:rpm-list-bounces@redhat.com] De la part de Jeff Johnson

Envoyé*: mardi 8 janvier 2008
15:01

À*: RPM Package Manager

Objet*: Re: Failed
dependencies on /usr


*


*




On Jan 8, 2008 8:26 AM,
ELASRI Patrice SOFRECOM <patrice.elasri@sofrecom.com>
wrote:






Hi,


I have built a
package located by default under /usr/local.

When I try to install it, I'm returned the following error :


$ rpm -U sof-u-2.1.2-1.noarch.rpm

error: Failed dependencies:

******* /usr is needed by
sof-u-2.1.2-1.noarch


If I relocate
the package, I'm returned the following error, with dependencies on original
paths :


$ rpm -U --define
"_autorelocate_path %{nil}" --prefix /usr/local/sofrecom
sof-u-2.1.2-1.noarch.rpm

error: Failed dependencies:

******* /usr is needed by
sof-u-2.1.2-1.noarch

******* /usr/local is needed by
sof-u-2.1.2-1.noarch

******* /usr/local/etc is needed by
sof-u-2.1.2-1.noarch

******* ...








*






In rpm-4.4.7 and later, every
file depends on its parent directory.






*






All of the dependency failures
you are seeing are parent directories






that aren't packaged.






*






There is a --noparentdirs that
disables the dependencies on parent






directories.






*






Another easy persistent fix for
your specific problem(s) is






** *mkdir -p
/etc/rpm/sysinfo






** *echo
"/usr" >> /etc/rpm/sysinfoDirnames






** *echo
"/usr/local" >> /etc/rpm/sysinfo/Dirnames






** *echo
"/usr/local/etc" >> /etc/rpm/sysinfo/Dirnames






** *...


*


Thanks for these
information. Is there a document which talks about it ?

I tried the –noparentdirs option and it works fine.






*






There
is also ( in 4.4.7+?, I fergit) a --orphandirs*popt
alias that will






display all directories
that are not packaged:






** *rpm
-Va --nofiles --orphandirs






that should generate a
sort'd uniq'd list of directories that are not packaged.










The _autorelocate_path macro
setting is necessary. Otherwise, the package is installed under /emul/noarch-hpux11.23 !!!


I'm using rpm
4.4.7 which I have built on HPUX 11.23 / ia64. The RPM database was initialised
with a pseudo package providing usual interpreters ( /bin/sh, /bin/ksh,
/bin/perl, … ).










*






Ah ia64 multilib.


*






Expect some
problems is all that I can say. The implementation of multilib on ia64






in rpm was done in like 8
hours on a borrowed ia64 developer's box and has never been






properly QA'd to my
knowledge.






*






I’m not so aware
about the rpm developments*; I’m just an rpm user. What do you means
by multilib ?

About the _autorelocate_path
macro setting, I noticed that this one is mandatory when the –prefix option is used, what ever the
package architecture. Otherwise, the package is installed under /emul/noarch-hpux11.23, or even under /emul/ia64-hpux11.23 for the architecture
dependents packages built on ia64.


*


SELinux, in
particular, is likely to be extremely weird on a multilib/ia64 box






because of the
/emul/noarch-hpux11.23 prefix breaking the lookup of






file contexts from
SELinux configuration.






*






I'll be happy to help you
sort out any/all multilib/ia64.






*






Likely <rpm-devel@rpm5.org>*is a better
place to report issues, as only the few & the brave are
attempting*HP-UX multilib/ia64 relocated installs with rpm-4.4.7+.


*


If you are interested on,
I can report you what I did for building and installing RPM on HP-UX.






*






73 de Jeff











_______________________________________________
Rpm-list mailing list
Rpm-list@redhat.com
https://www.redhat.com/mailman/listinfo/rpm-list
 
Old 01-11-2008, 10:35 AM
"Jeff Johnson"
 
Default Failed dependencies on /usr

On 1/11/08, ELASRI Patrice SOFRECOM <patrice.elasri@sofrecom.com> wrote:




















Thanks for these
information. Is there a document which talks about it ?

I tried the –noparentdirs
option and it works fine.

I'm not sure what else you want documented. The rule** *Every file depends on its parent directory.seems pretty obvious and unambiguous to me.
The issues that I'm aware of are solely with compatibility,and the --noparentdirs/--parentdirs options are mechanism only, theycannot solve compatibility issues that depend on distro packaging policy.
There has always been a need in rpm to identify directories thatare not contained in packages, and are left behind when packagesare erased. There is also the need to add SELinux file contexts
to all created files/directories correctly, which is most rationally doneif all directories are contained in some package.

*






There
is also ( in 4.4.7+?, I fergit) a --orphandirs*popt
alias that will






display all directories
that are not packaged:






** *rpm
-Va --nofiles --orphandirs






that should generate a
sort'd uniq'd list of directories that are not packaged.










The _autorelocate_path
macro
setting is necessary. Otherwise, the package is installed under /emul/noarch-hpux11.23 !!!


I'm using rpm
4.4.7 which I have built on HPUX 11.23 / ia64. The RPM database was initialised
with a pseudo package providing usual interpreters ( /bin/sh, /bin/ksh,
/bin/perl, … ).










*






Ah ia64 multilib.



*






Expect some
problems is all that I can say. The implementation of multilib on ia64






in rpm was done in like 8
hours on a borrowed ia64 developer's box and has never been






properly QA'd to my
knowledge.






*







I'm not so aware
about the rpm developments*; I'm just an rpm user. What do you means
by multilib ?

About the _autorelocate_path
macro setting, I noticed that this one is mandatory when the –prefix option is used, what ever the
package architecture. Otherwise, the package is installed under /emul/noarch-hpux11.23, or even under /emul/ia64-hpux11.23 for the architecture
dependents packages built on ia64.



*

The term "multilib" comes from gcc and describes conventions for installingexecutables/libraries*for multiple platforms on a *system.
The functionality was added to rpm on ia64 to permit installing ix86as well as ia64 packages. The _autorelocate_path variable is usedto configure the prefix of the path for the non-native executables.


SELinux, in
particular, is likely to be extremely weird on a multilib/ia64 box






because of the
/emul/noarch-hpux11.23 prefix breaking the lookup of






file contexts from
SELinux configuration.






*






I'll be happy to help you
sort out any/all multilib/ia64.






*






Likely <rpm-devel@rpm5.org
>*is a better
place to report issues, as only the few & the brave are
attempting*HP-UX multilib/ia64 relocated installs with rpm-4.4.7+.



*



If you are interested on,
I can report you what I did for building and installing RPM on HP-UX.

I'd be interested in any additional patches that are needed; <rpm-devel@rpm5.org>is the better place to send patches.
73 de Jeff
_______________________________________________
Rpm-list mailing list
Rpm-list@redhat.com
https://www.redhat.com/mailman/listinfo/rpm-list
 

Thread Tools




All times are GMT. The time now is 01:02 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org