Skip to content

Doc: Update developer doc example for libseccomp dependency on Ubuntu #5780

@davidhay1969

Description

@davidhay1969

Doc: Update developer doc example for libseccomp dependency on Ubuntu

This is me being totally pedantic, but the Build containerd from source guide provides an example command to install a dependency, libseccomp, on Ubuntu, under the Build runc section

In part, it says: -

runc requires libseccomp. You may need to install the missing dependencies:

    CentOS/Fedora: yum install libseccomp libseccomp-devel
    Debian/Ubuntu: apt-get install libseccomp libseccomp-dev

However, I believe that, for Ubuntu, the actual binary to be installed is now libseccomp2 hence one would run: -

sudo apt-get install -y libseccomp2

Put it this way, that's what works for me on Ubuntu 20.04.2 LTS

Having said that, I'm assuming that one doesn't need to install both libseccomp2 and libseccomp-dev ?

At present, I've got: -

sudo dpkg --list | grep libseccomp

ii  libseccomp-dev:amd64                 2.5.1-1ubuntu1~20.04.1            amd64        high level interface to Linux seccomp filter (development files)
ii  libseccomp2:amd64                    2.5.1-1ubuntu1~20.04.1            amd64        high level interface to Linux seccomp filter

I'm also basing my assertion on apt-file search : -

sudo apt-file update && sudo apt-file search libseccomp

golang-github-docker-containerd-dev: /usr/share/gocode/src/github.com/containerd/containerd/vendor/github.com/seccomp/libseccomp-golang/LICENSE
golang-github-docker-containerd-dev: /usr/share/gocode/src/github.com/containerd/containerd/vendor/github.com/seccomp/libseccomp-golang/README
golang-github-docker-containerd-dev: /usr/share/gocode/src/github.com/containerd/containerd/vendor/github.com/seccomp/libseccomp-golang/seccomp.go
golang-github-docker-containerd-dev: /usr/share/gocode/src/github.com/containerd/containerd/vendor/github.com/seccomp/libseccomp-golang/seccomp_internal.go
golang-github-docker-docker-dev: /usr/share/gocode/src/github.com/docker/docker/vendor/github.com/seccomp/libseccomp-golang/LICENSE
golang-github-docker-docker-dev: /usr/share/gocode/src/github.com/docker/docker/vendor/github.com/seccomp/libseccomp-golang/README
golang-github-docker-docker-dev: /usr/share/gocode/src/github.com/docker/docker/vendor/github.com/seccomp/libseccomp-golang/seccomp.go
golang-github-docker-docker-dev: /usr/share/gocode/src/github.com/docker/docker/vendor/github.com/seccomp/libseccomp-golang/seccomp_internal.go
golang-github-opencontainers-runc-dev: /usr/share/gocode/src/github.com/opencontainers/runc/vendor/github.com/seccomp/libseccomp-golang/seccomp.go
golang-github-opencontainers-runc-dev: /usr/share/gocode/src/github.com/opencontainers/runc/vendor/github.com/seccomp/libseccomp-golang/seccomp_internal.go
golang-github-seccomp-libseccomp-golang-dev: /usr/share/doc/golang-github-seccomp-libseccomp-golang-dev/changelog.Debian.gz
golang-github-seccomp-libseccomp-golang-dev: /usr/share/doc/golang-github-seccomp-libseccomp-golang-dev/copyright
golang-github-seccomp-libseccomp-golang-dev: /usr/share/gocode/src/github.com/seccomp/libseccomp-golang/seccomp.go
golang-github-seccomp-libseccomp-golang-dev: /usr/share/gocode/src/github.com/seccomp/libseccomp-golang/seccomp_internal.go
golang-github-seccomp-libseccomp-golang-dev: /usr/share/gocode/src/github.com/seccomp/libseccomp-golang/seccomp_test.go
golang-github-snapcore-snapd-dev: /usr/share/gocode/src/github.com/snapcore/snapd/vendor/github.com/mvo5/libseccomp-golang/seccomp.go
golang-github-snapcore-snapd-dev: /usr/share/gocode/src/github.com/snapcore/snapd/vendor/github.com/mvo5/libseccomp-golang/seccomp_internal.go
libseccomp-dev: /usr/lib/x86_64-linux-gnu/libseccomp.a
libseccomp-dev: /usr/lib/x86_64-linux-gnu/libseccomp.so
libseccomp-dev: /usr/lib/x86_64-linux-gnu/pkgconfig/libseccomp.pc
libseccomp-dev: /usr/share/doc/libseccomp-dev/README.md.gz
libseccomp-dev: /usr/share/doc/libseccomp-dev/changelog.Debian.gz
libseccomp-dev: /usr/share/doc/libseccomp-dev/copyright
libseccomp2: /usr/lib/x86_64-linux-gnu/libseccomp.so.2
libseccomp2: /usr/lib/x86_64-linux-gnu/libseccomp.so.2.4.3
libseccomp2: /usr/lib/x86_64-linux-gnu/libseccomp.so.2.5.1
libseccomp2: /usr/share/doc/libseccomp2/changelog.Debian.gz
libseccomp2: /usr/share/doc/libseccomp2/copyright

IF my understanding is correct, I'd be more than happy to PR a change to BUILDING.md

If not, then I'll just go and hide / cry 🤣

Describe the results you received:

I cannot install libseccomp on Ubuntu 20.04.2 LTS using the supplied example: -

sudo apt-get install -y libseccomp

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libseccomp

but can install libseccomp2 : -

sudo apt-get install -y libseccomp2

Reading package lists... Done
Building dependency tree
Reading state information... Done
libseccomp2 is already the newest version (2.5.1-1ubuntu1~20.04.1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Describe the results you expected:

To be able to install the required dependencies

What version of containerd are you using:

$ containerd --version

Not yet installed, as I'll be building containerd shortly ...

Any other relevant information (runC version, CRI configuration, OS/Kernel version, etc.):

Nope

runc --version
$ runc --version

crictl info
$ crictl info

uname -a
$ uname -a

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions