Qualcommax NSS Build

you can use htop ...also you can nssinfo (make sure you modprobe qca-nss-netlink before) that will show you something like this

                        NSS STATS
Stats for core 0
Node         RX Pkts       TX Pkts       Drops     Exceptions
----         -------       -------       -----     ----------
eth_rx       6,364,476     6,364,476     0         9,039
ipv4         6,364,452     4,697,664     0         1,666,788
ipv6         24            0             0         24
lso_rx       10,790        31,992        0
n2h          29,399,498    3,086,065     0

Stats for core 1
Node         RX Pkts       TX Pkts       Drops     Exceptions
----         -------       -------       -----     ----------
n2h          5,962,716     127           0
 buf_cmd     0             2,176,472
 buf_emty    912,949       282,075
 buf_pkt     1,675,851     909,720
 status_sync 0

1 Like

Thank you. I already use htop but nssinfo is helpful somewhat too.
As I've had big troubles switching between NSS and Non-NSS builds preventing access to the QHora-301W, I strongly recommend anyone that has an intention to do so to read my post first.
Luckily I've recovered from the unpleasant situation.
Any advises how to switch safely to a NSS build?

so I started porting the nss build to 6.1 using as a baseline for this work of course the main openwrt repo and the qsdk AU_LINUX_QSDK_NHSS.QSDK.12.4.5.R1_TARGET_ALL.12.4.501.052.016

The qsdk version is supporting 6.1 however not ipq807x but ongoing work for the upcoming qualcomm wifi7 devices.

I managed to get nss-drv and nss-ecm running on openwrt 6.1.35

There is a lot of work still namely all of the other qca modules but also some workarounds most crucially i had to add the last two parameters so the kernel could compile successfully.

CONFIG_EXTRA_OPTIMIZATION="-fno-caller-saves -fno-plt -Wno-unused-variable -Wno-discarded-qualifiers"

to the openwrt .config (or via menuconfig)

the repo & branch https://github.com/rmandrad/openwrt/tree/qualcommax-nss-6.1
the nss packages repo & branch https://github.com/rmandrad/nss-packages/tree/main-6.1

finally make sure you ubiformat the factory image (to mtd12 or mtd13) ... check the wiki instructions in doubt. sysupgrade didn't worked for me.

If there is any bandwitdh on your side go ahead fork the repos and fix all of the other packages ... refer to the qsdk as there is a lot of patches one can reuse / help fix

note - i tested on the xiaomi ax3600

BEWARE - anything of what I have done is not supported so do it at your own risk.

1 Like

Is this suitable for QHora-301W?

all of the ipq807x subtarget is suitable

1 Like

I've read this whole thread and other threads about QHora-301W, ax3600, ax9000, Armor G5, Dynalink DL-WRX36 Askey RT5010W IPQ8072A.
Thanks to all developers and users for the great work.
I was using R7800 and on the tread Ipq806x NSS build (Netgear R7800 / TP-Link C2600 / Linksys EA8500) there are very clear instructions from ACWifidude how to replicate his build environment from scratch.
I suppose that not everyone has enough experience to start easily and compile their own build based on a forked repo.
I'm missing some more info and clear instructions (a "Recipe") about building from user's repos (like your latest @rmandrad for example). I'm still reading and trying to completely understand how the things work with Git, etc.
I know that it's mostly a matter of reading the docs about Build System Usage but I definitely have issues to compile successfully from a forked user's repos for now.
Previously when I used the OpenWrt master and stable branches for older devices I had no issues.
Can anyone share his build environment so I can try and start following a successful path.
I want to compile a customized build only for QNAP QHora-301W.
If anyone can share a Config, Diffconfig, commands to clone and compile a build from a forked branch I'll be really grateful to try.
Thanks a lot in advance.

Nice work. Just curious why are those modules not a part of official OpenWrt?

Openwrt thrives to be "compatible" with the Linux kernel ... in fact some of the work done in Openwrt ends up being upstreamed. QCA in the other end doesn't and in particular with the NSS modules that do hardware offloading (this is the reason for choosing the NSS build as Openwrt doesn't support HW offloading). Also, if was to be supported by Openwrt there would be quite a lot of work to keep it up to date with QCA is doing and updates to the Kernel.

Some of the work i had to do was to patch linux kernel source code with the QCA changes ... so you can imagine the maintenance work required ... what helped is that QCA is looking to support 6.1 for newer devices so their code already been patched in some cases.

1 Like

i placed the a .config on my repo https://github.com/rmandrad/openwrt/blob/qualcommax-nss-6.1/ax3600.config

