[pve-devel] Please help: beginner trying to compile Proxmox kernel 4.15

Fabian Grünbichler f.gruenbichler at proxmox.com
Wed Sep 12 11:28:50 CEST 2018


On Tue, Sep 11, 2018 at 04:54:46PM +0700, The Anh Tran wrote:
> Dear Teams,
> 
> On 9/11/2018 3:53 AM, Fabian Grünbichler wrote:
> > I am not sure whether your manual git clones messed anything up or
> > whether you somehow manage to trigger some error in our Make logic
> > (entirely possible!), but a plain "make" after
> > 
> > "git clone -b pve-kernel-4.15 git://git.proxmox.com/git/pve-kernel.git"
> > 
> > should and does work (here), as long as you have all the needed
> > build-dependencies installed. note that libpve-common-perl is actually
> > required for one of the helper scripts, but not (yet) contained in
> > debian/control.in (patch incoming sometime this week, unless somebody
> > beats me to it).
> > 
> > maybe you accidentally added the '+' somewhere while editing/viewing a
> > file (like the Makefile, debian/rules, the generated file with all the
> > environment variables, ...)? the path should not contain a '+'!
> > 
> > check an excerpt of a build log here:
> > 
> >    LD [M]  drivers/net/ethernet/intel/e1000/e1000.ko
> > kernel-4.15.18-4-pve/lib/modules/4.15.18-4-pve/zfs
> ...........remove for clarity ...........
> > no 4.15.18-4-pve+ anywhere in the log, as expected.
> > 
> > what does "git status" output in your local working copy of the repo?
> > 
> Today i download newest Debian 9 template, 9.5-1, spawn a new container.
> 
> Re-run build script again, pull latest from git.
> 
> /compile-pve:/source# cd mirror_ubuntu-bionic-kernel///
> //compile-pve:/source/mirror_ubuntu-bionic-kernel# git status -uno//
> //On branch master//
> //Your branch is up-to-date with 'origin/master'.//
> //nothing to commit (use -u to show untracked files)//
> /
> 
> /compile-pve:/source/zfsonlinux# git status -uno/
> 
> /On branch master//
> //Your branch is up-to-date with 'origin/master'.//
> //nothing to commit (use -u to show untracked files)//
> /
> 
> /compile-pve:/source# git clone -b pve-kernel-4.15
> git://git.proxmox.com/git/pve-kernel.git//
> /
> 
> /compile-pve:/source# cd pve-kernel/
> 
> /compile-pve:/source/pve-kernel#
> /
> 
> /cd ../pve-kernel/git status -uno//
> //On branch pve-kernel-4.15//
> //Your branch is up-to-date with 'origin/pve-kernel-4.15'.//
> //nothing to commit (use -u to show untracked files)//
> /

which is not what you are supposed to do. just clone pve-kernel:

$ git clone -b pve-kernel-4.15 git://git.proxmox.com/git/pve-kernel.git

and run make

$ cd pve-kernel; make

that will pull in all the needed submodules automatically, no need for
manually cloning and copying stuff around. note that if I haven't
misread your "log", you didn't install libpve-common-perl, which means
the build will fail at a later stage anyway because of this missing
depednency.

> Make still error at "wrong directory" message
> 
> File *builld/ubuntu-bionic/include/config/kernel.release* has this content:
> 
> 4.15.18-4-pve+
> 
> Most of .o and .ko files also have "-pve+" in their version string.
> 
> I'm looking for which script generate that "-pve+" suffix.

nothing in our scripts adds a + there. please check the following gist:

https://gist.github.com/Fabian-Gruenbichler/f427703810508c3dab345459d32ecb8a

and compare the log and contents of build/debian/rules.d/env.mk with
yours.




More information about the pve-devel mailing list