Compiling OpenWrt exactly like the official one

Hi guys, i have a question, how can i compile openwrt in a way that it gets the same packages as the default official image?

Thats what i tried to do:


git clone https://git.openwrt.org/openwrt/openwrt.git
cd openwrt
git checkout v18.06.1
./scripts/feed update
./scripts/feed install -a
wget https://downloads.lede-project.org/releases/18.06.1/targets/ramips/mt7621/config.seed -O .config
make defconfig
make menuconfig  -> No luci packages are selected here. Shouldn´t it ?
make

So, apparently i get a image without AT LEAST luci. So, basically different of the official one.
What am i doing wrong ?

You are not copying config.seed to be .config

Just rename it to .config and run make defconfig

Yes, i am. ( -O .config )
wget https://downloads.lede-project.org/releases/18.06.1/targets/ramips/mt7621/config.seed -O .config

I don't know what the problem is, but luci is removed for me as well when I ran the same commands. I also tried with a different 18.06.1 seed file, and luci was removed for that one as well. The platform from the seed file was still selected.

Sorry, I overlooked that argument.

Next guess, might be typo, but the command is scripts/feeds, not scripts/feed

Luci is a feed, so if you do not update and install feeds, Luci stays hidden

1 Like

See https://openwrt.org/docs/guide-developer/quickstart-build-images for the correct commands.

1 Like

@hnyman, it was a typo , but thanks!

@Per, thanks !

I have another question, is there a easy way (command ) to compile all remaining packages / feeds so i can create my own repo ?

There is an option in Global build config options to build all packages.

But I doubt that you really want that. E.g. various telephone switch alternatives from telephony feed etc.

I use the following algorithm

git clone https://git.openwrt.org/openwrt/openwrt.git; cd openwrt
git pull
git branch -a
git tag
git checkout v24.10.0
./scripts/feeds update -a
./scripts/feeds install -a
wget -O .config https://downloads.openwrt.org/releases/24.10.0/targets/ath79/generic/config.buildinfo
make defconfig download
make -j$(nproc) world

which means that binaries for all router models would be build (under 'generic' subfolder). But, I need only tplink_tl-wr1043nd-v2. If I select only tplink_tl-wr1043nd-v2 at "make menuconfig", vermagic changes. Is it normal?

The build system should generate the vermagic string based on the kernel configuration/version to ensure that the modules built will be compatible with the kernel that is running on the target. So yes it will change by changing the target profile.

1 Like

Seems to be I was confused by ahorner's build guide.
There's mentioned that "make kernel_menuconfig" changes vermagic.

That changes even deeper kernel settings, those that are not set on high-level OpenWrt Makefiles.