You are not logged in.

#1 2010-03-22 01:03:08

iamybj
Member
Registered: 2007-05-08
Posts: 54

Does arch install library and header files into system when using abs?

In traditional make way, when compiling a package, I must install some library or header file or tool packages to satisfy its depends, but after compilation, I do "make install", and run it. At runtime, library and header file and tool packages are not needed....

This make a lot of unuseful packages are left in the system.....

In arch linux , when I using abs to make a package, does these packages are left in the system ?

How abs separates the compile-time depends and the runtime depends ????

Last edited by iamybj (2010-03-22 01:24:57)

Offline

#2 2010-03-22 01:58:03

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: Does arch install library and header files into system when using abs?

The PKGBUILD has a depends array and a makedepends array. Anything that's required at runtime goes in the depends array, and must be installed for the application to run successfully. Anything that's only required at buildtime foes in the makedepends array, and can be removed from the system after the application has been built.

man PKGBUILD and various wiki pages for more details.

Offline

#3 2010-03-22 02:41:17

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,672
Website

Re: Does arch install library and header files into system when using abs?

Also, Arch does not split its packages into binaries, libraries, headers etc like some other distros do.

Offline

#4 2010-03-22 03:07:31

iamybj
Member
Registered: 2007-05-08
Posts: 54

Re: Does arch install library and header files into system when using abs?

tomk wrote:

The PKGBUILD has a depends array and a makedepends array. Anything that's required at runtime goes in the depends array, and must be installed for the application to run successfully. Anything that's only required at buildtime foes in the makedepends array, and can be removed from the system after the application has been built.

man PKGBUILD and various wiki pages for more details.

Anything that's only required at buildtime foes in the makedepends array, and can be removed from the system after the application has been built.
==================
Who remove them ? user or the abs ??


I think the best method is file dependence , not package dependence.....

Software is arranged by package. but its dependence is file. When Install a package, pacman check its file dependence, and install the packages which include those files....

If a  not explicit installed package 's file does not required by any other packages , it can be removed automatically !

In this situation ,pacman can find packages that not needed after compilation, and remove them.

Last edited by iamybj (2010-03-22 03:15:06)

Offline

#5 2010-03-22 03:13:16

some-guy94
Member
Registered: 2009-08-15
Posts: 360

Re: Does arch install library and header files into system when using abs?

iamybj wrote:
tomk wrote:

The PKGBUILD has a depends array and a makedepends array. Anything that's required at runtime goes in the depends array, and must be installed for the application to run successfully. Anything that's only required at buildtime foes in the makedepends array, and can be removed from the system after the application has been built.

man PKGBUILD and various wiki pages for more details.

Anything that's only required at buildtime foes in the makedepends array, and can be removed from the system after the application has been built.
==================
Who remove them ? user or the abs ??/

Headers are only removed in the kernel26 packages since they are huge.
Other packages keep the headers.

Makepkg automatically removes libtool files though.

Offline

#6 2010-03-22 03:30:19

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,672
Website

Re: Does arch install library and header files into system when using abs?

iamybj wrote:

Who remove them ? user or the abs ??

ABS does not install them so I doubt it will remove them....  It is up to you to remove them, although makepkg does have options to let you do it automatically.  Read the man page.


iamybj wrote:

I think the best method is file dependence , not package dependence.....

Arch handles dependencies by the package.  Of course, pacman could handle that if we wanted it to, but we do not.

Offline

#7 2010-03-22 04:00:04

iamybj
Member
Registered: 2007-05-08
Posts: 54

Re: Does arch install library and header files into system when using abs?

why you do not ?

Offline

#8 2010-03-22 04:05:04

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,672
Website

Re: Does arch install library and header files into system when using abs?

Because it is a waste of time.  If a file is in a package, it makes no difference to depend on the package instead of the file.  In fact, it makes packaging a whole lot easier.

Offline

#9 2010-03-22 05:03:59

iamybj
Member
Registered: 2007-05-08
Posts: 54

Re: Does arch install library and header files into system when using abs?

you can cut packages to files....

the arch repos do not need to rebuild, just modify pacman, and decompress all the pkg.tar.gz files.....

the package name is still reserved ,but became a group name... in other words, all software name is a group name...

in fact when do "./configure...", the autoconf  only check file dependence .....

Last edited by iamybj (2010-03-22 05:08:36)

Offline

#10 2010-03-22 05:17:54

Allan
Pacman
From: Brisbane, AU
Registered: 2007-06-09
Posts: 11,672
Website

Re: Does arch install library and header files into system when using abs?

I am quite sure I speak for all the Arch developers when I say that is never going to happen.

Offline

#11 2010-03-22 06:48:26

tomk
Forum Fellow
From: Ireland
Registered: 2004-07-21
Posts: 9,839

Re: Does arch install library and header files into system when using abs?

iamybj - as I mentioned in another of your threads, if you think pacman needs additional functionality like this, post a feature request in the bugtracker, with a patch if possible.

Offline

#12 2010-03-22 21:01:05

linas
Member
Registered: 2010-03-06
Posts: 46

Re: Does arch install library and header files into system when using abs?

If you are never going to use the headers, you can place a cron to rm -r /usr/include/*

You may find having to reinstall them earlier than you expected, though.

Offline

#13 2010-03-23 15:40:56

Profjim
Member
From: NYC
Registered: 2008-03-24
Posts: 658

Re: Does arch install library and header files into system when using abs?

(Ignoring the stuff about file vs package dependencies.)

Read the makepkg manpage: where before you did

makepkg

do instead

makepkg -s -r

.

Last edited by Profjim (2010-03-23 15:41:12)

Offline

Board footer

Powered by FluxBB