OpenWrt Forum Archive

Topic: ChaosCalmer build from source, different kernel than official images

The content of this topic has been archived on 24 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

I have built my own images from ChaosCalmer source. I obtained source using:

git clone git://git.openwrt.org/15.05/openwrt.git 

My images have kernel Linux version 3.18.36. Official images have Linux version 3.18.23-1. Is there any reason for this discrepancy? I can't install an kmod-* from the repositories due to the difference in version.
(p.s. building images for ar71xx-generic-pb44)

If you compile it yourself, you should really enable everything you might want to install as part of your firmware build (ideally statically, rather than as package).

The procedure as you explained it contains two issues:
- you've checked out the chaos calmer release branch (15.05.x, what might -or might not- become 15.05.2[1]), not the release tag (v15.01.1), so it contains commits above your desired release version.
- the versioning and dependency checks for kernel modules are checksum based to ensure ABI compatibility, they're basically unique to each and every build and not (easily-) reproducable in practice. Therefore you really need to build everything with dependencies on kernel modules yourself, as part of the same firmware build as the flash image (and once you're there, you really should build everything else you might want to install at a later date as well).

[1] yes packages from the various package feeds complicate this further, so there is not one release tag, but several different ones, which need to match

(Last edited by slh on 30 Aug 2016, 00:50)

slh,
Thank you for the excellent reply.
I am OK with building everything I need, but I wonder if there is a way to set up the opkg repositories (ideally at compile time) to point to my own server / build machine where the images and packages are? I can install packages from there by giving the full server name and path, but I would like to be able to do opkg update then opkg install X, and have X pulled from my server rather than the openwrt.org server. I googled this and didn't find any satisfactory answer, only the workaround of explicitly specifying the server and path every time which isn't a great solution.

The discussion might have continued from here.