Hello all,
I am building the firmware from the source. I dont want to use image builder.
I followed this guide https://openwrt.org/docs/guide-developer/quickstart-build-images
I have added my custom config files /files/etc/config/wireless and /files/etc/config/network
How should i write the configuration inside these files?
For example i know the configuration of mesh. should I just add the below content inside
/files/etc/config/wireless file or do i have to follow some other format.
Also I have to add packages like wpad-mesh-openssl and remove wpad-mini,wpad-basic. How do I do that ?
I could not find options on make menuconfig to remove or add packages.
I am very new to this field. sorry if my doubts sounds silly.
Did you read the help at the top of the menuconfig screen? "Y" includes packages (those have a "*" next to them), "N" excludes, "M" should build it as a package but you would have to install it as a separate step. wpad-* packages are in the Network section.
Why not? Most of the time, you don't need to rebuild everything from source, but can use the pre-built sources - and the ImageBuilder can even build packages for you if needed (e.g. you include a repo of 3rd party packages that are source only).
You shouldn't. Those files will overwrite the defaults, which can cause a number of issues with your final image. You can quite possibly remove sections due to an unforeseen override that are crucial for WiFi/networking.
Instead, you should use the already recommended uci-defaults approach, which allows you to create a "run on first boot" script that is built into your image.
Again, ImageBuilder is your friend. Specifically, if you want to remove wpad-mini and wpad-basic, and add wpad-mesh-openssl instead, you'd do the following:
make PROFILE="your_router-profile" PACKAGES="-wpad-mini -wpad-basic +wpad-mesh-openssl"
menuconfig makes things easier AND harder at the same time. On one hand it gives you package descriptions, categorisation, et cetera... On the other hand, it makes "simple" things like excluding a package a bit more cumbersome, since you have to know the category and subcategory of the package, and so on.
Again, just do it with ImageBuilder and uci-defaults scripts. Latter are literally just regular shell scripts that execute commands as if you were accessing the router through SSH/Telnet.
To remove conflicts you need to remove the dependency.
Removing a dependency is done by adding a - before the package name in the PACKAGES parameter of the command. E.g. when you write PACKAGES="-wpad-mini -wpad-basic wpad-mesh-openssl", you're telling the build system to remove wpad-mini and wpad-basic and use wpad-mesh-openssl instead.
Same applies here. You're adding wpad-mesh-openssl, so you need to remove wpad-basic-wolfssl.
As for the iperf stuff... Try to not make a typo in the package name, ipref does not exist, but iperf does
As the error message states, your image is too big - you're including too many packages, most likely. The TL-WR840N v5 only has a 4MB flash - it's very restrictive for OpenWrt usage, and most devices using this size of flash have been dropped from support.