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 > CentOS > CentOS

 
 
LinkBack Thread Tools
 
Old 02-26-2012, 06:05 PM
Frank Cox
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

On Sun, 26 Feb 2012 19:45:54 +0100
Michael Lampe wrote:

> I'm building my own openmpi packages derived from upstream SRPMs.
>
> Problem: The ones built with Intel's compiler can only be installed by
> force, because Intel doesn't register their provided libs with rpm.
>
> Any idea how this can be done?

A dependency is supposed to be something that's required for a program to work.
Removing the dependency from the rpm won't magically make a program work if it
really does require the functionality provided by that dependency.

If it's not actually required for some reason, then install the .src.rpm, edit
the spec file to remove or modify the dependency list, and compile new source
and binary rpms.

--
MELVILLE THEATRE ~ Real D 3D Digital Cinema ~ www.melvilletheatre.com
www.creekfm.com - FIFTY THOUSAND WATTS of POW WOW POWER!
_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 
Old 02-26-2012, 06:14 PM
Michael Lampe
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

Frank Cox wrote:

> A dependency is supposed to be something that's required for a program to work.
> Removing the dependency from the rpm won't magically make a program work if it
> really does require the functionality provided by that dependency.

It's there.

Just not registered with rpm. -- Intel's fault, I cannot do anything
about it.

I'm heading for a compromise ...
_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 
Old 02-26-2012, 06:24 PM
Frank Cox
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

On Sun, 26 Feb 2012 20:14:50 +0100
Michael Lampe wrote:

> Frank Cox wrote:
>
> > A dependency is supposed to be something that's required for a program to
> > work. Removing the dependency from the rpm won't magically make a program
> > work if it really does require the functionality provided by that
> > dependency.
>
> It's there.
>
> Just not registered with rpm. -- Intel's fault, I cannot do anything
> about it.

Then the solution I posted will solve the problem.

The easiest way to do it is this:

yum install rpmdevtools
rpmdev-setuptree
rpm -i nameofsrcrpm.src.rpm
cd ~/rpmbuild/SPECS
vi nameofspecfile.spec

Edit the dependency list to suit.

rpmbuild -ba nameofspecfile.spec

That's it. You now have a new .src.rpm and binary rpm.


--
MELVILLE THEATRE ~ Real D 3D Digital Cinema ~ www.melvilletheatre.com
www.creekfm.com - FIFTY THOUSAND WATTS of POW WOW POWER!
_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 
Old 02-26-2012, 06:39 PM
Michael Lampe
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

Frank Cox wrote:

> Edit the dependency list to suit.

Maybe I was too dumb to properly explain it:

The Intel stuff is there implicitly. And it _is_ needed. Both for
building and then running.

But it's not registered with rpm by Intel!

So I _can_ build, but the resulting RPM cannot be installed -- if not
forced. (No problems then as everything _is_ there.)

The compromise I see is removing these explicit dependencies. They are
fulfilled, but not formally available.
_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 
Old 02-26-2012, 06:46 PM
Ljubomir Ljubojevic
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

On 02/26/2012 08:39 PM, Michael Lampe wrote:
> Frank Cox wrote:
>
>> Edit the dependency list to suit.
>
> Maybe I was too dumb to properly explain it:
>
> The Intel stuff is there implicitly. And it _is_ needed. Both for
> building and then running.
>
> But it's not registered with rpm by Intel!
>
> So I _can_ build, but the resulting RPM cannot be installed -- if not
> forced. (No problems then as everything _is_ there.)
>
> The compromise I see is removing these explicit dependencies. They are
> fulfilled, but not formally available.

I totally lost you. Please provide specifics, what package, is it in rpm
or not, details please, so we do not chase out own tails.



--

Ljubomir Ljubojevic
(Love is in the Air)
PL Computers
Serbia, Europe

Google is the Mother, Google is the Father, and traceroute is your
trusty Spiderman...
StarOS, Mikrotik and CentOS/RHEL/Linux consultant
_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 
Old 02-26-2012, 07:05 PM
Michael Lampe
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

Ljubomir Ljubojevic wrote:

> I totally lost you.

No problem. Play the game of chess like your namesake did so well.

> Please provide specifics, what package, is it in rpm
> or not, details please, so we do not chase out own tails.

Gimme a trick: How to unregister an implicit but formally unavailable
runtime dependency in a spec file?

It's there at build time and therfore automatically used. Package builds
fine. But it can only be installed by force, because the implicit
dependency is explicitly recorded in the RPM. I want to get rid of that,
because fixing Intel's stuff is not an option.

Still unclear??


_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 
Old 02-26-2012, 07:18 PM
Frank Cox
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

On Sun, 26 Feb 2012 21:05:22 +0100
Michael Lampe wrote:

