[PVE-User] Building pve-kernel fails
Fabian Grünbichler
f.gruenbichler at proxmox.com
Mon Mar 2 08:24:02 CET 2020
On February 28, 2020 8:20 pm, Alarig Le Lay wrote:
> Hi,
>
> I would like to test (and integrate) a patch to local kernels, but if I
> try to build it, it fails:
>
> alarig at pikachu | master *%= pve-kernel % make
> test -f "submodules/ubuntu-eoan/README" || git submodule update --init submodules/ubuntu-eoan
> test -f "submodules/zfsonlinux/Makefile" || git submodule update --init --recursive submodules/zfsonlinux
> rm -rf build/modules/pkg-zfs build/modules/tmp pkg-zfs.prepared
> mkdir -p build/modules/tmp
> cp -a submodules/zfsonlinux/* build/modules/tmp
> cd build/modules/tmp; make kernel
> make[1]: Entering directory '/home/alarig/Documents/git/proxmox.com/pve-kernel/build/modules/tmp'
> make[1]: *** No rule to make target 'kernel'. Stop.
> make[1]: Leaving directory '/home/alarig/Documents/git/proxmox.com/pve-kernel/build/modules/tmp'
> make: *** [Makefile:99: pkg-zfs.prepared] Error 2
> zsh: exit 2 make
>
> build/modules/tmp doesn’t have any Makefile:
> alarig at pikachu | master *%= pve-kernel % ls -lh build/modules/tmp
> total 0
> drwxr-xr-x 1 alarig alarig 454 Feb 28 19:01 upstream
>
> Neither do the `upstream` directory:
> alarig at pikachu | master *%= pve-kernel % ls -lh build/modules/tmp/upstream/
> total 100K
> -rw-r--r-- 1 alarig alarig 13K Feb 28 19:01 AUTHORS
> -rwxr-xr-x 1 alarig alarig 59 Feb 28 19:01 autogen.sh
> drwxr-xr-x 1 alarig alarig 278 Feb 28 19:01 cmd
> -rw-r--r-- 1 alarig alarig 154 Feb 28 19:01 CODE_OF_CONDUCT.md
> drwxr-xr-x 1 alarig alarig 6.1K Feb 28 19:01 config
> -rw-r--r-- 1 alarig alarig 15K Feb 28 19:01 configure.ac
> drwxr-xr-x 1 alarig alarig 102 Feb 28 19:01 contrib
> -rwxr-xr-x 1 alarig alarig 2.5K Feb 28 19:01 copy-builtin
> -rw-r--r-- 1 alarig alarig 1.3K Feb 28 19:01 COPYRIGHT
> drwxr-xr-x 1 alarig alarig 100 Feb 28 19:01 etc
> drwxr-xr-x 1 alarig alarig 444 Feb 28 19:01 include
> drwxr-xr-x 1 alarig alarig 222 Feb 28 19:01 lib
> -rw-r--r-- 1 alarig alarig 19K Feb 28 19:01 LICENSE
> -rw-r--r-- 1 alarig alarig 5.5K Feb 28 19:01 Makefile.am
> drwxr-xr-x 1 alarig alarig 46 Feb 28 19:01 man
> -rw-r--r-- 1 alarig alarig 208 Feb 28 19:01 META
> drwxr-xr-x 1 alarig alarig 112 Feb 28 19:01 module
> -rw-r--r-- 1 alarig alarig 97 Feb 28 19:01 NEWS
> -rw-r--r-- 1 alarig alarig 1.2K Feb 28 19:01 NOTICE
> -rw-r--r-- 1 alarig alarig 1.2K Feb 28 19:01 README.md
> drwxr-xr-x 1 alarig alarig 48 Feb 28 19:01 rpm
> drwxr-xr-x 1 alarig alarig 470 Feb 28 19:01 scripts
> -rw-r--r-- 1 alarig alarig 2.4K Feb 28 19:01 TEST
> drwxr-xr-x 1 alarig alarig 96 Feb 28 19:01 tests
> drwxr-xr-x 1 alarig alarig 36 Feb 28 19:01 udev
> -rw-r--r-- 1 alarig alarig 38 Feb 28 19:01 zfs.release.in
>
> Also, I had to update URLs in the git config because the shipped ones
> are giving 404 (they don’t have the .git):
> alarig at pikachu | master *%= pve-kernel % cat .git/config
> [core]
> repositoryformatversion = 0
> filemode = true
> bare = false
> logallrefupdates = true
> [remote "origin"]
> url = https://git.proxmox.com/git/pve-kernel.git
> fetch = +refs/heads/*:refs/remotes/origin/*
> [branch "master"]
> remote = origin
> merge = refs/heads/master
> [submodule "submodules/ubuntu-eoan"]
> active = true
> url = https://git.proxmox.com/git/mirror_ubuntu-eoan-kernel.git
> [submodule "submodules/zfsonlinux"]
> active = true
> url = https://git.proxmox.com/git/zfsonlinux.git
>
> Is there an updated Makefile for pve-kernel or is there anything to do
> before the make?
the problem is that the repositories are available under two different paths:
https://git.proxmox.com/git/XXX.git
git://git.proxmox.com/git/XXX
the submodules only contain a relative reference, and where written for
the second variant. if you checkout via the first, they don't work.
thankfully, git:// also supports git/XXX.git, so we can update the
references to include the '.git' suffix.
to fix your local repository, you can either manually point the
submodules to the right place (recursively), or start fresh and clone
from 'git://git.proxmox.com/git/pve-kernel'.
we'll fix the .gitmodules file shipped in the repository soon, but all
the already cloned copies will need to be updated manually.
More information about the pve-user
mailing list