It depends on the distro, but in Debian and Devuan-based distros...

by Anonymous (no login)

 

Suppose I'm missing part of libcaca, and I load the package manager and it says I have libcaca installed. Ok, I either need to find a package that says libcaca-dev or libcaca headers.

How do I know it is libcaca? When I compile, the compiler says what it's missing. What if the thing it's missing isn't the name of the library or package? It usually is, but for the non-obvious instances you can turn to a search engine to look up what package includes the file you need.

This is inefficient and unfriendly, a little, yes? I agree.

If there were a way to have different collections of packages, so you could make a new package that says "install ALL the dev packages and header packages I need for ALL these libraries..." That would be cool.

Debian and Devuan have this: they are called metapackages. Why aren't people using metapackages to create just that sort of thing? No reason that I know of. They certainly could.

You can also write all kinds of scripts to look for the libraries you have installed and automatically download and install relevant -dev or -headers packages. I have never needed this; I don't compile often.

There are options. They could be more userfriendly, but I image the argument goes something like: "if you can write in C or C++ you can probably find the headers you need." Too bad, it's not like it will make more people learn C++ if it's a pain to install. That said, people tend to find a way around this with practice. I'm still kind of a noob about this particular thing.

Posted on Aug 9, 2017, 11:15 AM

Respond to this message   

Return to Index

 Copyright © 1999-2017 Network54. All rights reserved.   Terms of Use   Privacy Statement  

Quantcast