"Nick B. (lists)" <nick.netbsd%nowindows.net@localhost> writes: > I had a working pkgsrc-2016Q3 on my system. I decided to upgrade this > to pkgsrc-2017Q3. > > Various packages fail to build. Can I define a later version of gcc > (gcc48) in /usr/pkg/etc/mk.conf so it gets built and is then used to > build everything else from pkgsrc? From reading the pkgsrc guide it > appears that I need to add > GCC_REQD=4.8 > to mk.conf to force this. If this isn't the best way to get up and > running I'd be grateful for some guidance. The right way is to finish the compiler selection logic we've been discussing :-) See https://wiki.netbsd.org/pkgsrc/gcc/ for some discussion of where we are. But seriously.... What I would do is one of: 1) upgrade to netbsd-7. This has gcc 4.8, and most things are ok. If you can do this, you take a lot of pain off the table. Part of the problem is that most people who work on NetBSD have moved beyond -6 on most systems. 2) Do as you say, but I'd choose 4.9, since you have to build a new version anyway, and at least firefox needs 4.9, so if you want that and you used 4.8, you'd end up with both. In general, you should be building all C++ stuff with the same compiler. GCC_REQD=4.9 probably does not play well with building gcc 4.9. Assuming you are using pkg_rolling-replace, I would: cd /var/db/pkg && pkg_admin set rebuild=YES * # or, if you are more adventurous, only do this for packages that use # c++. Or skip it and look for trouble later. without GCC_REQD=4.9 in mk.conf [perhaps set the gcc-inplace-math option to avoid two dependencies with a different compiler than the rest] build/install the gcc 4.9 package put GCC_REQD=4.9 in mk.conf start "pkg_rolling-replace -uvk", or leave off the -k and think about each problem 3) live dangerously by just "make GCC_REQD=4.9 package replace" for each package that fails, but then you end up with mixed 4.5/4.9 for C++. But if it's only a few usual-suspect packages like harfbuzz that get used by only pango, you can perhaps get away with this, even though it's in general unsound.
Attachment:
signature.asc
Description: PGP signature