You are not logged in.

#1 2006-07-19 04:08:36

vasdee
Member
Registered: 2006-07-15
Posts: 55

source development packages

I've recently switched from debian and am still learning the secrets of pacman so i hope someone can clear up a few questions for me.

In debian, if you want to develop an app that links to a external library, say for instance guichan (a c++/SDL gui toolkit for games) i would normally apt-get the guichan-dev package which would give me the required headers to include in my app. In Arch, I've installed the guichan binary however my app couldn't find the required guichan headers, i did some investigating but couldn't find anything so i reinstalled the guichan package and there they were there and my app compiles.

What i'm getting at here is given a package, is there an equivalent dev package available to provide headers etc? or is this already included by default and what happened before was just a freak occurrence?

As i side note, I'm not a 100% sure but i think the guichan package was initially installed as a dependency of another package. Does this have any effect on what parts of the package are installed? By this i mean, since it is a dependency, a program does not need the development headers, only the runtime files so it only installs that part....:?

I think i'm utterly confused here, could someone help a newbie out?  sad

Offline

#2 2006-07-19 05:34:04

twiistedkaos
Member
Registered: 2006-05-20
Posts: 666

Re: source development packages

http://wiki.archlinux.org/index.php/Pacman

Will give you all and any information about pacman.

Offline

#3 2006-07-19 06:18:54

vasdee
Member
Registered: 2006-07-15
Posts: 55

Re: source development packages

Thanks for the response, but i'm still confused - i'll rephrase my previous post, please correct me if i'm wrong:

My idea of a binary package is something that has been precompiled on an arch system so that it can be easily dropped into place on any other arch system allowing other binaries that require that package to run properly. Essentially that would kill the need to include the source for that package since it is no longer compiled locally....right?  :?

By example, the kernel package has a kernel-headers package so you can build modules for the kernel, what i want know is if i want to create a program which links to a package in the current/extra repo will that include the necessary header files to link against in order for my app to build successfully?

As i said before, i'm just used to the debian way of having a *-dev package and i just want to know the arch equivalent to this

Offline

#4 2006-07-19 06:28:12

twiistedkaos
Member
Registered: 2006-05-20
Posts: 666

Re: source development packages

I don't ever really compile anything myself, Which is why I choose arch. But I beleive the equivilant is *-devel is most cases. But alot of times, those don't exsist. Since Arch is binary based. Don't quote me on that though, because I myself am not completely sure.

Offline

#5 2006-07-19 06:44:10

Snowman
Developer/Forum Fellow
From: Montreal, Canada
Registered: 2004-08-20
Posts: 5,212

Re: source development packages

In Arch, there is no dev/devel packages: the headers and the libs are in the same packages. So if, for example,  you install libpng, you'll get the png lib and the png headers to build apps using png.  In the case of guichan, I don't know what happened. Without more info, I can only guess that it was not installed properly for some reason.

The kernel-headers package is a special case. It contains a set of sanitized kernel headers to compile apps against them. Notice that it use headers from the 2.6.12.0 kernel while Arch's kernel is at version 2.6.17.6. 
The kernel packages contains the kernel, the modules and the headers to compile modules for that kernel.

BTW, you might come across some packages with -devel in their names. These are just developpement versions/snapshots.

Offline

#6 2006-07-19 06:57:12

vasdee
Member
Registered: 2006-07-15
Posts: 55

Re: source development packages

Ahhhh thanks for the explanations fellas, that clears up alot. big_smile

There was no error when guichan was installed the first time so i've got no  more info to post about that.... One thing has crossed my mind, is the build/install process for dependencies the same as if i installed the dependency directly? Eg:
if i do pacman -S foo and it says it needs libBar as a dependency and installs it for me, is it effectively the same as installing libBar first and then installing foo after?

Offline

#7 2006-07-19 07:20:15

paranoos
Member
From: thornhill.on.ca
Registered: 2004-07-22
Posts: 442

Re: source development packages

vasdee wrote:

if i do pacman -S foo and it says it needs libBar as a dependency and installs it for me, is it effectively the same as installing libBar first and then installing foo after?

yup, that's exactly what pacman does. it makes sure it goes in that order. also, when you upgrade a package, all it's doing is removing the old package and installing the new one.

edit: actually, the only difference is that pacman keeps track of what was installed as a dependency and what was installed manually. this is so that if you notice you have a package that was installed as a dependency, but nothing requires it anymore, then it's safe to remove.

i came to arch from debian some time ago. i think you'll find pacman much simpler and more intuitive than apt-get.

Offline

#8 2006-07-19 07:20:23

Snowman
Developer/Forum Fellow
From: Montreal, Canada
Registered: 2004-08-20
Posts: 5,212

Re: source development packages

guichan isn't in an official repo. Did you used the PKGBUILD in AUR to make the package and install it? Or did you install it otherwise?

About your question: Yes, doing 'pacman -S foo' and letting pacman installing libBar is the same as installing libBar first and then installing foo.

Offline

#9 2006-07-20 05:07:00

vasdee
Member
Registered: 2006-07-15
Posts: 55

Re: source development packages

Thanks for all your responses, that clears up a lot.

snowman: yep i think it was pulled in by aurbuild when i tried building the mana world, but then i might have had to do a seperate makepkg on guichan  to install the headers :?   

Doesn't matter tho, i'm guessing it was something i did that stuffed it up initially and by any rate the big questions i had have been cleared up. Thanks heaps!

Offline

Board footer

Powered by FluxBB