gpt4 book ai didi

c - 构建驱动程序产生 `error: void value not ignored as it ought to be`

转载 作者:行者123 更新时间:2023-12-04 12:11:07 26 4
gpt4 key购买 nike

我发现返回 void 时会抛出错误消息 error: void value not ignored as it should be be。很公平。

我在尝试为我的 WIFI 加密狗构建驱动程序时遇到此错误。这是错误输出:

birger@raspberrypi:~/AL100ac $ sudo make ARCH=arm
make ARCH=arm CROSS_COMPILE= -C /lib/modules/4.4.26+/build M=/home/birger/AL100ac modules
make[1]: Entering directory '/usr/src/linux-headers-4.4.26+'
CC [M] /home/birger/AL100ac/core/rtw_debug.o
/home/birger/AL100ac/core/rtw_debug.c: In function ‘dump_drv_version’:
/home/birger/AL100ac/core/rtw_debug.c:65:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:66:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘dump_log_level’:
/home/birger/AL100ac/core/rtw_debug.c:71:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘mac_reg_dump’:
/home/birger/AL100ac/core/rtw_debug.c:98:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:103:4: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:104:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:106:4: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘bb_reg_dump’:
/home/birger/AL100ac/core/rtw_debug.c:114:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:118:4: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:119:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:121:4: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘rf_reg_dump’:
/home/birger/AL100ac/core/rtw_debug.c:138:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:141:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:146:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:147:4: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:149:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_read_reg’:
/home/birger/AL100ac/core/rtw_debug.c:208:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:215:4: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:218:4: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:221:4: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:224:4: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_fwstate’:
/home/birger/AL100ac/core/rtw_debug.c:267:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_sec_info’:
/home/birger/AL100ac/core/rtw_debug.c:278:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:282:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:285:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:287:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:290:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:292:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:295:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:297:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_mlmext_state’:
/home/birger/AL100ac/core/rtw_debug.c:311:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_roam_flags’:
/home/birger/AL100ac/core/rtw_debug.c:322:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_roam_param’:
/home/birger/AL100ac/core/rtw_debug.c:356:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:357:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_qos_option’:
/home/birger/AL100ac/core/rtw_debug.c:426:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_ht_option’:
/home/birger/AL100ac/core/rtw_debug.c:438:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_rf_info’:
/home/birger/AL100ac/core/rtw_debug.c:450:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:453:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_survey_info’:
/home/birger/AL100ac/core/rtw_debug.c:478:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:499:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_ap_info’:
/home/birger/AL100ac/core/rtw_debug.c:532:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:533:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:534:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:535:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:536:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:538:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:539:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:540:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:541:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:542:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:545:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:546:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:547:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:555:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:562:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_adapter_state’:
/home/birger/AL100ac/core/rtw_debug.c:578:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_trx_info’:
/home/birger/AL100ac/core/rtw_debug.c:594:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:596:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:598:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:604:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:608:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_rate_ctl’:
/home/birger/AL100ac/core/rtw_debug.c:621:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:622:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:624:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_suspend_resume_info’:
/home/birger/AL100ac/core/rtw_debug.c:695:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:696:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:697:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:698:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:699:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:700:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:701:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:702:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:703:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:704:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:705:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:706:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:707:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:708:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:709:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:710:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:711:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:712:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:713:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:714:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:715:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:716:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:717:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:718:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:719:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:720:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:721:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:722:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_rx_signal’:
/home/birger/AL100ac/core/rtw_debug.c:996:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:998:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:999:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1000:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_hw_status’:
/home/birger/AL100ac/core/rtw_debug.c:1016:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_ht_enable’:
/home/birger/AL100ac/core/rtw_debug.c:1065:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_bw_mode’:
/home/birger/AL100ac/core/rtw_debug.c:1103:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_ampdu_enable’:
/home/birger/AL100ac/core/rtw_debug.c:1143:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_rx_ampdu’:
/home/birger/AL100ac/core/rtw_debug.c:1184:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_en_fwps’:
/home/birger/AL100ac/core/rtw_debug.c:1235:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_rx_stbc’:
/home/birger/AL100ac/core/rtw_debug.c:1290:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_all_sta_info’:
/home/birger/AL100ac/core/rtw_debug.c:1381:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1398:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1399:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1400:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1401:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1403:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1404:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1405:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1406:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1408:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1409:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1410:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1411:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1412:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1414:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1415:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1416:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1417:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1418:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1419:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1420:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1427:7: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1439:5: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c: In function ‘proc_get_best_channel’:
/home/birger/AL100ac/core/rtw_debug.c:1512:3: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1517:2: error: void value not ignored as it ought to be
/home/birger/AL100ac/core/rtw_debug.c:1518:2: error: void value not ignored as it ought to be
scripts/Makefile.build:258: recipe for target '/home/birger/AL100ac/core/rtw_debug.o' failed
make[2]: *** [/home/birger/AL100ac/core/rtw_debug.o] Error 1
Makefile:1400: recipe for target '_module_/home/birger/AL100ac' failed
make[1]: *** [_module_/home/birger/AL100ac] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.4.26+'
Makefile:1385: recipe for target 'modules' failed
make: *** [modules] Error 2

具体来说,当调用名为 DBG_871X_SEL_NL 的函数时会抛出错误。

所以我猜宏是导致此问题的原因。我试着搜索它的驱动程序源代码,它是这样定义的:

/* dump message to selected 'stream' with driver-defined prefix */
#define DBG_871X_SEL_NL(sel, fmt, arg...) \
do {\
if (sel == RTW_DBGDUMP)\
DBG_871X_LEVEL(_drv_always_, fmt, ##arg); \
else {\
if(_seqdump(sel, fmt, ##arg)) /*rtw_warn_on(1)*/; \
} \
}while(0)

我无法理解导致此错误的原因以及如何解决它?

我搜索了一下,找到了这个:https://github.com/hadess/rtl8723bs/issues/30

会不会是一个影响我的类似错误?

编辑:

我应该提到在我更新内核之前同样的代码可以工作。所以我假设内核头文件中的一些函数以前返回一个值,现在是一个空函数。

最佳答案

发现内核更新后_seqdump函数不再有返回值

因此,我通过将 if(_seqdump(sel, fmt, ##arg)) 替换为 _seqdump(sel, fmt, ##arg) 来修复错误/p>

这是受影响的两个宏:

/* dump message to selected 'stream' */
#define DBG_871X_SEL(sel, fmt, arg...) \
do {\
if (sel == RTW_DBGDUMP)\
_DBG_871X_LEVEL(_drv_always_, fmt, ##arg); \
else {\
_seqdump(sel, fmt, ##arg) /*rtw_warn_on(1)*/; \
} \
}while(0)

/* dump message to selected 'stream' with driver-defined prefix */
#define DBG_871X_SEL_NL(sel, fmt, arg...) \
do {\
if (sel == RTW_DBGDUMP)\
DBG_871X_LEVEL(_drv_always_, fmt, ##arg); \
else {\
_seqdump(sel, fmt, ##arg) /*rtw_warn_on(1)*/; \
} \
}while(0)

关于c - 构建驱动程序产生 `error: void value not ignored as it ought to be`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40515929/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com