Linux
我如何在 linux 上安裝 atinout
我是 linux 新手,遇到了這個問題。我正在嘗試執行 USSD 命令,建議使用
atinout
,但是從他們的頁面檢查,我似乎無法找到如何安裝它。我從sourceforge下載了 zip ,它是atinout-0.9.1
.我嘗試執行
make
(雖然我不確定它是否可以工作)並得到以下輸出:gcc -o atinout -W -Wall -Wextra -Werror -DVERSION=\"0.9.1\" -g atinout.c atinout.c: In function ‘is_final_result’: atinout.c:141:6: error: this statement may fall through [-Werror=implicit-fallthrough=] 141 | if (strcmp(&response[1], "K\r\n") == 0) { | ^ atinout.c:145:2: note: here 145 | default: | ^~~~~~~ cc1: all warnings being treated as errors make: *** [Makefile:14: atinout] Error 1
有人可以指導我嗎?謝謝。
我在 GCC 9.3.0 中遇到同樣的錯誤。一種可能的解決方法是
-Werror
從 Makefile 中的這一行中刪除:CFLAGS = -W -Wall -Wextra -Werror \
使它看起來像這樣:
CFLAGS = -W -Wall -Wextra \
開發 atinout 時,GCC 可能還沒有隱式失敗警告(它僅在 2016 年的送出 81fea426da8 中實現)或者使用另一個編譯器來編譯它。
另一個解決方法是嘗試不同的編譯器,例如我沒有收到任何關於 clang 10.0.1 的警告或錯誤:
$ make CC=clang clang -o atinout -W -Wall -Wextra -Werror -DVERSION=\"0.9.1\" -g atinout.c
在這兩種情況下,您最終都會在目前工作目錄中使用 atinout:
$ ./atinout --version atinout version 0.9.1 Copyright (C) 2013 Håkon Løvdal <hlovdal@users.sourceforge.net> This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions; see http://www.gnu.org/licenses/gpl.html for details.