pkgsrc-Users archive

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

Re: bootstrapping on an older NetBSD without breaking existing installed pkgs?



If you are anxious, the safest way to test out newer pkgsrc packages is
to bootstrap and do it to a different destination, like /usr/pkg-new.
Then, your packages will not conflict with the old ones.

Since you are using NetBSD 5.2.2, your GCC version is very old. You will
likely want to first and foremost build a newer version of GCC such as
lang/gcc5 and afterwards set GCC_REQD+=5.0 in /etc/mk.conf, which will
spare you the need to rebuild GCC a couple of times (since usually we
will set the minimum required GCC, you'll accumulate a pile).

You will likely experience some random issues from having a very
outdated linker, but you should be able to build a lot. If you must
continue running NetBSD-5, some people have been exploring alternatives
such as using a linker from pkgsrc, but it's very involved and doesn't
"just work", as AFAIK the linker choice has to be hard-coded into GCC
(see lang/gcc*/Makefile "with-ld=/path/to/ld").

BTW, the safest way to update netbsd is to copy the kernel to a new name
like /newnetbsd and drop to boot prompt and type 'boot newnetbsd'. This
will let you attempt the only hazardous step in a reversible manner. The
new kernel should be able to run old binaries.

When this goes smoothly, you can try out other things, such as updating
base. If you avoid removing old libraries, binaries will be almost
guaranteed to run as-is.

Then you can gradually attempt to update your base system and packages,
and remember - it's always possible to just unpack the old base.tgz if
something fails you (I doubt it will).

postinstall can clear old files, and will potentially break old binaries
(if the library version they use is removed).

Good luck!


Home | Main Index | Thread Index | Old Index