just change using "make menuconfig" the sub-target to the qnap device

the guide you mentioned is quite good - https://github.com/rmandrad/openwrt/blob/qualcommax-nss-6.1/ax3600.config

basically (make sure you have all of the prereqs for you OS (fedora, ubuntu etc))
clone - git clone -b
cd
make menuconfig
"choose the target you want to build and other modules like luci"
./script feeds update
./script feeds install
make download
make prepare
make

the sysupgrade/factory images are under bin/targets ...

1 Like

hi,
just trying build the firmware than show warning
is it safe to continue?

./scripts/feeds update -a
Updating feed 'packages' from 'https://git.openwrt.org/feed/packages.git' ...
Already up to date.
Updating feed 'luci' from 'https://git.openwrt.org/project/luci.git' ...
Already up to date.
Updating feed 'routing' from 'https://git.openwrt.org/feed/routing.git' ...
Already up to date.
Updating feed 'telephony' from 'https://git.openwrt.org/feed/telephony.git' ...
Already up to date.
Updating feed 'nss' from 'https://github.com/rmandrad/nss-packages.git' ...
Already up to date.
Create index file './feeds/packages.index' 
Create index file './feeds/luci.index' 
Create index file './feeds/routing.index' 
Create index file './feeds/telephony.index' 
Create index file './feeds/nss.index' 

/scripts/feeds install -a
WARNING: Makefile 'package/feeds/nss/qca-nss-clients/Makefile' has a dependency on 'kmod-qca-nss-cfi-cryptoapi', which does not exist
WARNING: Makefile 'package/feeds/nss/qca-nss-clients/Makefile' has a dependency on 'kmod-qca-nss-cfi-cryptoapi', which does not exist
WARNING: Makefile 'package/feeds/nss/qca-nss-clients/Makefile' has a dependency on 'kmod-qca-nss-cfi-cryptoapi', which does not exist
WARNING: Makefile 'package/feeds/nss/qca-nss-clients/Makefile' has a dependency on 'kmod-qca-nss-cfi-cryptoapi', which does not exist
Installing all packages from feed packages.
Installing all packages from feed luci.
Installing all packages from feed routing.
Installing all packages from feed telephony.
Installing all packages from feed nss.

Thanks, I understand that. But some of the nss packages are in official codebase, why not all critical?
Lack of resources?

I'm curious whats the speed of 10gbps port in software only mode?

check early postings but also on the qnap forum ... i use the qnap with a 2.5gbps and it is fine unfortunately don't have anything with a 10gbps port to connect to

yes it is fine ... I haven't changed any of the nss-clients (eg they are exactly the same as the 5.15 bitthief repo)... as i said is work in progress and hoping other people can fix all of these other packages ... note also that some of the ecm options are not working yet

Noted will try tomorrow with my ax6 thx

Unfortunately build failed with error

/bin/bash ./libtool  --tag=CXX   --mode=compile /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/xg++ -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/ -nostdinc++ -nostdinc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include/aarch64-openwrt-linux-musl -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/libsupc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/include/backward -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/testsuite/util -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/bin/ -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/lib/ -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/include -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/sys-include    -DHAVE_CONFIG_H -I. -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm  -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/posix -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/generic -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm  -Wall -Werror  -Wc,-pthread  -std=gnu++0x -funwind-tables -fno-exceptions -fno-rtti -fabi-version=4 -O2 -pipe -mcpu=cortex-a53 -fno-caller-saves -fno-plt -Wno-unused-variable -Wno-discarded-qualifiers -fhonour-copts -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -D_GNU_SOURCE -g -Os -MT alloc.lo -MD -MP -MF .deps/alloc.Tpo -c -o alloc.lo /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/alloc.cc
/bin/bash ./libtool  --tag=CXX   --mode=compile /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/xg++ -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/ -nostdinc++ -nostdinc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include/aarch64-openwrt-linux-musl -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/libsupc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/include/backward -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/testsuite/util -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/bin/ -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/lib/ -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/include -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/sys-include    -DHAVE_CONFIG_H -I. -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm  -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/posix -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/generic -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm  -Wall -Werror  -Wc,-pthread  -std=gnu++0x -funwind-tables -fno-exceptions -fno-rtti -fabi-version=4 -O2 -pipe -mcpu=cortex-a53 -fno-caller-saves -fno-plt -Wno-unused-variable -Wno-discarded-qualifiers -fhonour-copts -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -D_GNU_SOURCE -g -Os -MT alloc_c.lo -MD -MP -MF .deps/alloc_c.Tpo -c -o alloc_c.lo /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/alloc_c.cc
/bin/bash ./libtool  --tag=CXX   --mode=compile /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/xg++ -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/ -nostdinc++ -nostdinc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include/aarch64-openwrt-linux-musl -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/libsupc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/include/backward -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/testsuite/util -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/bin/ -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/lib/ -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/include -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/sys-include    -DHAVE_CONFIG_H -I. -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm  -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/posix -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/generic -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm  -Wall -Werror  -Wc,-pthread  -std=gnu++0x -funwind-tables -fno-exceptions -fno-rtti -fabi-version=4 -O2 -pipe -mcpu=cortex-a53 -fno-caller-saves -fno-plt -Wno-unused-variable -Wno-discarded-qualifiers -fhonour-copts -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -D_GNU_SOURCE -g -Os -MT alloc_cpp.lo -MD -MP -MF .deps/alloc_cpp.Tpo -c -o alloc_cpp.lo /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/alloc_cpp.cc
libtool: compile:  /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/xg++ -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/ -nostdinc++ -nostdinc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include/aarch64-openwrt-linux-musl -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/libsupc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/include/backward -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/testsuite/util -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/bin/ -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/lib/ -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/include -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/sys-include -DHAVE_CONFIG_H -I. -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/posix -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/generic -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm -Wall -pthread -Werror -std=gnu++0x -funwind-tables -fno-exceptions -fno-rtti -fabi-version=4 -O2 -pipe -mcpu=cortex-a53 -fno-caller-saves -fno-plt -Wno-unused-variable -Wno-discarded-qualifiers -fhonour-copts -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -D_GNU_SOURCE -g -Os -MT alloc.lo -MD -MP -MF .deps/alloc.Tpo -c /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/alloc.cc  -fPIC -DPIC -o .libs/alloc.o
cc1plus: error: command-line option '-Wno-discarded-qualifiers' is valid for C/ObjC but not for C++ [-Werror]
libtool: compile:  /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/xg++ -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/ -nostdinc++ -nostdinc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include/aarch64-openwrt-linux-musl -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/libsupc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/include/backward -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/testsuite/util -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/bin/ -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/lib/ -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/include -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/sys-include -DHAVE_CONFIG_H -I. -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/posix -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/generic -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm -Wall -pthread -Werror -std=gnu++0x -funwind-tables -fno-exceptions -fno-rtti -fabi-version=4 -O2 -pipe -mcpu=cortex-a53 -fno-caller-saves -fno-plt -Wno-unused-variable -Wno-discarded-qualifiers -fhonour-copts -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -D_GNU_SOURCE -g -Os -MT alloc_c.lo -MD -MP -MF .deps/alloc_c.Tpo -c /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/alloc_c.cc  -fPIC -DPIC -o .libs/alloc_c.o
libtool: compile:  /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/xg++ -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/ -nostdinc++ -nostdinc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include/aarch64-openwrt-linux-musl -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/libsupc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/include/backward -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/testsuite/util -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/bin/ -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/lib/ -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/include -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/sys-include -DHAVE_CONFIG_H -I. -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/posix -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/generic -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm -Wall -pthread -Werror -std=gnu++0x -funwind-tables -fno-exceptions -fno-rtti -fabi-version=4 -O2 -pipe -mcpu=cortex-a53 -fno-caller-saves -fno-plt -Wno-unused-variable -Wno-discarded-qualifiers -fhonour-copts -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -D_GNU_SOURCE -g -Os -MT aatree.lo -MD -MP -MF .deps/aatree.Tpo -c /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/aatree.cc  -fPIC -DPIC -o .libs/aatree.o
cc1plus: error: command-line option '-Wno-discarded-qualifiers' is valid for C/ObjC but not for C++ [-Werror]
cc1plus: error: command-line option '-Wno-discarded-qualifiers' is valid for C/ObjC but not for C++ [-Werror]
libtool: compile:  /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/xg++ -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/./gcc/ -nostdinc++ -nostdinc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include/aarch64-openwrt-linux-musl -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/include -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/libsupc++ -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/include/backward -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libstdc++-v3/testsuite/util -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -L/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/src/.libs -B/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libstdc++-v3/libsupc++/.libs -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/bin/ -B/home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/lib/ -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/include -isystem /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/aarch64-openwrt-linux-musl/sys-include -DHAVE_CONFIG_H -I. -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/linux -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/aarch64 -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/posix -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/config/generic -I/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm -Wall -pthread -Werror -std=gnu++0x -funwind-tables -fno-exceptions -fno-rtti -fabi-version=4 -O2 -pipe -mcpu=cortex-a53 -fno-caller-saves -fno-plt -Wno-unused-variable -Wno-discarded-qualifiers -fhonour-copts -Wformat -Werror=format-security -fstack-protector -D_FORTIFY_SOURCE=1 -Wl,-z,now -Wl,-z,relro -D_GNU_SOURCE -g -Os -MT alloc_cpp.lo -MD -MP -MF .deps/alloc_cpp.Tpo -c /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0/libitm/alloc_cpp.cc  -fPIC -DPIC -o .libs/alloc_cpp.o
cc1plus: error: command-line option '-Wno-discarded-qualifiers' is valid for C/ObjC but not for C++ [-Werror]
cc1plus: all warnings being treated as errors
make[8]: *** [Makefile:678: aatree.lo] Error 1
make[8]: *** Waiting for unfinished jobs....
cc1plus: all warnings being treated as errors
make[8]: *** [Makefile:678: alloc.lo] Error 1
cc1plus: all warnings being treated as errors
make[8]: *** [Makefile:678: alloc_c.lo] Error 1
cc1plus: all warnings being treated as errors
make[8]: *** [Makefile:678: alloc_cpp.lo] Error 1
make[8]: Leaving directory '/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libitm'
make[7]: *** [Makefile:836: all-recursive] Error 1
make[7]: Leaving directory '/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libitm'
make[6]: *** [Makefile:518: all] Error 2
make[6]: Leaving directory '/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/aarch64-openwrt-linux-musl/libitm'
make[5]: *** [Makefile:16193: all-target-libitm] Error 2
make[5]: Leaving directory '/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final'
make[4]: *** [Makefile:1034: all] Error 2
make[4]: Leaving directory '/home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final'
make[3]: *** [Makefile:92: /home/debian/openwrt/build_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/gcc-12.3.0-final/.built] Error 2
make[3]: Leaving directory '/home/debian/openwrt/toolchain/gcc/final'
time: toolchain/gcc/final/compile#2.48#1.25#2.41
    ERROR: toolchain/gcc/final failed to build.
make[2]: *** [toolchain/Makefile:93: toolchain/gcc/final/compile] Error 1
make[2]: Leaving directory '/home/debian/openwrt'
make[1]: *** [toolchain/Makefile:89: /home/debian/openwrt/staging_dir/toolchain-aarch64_cortex-a53_gcc-12.3.0_musl/stamp/.toolchain_compile] Error 2
make[1]: Leaving directory '/home/debian/openwrt'
make: *** [/home/debian/openwrt/include/toplevel.mk:232: world] Error 2

This is something that I cannot understand and couldn't find the wiki instructions. Is it valid for QHora too or only for AX3600.

Where/How should I add below option?

Seems it is enabled.

image

yes you have done right with the EXTRA_OPTIMIZATION setting ... i am unsure on what is the problem I use Fedora (38) and not Debian ... i don't know how to fix this issue you are having. I haven't done a distclean or start from scratch yet so maybe this is the issue...

-Wno-discarded-qualifiers is GCC option ! https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html

regarding the ubiformat you will need to check the wiki for the qnap... I am using the qnap in prod reason for using the ax3600 so i haven't looked at it yet it could be that the sysupgrade image works in the qnap ... but i haven't tried it as i said i have the ax3600 as a spare to try things ...

on a separate subject unrelated to your questions I have noticed that the QCA on the 4.5 build have a new directory setup so I created a new branch for the repo rmandrad-nss-packages (main-6.1-qca) and will work from here ... netlink and some others packages have gone and noting (and hoping) that these were tested against 6.1 it feels it makes more sense to use these instead. Shout if you feel i am going on the wrong path.

all note - all i am doing is not ready for prod nor even nearer is just work in progress that I am reporting so again don't try it if you are not ready for a bumpy ride

2 Likes

using fedora 38 why always error with this packages.
i don't know what i miss

image

image

In the Github I don't see the build for Buffalo WXR-5950AX12, any guidance on how to do it?

i see the profile.

image

1 Like

I suffer form the same issues.
I can only say that it is obviously very sensitive job to compile successfully.

From my experience with R7800 builds I can say this.
Lastly I've tried to compile based on rmandrad's NSS 6.1 repo. It was unsuccessful.
I've used the same Debian environment on which I build images for R7800.
But I had issues with R7800 compile process till I finally found a working sequence that successfully build a working image.
For example I have to use an exact .config to build the image (exclusively NSS modules) successfully first and then I use my own .config to customize the build and finally compile again. Otherwise it always throws errors and build fails.
This is really brittle job and I think there should be more clearer/easier way to do this. I completely understand that this is not an easy task.