pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Package not honoring pkgsrc settings



Hello Greg,

I really appreciate your response. I'll just add some comments between lines.

>
> Centos 6 is really ancient, release date 2011-11-27, EOL date
> 2020-11-30.  I realize you know that, but...
>

Sure, I know. Not my systems, not my call. Just helping a client to
get what they want.


>
> pkgsrc by default will use the base compiler unless it is somehow marked
> that it is not ok.  However, things get marked when someone finds out
> that some old compiler is not good enough.  For the base compiler in
> NetBSD 9, which is gcc7, that is usually noticed.  For a compiler that
> was current in 2009-2010 (guessing), the number of people who are trying
> and noticing is likely to be very small.  Perhaps that number is just
> one -- now we know it isn't zero :-)
>

I bet the number is bigger. They just remain silent ;-)

> You didn't say which version of pkgsrc, and what the base compiler is.
>

I'll include this info the next time.

> Note that pkgsrc-current has a lot of changes in compiler selection
> logic but that these shouldn't really change many decisions.  This is
> unlikely your issue.
>
> What I would do, if I really had to use such a system, would be
>
>   bootstrap pkgsrc
>
>   build gcc10 (if that can be built, otherwise step down to find the
>   highest one that builds, perhaps reading gcc docs for requirements to
>   speed things up)
>
>   in mk.conf, set GCC_REQD=10 (or whatever you built)
>
>   continue with everything else
>
> This will say that for every package, you need gcc 10.  Putting
> GCC_REQD, which is supposed to be set by packages, in mk.conf instead is
> technically a bit abusive, but a) it is what everybody does and b) you
> are welcome to do whatever you want with your own copy of pkgsrc!
>
> And, if you are trying to build modern/bloated things in c++ like qt,
> then I would say even if you can't build gcc10, you should build 7, then
> set GCC_REQD to 7, and then build 10, and then set to 10.  You are far
> better off with a single compiler for most things.
>

This is what I did. I installed gcc7 and compiled everything else on it.

> Your message said you tried a lot and "nothing works".  This contains
> almost zero information and does not let anybody help you.   I hope the
> above helps, but to get help you will need to be much clearer about what
> you did and what happened.  The basic issue is that what is printed will
> likely be helpful  to people who understand, even if it doesn't make
> sense to you.
>
> pkgsrc selects the compiler according to a bunch of rules.  In this
> case, it appears:
>

One of those rules, I guess, is in PATH. I mean, cc is searched in
PATH and the first found is used, so my solution was to change the
order of the directories defined in PATH so it search in PREFIX first.

This is how I fixed this particular issue. It has been a long journey
and now I'm facing another problem with glibc. I'll use pkgsrc for
building the required version and I guess this is a use case for
buildlink.

>   zstd might have an undeclared dependency on a compiler newer than your
>   very old base one
>
>   trying to operate with a compiler that is 10+ years old is likely to
>   run into trouble which needs to be worked around, which is going to
>   take effort.  That's just part of the cost resulting from a decision
>   to run really old software and simultaneously want new software.

Totally agree. On the other hand, it has been fun and I have learned a
lot more about pkgsrc.

Again, thank you for taking the time to answer my question. I
appreciate your thoughts.


All the best,


Alberto Mijares


Home | Main Index | Thread Index | Old Index