networking: compilation error on ubuntu 24
Denys Vlasenko
vda.linux at googlemail.com
Sat Jul 13 14:50:03 UTC 2024
Your headers are not new enough for tc applet.
Disable CONFIG_TC, or install newer headers.
On Thu, Jul 11, 2024 at 2:14 PM dalton.c.russell
<dalton.c.russell at protonmail.com> wrote:
>
>
> hey all,
> I'm running into multiple errors while trying to build busybox v1.36.1 on Ubuntu 24.04.
>
> ```
> CC networking/tc.o
> networking/tc.c: In function \u2018cbq_print_opt\u2019:
> networking/tc.c:236:27: error: \u2018TCA_CBQ_MAX\u2019 undeclared (first use in this function); did you mean \u2018TCA_CBS_MAX\u2019?
> 236 | struct rtattr *tb[TCA_CBQ_MAX+1];
> | ^~~~~~~~~~~
> | TCA_CBS_MAX
> networking/tc.c:236:27: note: each undeclared identifier is reported only once for each function it appears in
> networking/tc.c:249:16: error: \u2018TCA_CBQ_RATE\u2019 undeclared (first use in this function); did you mean \u2018TCA_TBF_RATE64\u2019?
> 249 | if (tb[TCA_CBQ_RATE]) {
> | ^~~~~~~~~~~~
> | TCA_TBF_RATE64
> networking/tc.c:255:16: error: \u2018TCA_CBQ_LSSOPT\u2019 undeclared (first use in this function)
> 255 | if (tb[TCA_CBQ_LSSOPT]) {
> | ^~~~~~~~~~~~~~
> networking/tc.c:256:61: error: invalid application of \u2018sizeof\u2019 to incomplete type \u2018struct tc_cbq_lssopt\u2019
> 256 | if (RTA_PAYLOAD(tb[TCA_CBQ_LSSOPT]) < sizeof(*lss))
> | ^
> networking/tc.c:261:16: error: \u2018TCA_CBQ_WRROPT\u2019 undeclared (first use in this function)
> 261 | if (tb[TCA_CBQ_WRROPT]) {
> | ^~~~~~~~~~~~~~
> networking/tc.c:262:61: error: invalid application of \u2018sizeof\u2019 to incomplete type \u2018struct tc_cbq_wrropt\u2019
> 262 | if (RTA_PAYLOAD(tb[TCA_CBQ_WRROPT]) < sizeof(*wrr))
> | ^
> networking/tc.c:267:16: error: \u2018TCA_CBQ_FOPT\u2019 undeclared (first use in this function)
> 267 | if (tb[TCA_CBQ_FOPT]) {
> | ^~~~~~~~~~~~
> networking/tc.c:268:59: error: invalid application of \u2018sizeof\u2019 to incomplete type \u2018struct tc_cbq_fopt\u2019
> 268 | if (RTA_PAYLOAD(tb[TCA_CBQ_FOPT]) < sizeof(*fopt))
> | ^
> networking/tc.c:273:16: error: \u2018TCA_CBQ_OVL_STRATEGY\u2019 undeclared (first use in this function)
> 273 | if (tb[TCA_CBQ_OVL_STRATEGY]) {
> | ^~~~~~~~~~~~~~~~~~~~
> networking/tc.c:274:67: error: invalid application of \u2018sizeof\u2019 to incomplete type \u2018struct tc_cbq_ovl\u2019
> 274 | if (RTA_PAYLOAD(tb[TCA_CBQ_OVL_STRATEGY]) < sizeof(*ovl))
> | ^
>
> networking/tc.c:277:50: error: invalid application of \u2018sizeof\u2019 to incomplete type \u2018struct tc_cbq_ovl\u2019
> 277 | (unsigned) sizeof(*ovl));
> | ^
> networking/tc.c:293:23: error: invalid use of undefined type \u2018struct tc_cbq_lssopt\u2019
> 293 | if (lss && lss->flags) {
> | ^~
> networking/tc.c:296:24: error: invalid use of undefined type \u2018struct tc_cbq_lssopt\u2019
> 296 | if (lss->flags&TCF_CBQ_LSS_BOUNDED) {
> | ^~
> networking/tc.c:296:32: error: \u2018TCF_CBQ_LSS_BOUNDED\u2019 undeclared (first use in this function)
> 296 | if (lss->flags&TCF_CBQ_LSS_BOUNDED) {
> | ^~~~~~~~~~~~~~~~~~~
> networking/tc.c:300:24: error: invalid use of undefined type \u2018struct tc_cbq_lssopt\u2019
> 300 | if (lss->flags&TCF_CBQ_LSS_ISOLATED) {
> | ^~
> networking/tc.c:300:32: error: \u2018TCF_CBQ_LSS_ISOLATED\u2019 undeclared (first use in this function)
> 300 | if (lss->flags&TCF_CBQ_LSS_ISOLATED) {
> | ^~~~~~~~~~~~~~~~~~~~
> networking/tc.c:308:24: error: invalid use of undefined type \u2018struct tc_cbq_wrropt\u2019
> 308 | if (wrr->priority != TC_CBQ_MAXPRIO)
> | ^~
> networking/tc.c:308:38: error: \u2018TC_CBQ_MAXPRIO\u2019 undeclared (first use in this function)
> 308 | if (wrr->priority != TC_CBQ_MAXPRIO)
> | ^~~~~~~~~~~~~~
> networking/tc.c:309:46: error: invalid use of undefined type \u2018struct tc_cbq_wrropt\u2019
> 309 | printf("prio %u", wrr->priority);
> | ^~
> networking/tc.c:313:43: error: invalid use of undefined type \u2018struct tc_cbq_wrropt\u2019
> 313 | printf("/%u ", wrr->cpriority);
> | ^~
> networking/tc.c:314:32: error: invalid use of undefined type \u2018struct tc_cbq_wrropt\u2019
> 314 | if (wrr->weight != 1) {
> | ^~
> networking/tc.c:315:65: error: invalid use of undefined type \u2018struct tc_cbq_wrropt\u2019
> 315 | print_rate(buf, sizeof(buf), wrr->weight);
> | ^~
>
> networking/tc.c:318:32: error: invalid use of undefined type \u2018struct tc_cbq_wrropt\u2019
> 318 | if (wrr->allot)
> | ^~
> networking/tc.c:319:57: error: invalid use of undefined type \u2018struct tc_cbq_wrropt\u2019
> 319 | printf("allot %ub ", wrr->allot);
> | ^~
> networking/tc.c:236:24: warning: unused variable \u2018tb\u2019 [-Wunused-variable]
> 236 | struct rtattr *tb[TCA_CBQ_MAX+1];
> | ^~
> make[1]: *** [scripts/Makefile.build:198: networking/tc.o] Error 1
> make: *** [Makefile:744: networking] Error 2
>
> ```
>
> not really sure what's missing. any help would be appreciated !
>
> Dalton
> _______________________________________________
> busybox mailing list
> busybox at busybox.net
> http://lists.busybox.net/mailman/listinfo/busybox
More information about the busybox
mailing list