OpenBSD Following -current and using snapshots [FAQ Index]


Active OpenBSD development is known as the -current branch. These sources are frequently compiled into releases known as snapshots. Active development sometimes pushes aggressive changes, and complications can arise when building the latest code from a previous point in time. Some of the shortcuts for getting over these hurdles are explained on this page. In general, it's far better to use the OpenBSD upgrade procedure with a newer snapshot, as developers will have gone through the trouble for you already.

Make sure you've read and understand how to build the system from source before using -current and the instructions below.

You should always use a snapshot as the starting point for running -current. Upgrading by compiling your own source code is not supported.

Most of these changes will have to be performed as root.

2017/04/17 - build infrastructure change

The build infrastructure has been changed to allow building clang alongside gcc. This requires an update of the make "include" files:
# cd /usr/src/share/mk && make install

2017/04/19 - clang enabled for amd64 and i386

The clang compiler is now built alongside gcc on the amd64 and i386 architectures. It is recommended that you upgrade using a snapshot.

If you build your own releases, note that make release now needs more than 2G space on /usr/obj. Increasing the size to 3G is recommended.

If you wish to upgrade from source, you need to bootstrap clang:

# pkg_add g++
# cd /usr/src/gnu/usr.bin/clang
# make obj
# make BOOTSTRAP_CLANG=yes
# make install
Compile libcompiler_rt:
# cd /usr/src/lib/libcompiler_rt
# make obj
# make depend
# make
# make install
Then do a regular make build and make release.

2017/04/27 - [ports] beats updated

filebeat and packetbeat were updated to 5.3.1 which significantly changed the configuration file layout from 1.x to 5.x. Please refer to the upstream documentation for migrating your configuration. Also take note of the breaking changes when upgrading to 5.3.1.
topbeat has been merged into metricbeat, a migration path is available.

2017/05/07 - amd64: argument printing in ddb stack traces

On amd64, ddb(4) now supports printing of arguments in stack traces. This relies on the new -msave-args compiler option. If your last upgrade predates Apr 28, you need to build a new cc(1) before you can build a new kernel:
# cd /usr/src/gnu/usr.bin/cc
# make obj
# make depend
# make
# make install

2017/05/15 - breaking change for nvme(4) users with GPT

If you are booting from an nvme(4) drive with a GPT disk layout, you are affected by an off-by-one in the driver with the consequence that the sector count in your partition table may be incorrect. The only way to fix this is to re-initialize the partition table. Backup your data to another disk before you upgrade. In the new bsd.rd, drop to a shell and re-initialize the GPT:
# fdisk -iy -g -b 960 sdN
Then do a fresh install and restore the data from the backup.


$OpenBSD: current.html,v 1.821 2017/05/15 19:12:00 tb Exp $