> Gimme a trick: How to unregister an implicit but formally unavailable
> runtime dependency in a spec file?

I've given you the solution twice. Here is a more detailed description of the
exact lines that you need to edit in the spec file:

http://www.rpm.org/max-rpm/s1-rpm-depend-manual-dependencies.html

--
MELVILLE THEATRE ~ Real D 3D Digital Cinema ~ www.melvilletheatre.com
www.creekfm.com - FIFTY THOUSAND WATTS of POW WOW POWER!
_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 
Old 02-26-2012, 07:29 PM
Michael Lampe
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

Frank Cox wrote:

>> Gimme a trick: How to unregister an implicit but formally unavailable
>> runtime dependency in a spec file?
>
> I've given you the solution twice. Here is a more detailed description of the
> exact lines that you need to edit in the spec file:
>
> http://www.rpm.org/max-rpm/s1-rpm-depend-manual-dependencies.html

We are talking about different things:

My stuff is linked against 'libfoo'. When the package is finally build,
it records this depedency because of that. Now this package requires
libfoo to be installed. It's there but not registered with rpm!

That's what I want to get rid of. Something like 'Unrequire' perhaps. Or
another trick: IIRC, at some time taking the x bit from libs achieved
that, but it's not working anymore since quite some time.



_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 
Old 02-26-2012, 07:37 PM
Les Mikesell
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

On Sun, Feb 26, 2012 at 1:39 PM, Michael Lampe
<lampe@gcsc.uni-frankfurt.de> wrote:
> Frank Cox wrote:
>
>> Edit the dependency list to suit.
>
> Maybe I was too dumb to properly explain it:
>
> The Intel stuff is there implicitly. And it _is_ needed. Both for
> building and then running.
>
> But it's not registered with rpm by Intel!
>
> So I _can_ build, but the resulting RPM cannot be installed -- if not
> forced. (No problems then as everything _is_ there.)
>
> The compromise I see is removing these explicit dependencies. They are
> fulfilled, but not formally available.

I haven't tried this, but I would expect it to be possible to build a
dummy package that claims to supply the dependency you need (which
might itself depend on whatever the intel package does claim to
provide, or just check and print an error message if it doesn't see
the files in the right place).

--
Les Mikesell
lesmikesell@gmail.com
_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 
Old 02-26-2012, 07:38 PM
Antonio da Silva Martins Junior
 
Default Is there a way to _remove_ dependencies from an RPM built from source?

----- "Michael Lampe" <lampe@gcsc.uni-frankfurt.de> escreveu:

> De: "Michael Lampe" <lampe@gcsc.uni-frankfurt.de>
> Para: "CentOS mailing list" <centos@centos.org>
> Enviadas: Domingo, 26 de Fevereiro de 2012 17:29:05 (GMT-0300) Auto-Detected
> Assunto: Re: [CentOS] Is there a way to _remove_ dependencies from an RPM built from source?
>
> Frank Cox wrote:
>
> >> Gimme a trick: How to unregister an implicit but formally
> > unavailable runtime dependency in a spec file?
> >
> > I've given you the solution twice. Here is a more detailed
> > description of the
> > exact lines that you need to edit in the spec file:
> >
> > http://www.rpm.org/max-rpm/s1-rpm-depend-manual-dependencies.html
>
> We are talking about different things:
>
> My stuff is linked against 'libfoo'. When the package is finally
> build, it records this depedency because of that. Now this package requires
> libfoo to be installed. It's there but not registered with rpm!
>
> That's what I want to get rid of. Something like 'Unrequire' perhaps.
> Or another trick: IIRC, at some time taking the x bit from libs achieved
> that, but it's not working anymore since quite some time.


Ok,

Have you tried to make a fake src.rpm package that "provides" this 'libfoo' and
install it ? It didn't need to install anything just tell to the rpm library that it
"provides" 'libfoo'.

Another way is to just force the install, but, doing it you will have some problems
during updates.

Antonio Jr.

--
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Antonio S. Martins Jr. - Support Analyst | "Only The Shadow Knows |
| Universidade Estadual de Maringá - Brasil| what evil lurks in the |
| NPD - Núcleo de Processamento de Dados | Heart of Men!" |
| E-Mail: asmartins@uem.br / shadow@uem.br | !!! Linux User: 52392 !!! |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
"Real Programmers don’t need comments — the code is obvious."

--
Esta mensagem foi verificada pelo sistema de antivirus e
acredita-se estar livre de perigo.

_______________________________________________
CentOS mailing list
CentOS@centos.org
http://lists.centos.org/mailman/listinfo/centos
 

Thread Tools




All times are GMT. The time now is 01:04 AM.

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