Even as a programmer/electronics engineer (admittedly down at an embedded level most of the time) some of this is going so far over my head, it's a vapour trail in the sky.

There are far too many acronyms of stuff I've not come across, for me to even get the vaguest grasp of what's been talked about.

I'm not sure what the answer is really, I thought maybe a you tube tutorial might be a good idea, but even then, how do you know what level to talk down to.

No idea, for example. what iurt, mock are or do; how to make a minimal install and keep making the system go back to minimal install when creating the next RPM; what a btrfs subvolume is and other things.

I still don't get this whole trial and error thing. It seems that you might submit something to the repositories that someone finds doesn't install because of a missing dependency and you redo it. Then you can retry that for up to five goes before it finally works? That seems crazy. I must have misunderstood.

I have no problem learning stuff, I do it every single day in my work and it's what makes it so enjoyable, but maybe I need to take smaller steps first? No idea where to start or how to go about doing that though. As I might not have any work in a week's time it would potentially be an ideal time to learn, but maybe I'm just not the right person to do this?



On 28/02/13 21:18, Dan Fandrich wrote:
On Thu, Feb 28, 2013 at 03:25:41PM +0100, Guillaume Rousse wrote:
Build dependencies are usually specified in installation
instructions. For humans, of course. You may also try to parse the
outpout of ./configure (or equivalent) script. In both case, there is
not garanty then every build dependency will get specified.

The other way is to work backwards by looking at the install dependencies
that rpmbuild discovered, or the NEEDED lines from objdump -x, and adding the
-devel versions of those libraries. That won't catch any compile-time-only
dependencies, though (like libtool, autoconf or flex) but it will give you
something to start from.  Note also that some programs will automatically
discover what optional libraries are available at build time and configure
themselves accordingly. So, if you miss some BuildRequires, you might end up
with a binary that works but is missing features.

Dan

Reply via email to