我相信-g打开调试信息输出:
09-19 19:31:34.788: INFO/System.out(24948): /data/data/app/sdk/hardware/tools/avr/bin/avr-g++ -c -g -Os -w -fno-exceptions -ffunction-sections -fdata-sections -mmcu=atmega328p -DF_CPU=16000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=105 -I/data/data/app/sdk/hardware/arduino/cores/arduino -I/data/data/app/sdk/hardware/arduino/variants/standard /data/data/app/build/Blink.cpp -o /data/data/app/build/Blink.cpp.o
09-19 19:31:34.828: WARN/System.err(24948): /data/data/app/sdk/hardware/tools/avr/bin/avr-g++[1]: syntax error: ')' unexpected
不确定命令行是否正确构建,并且可能会遗漏一些参数,但它是arduino IDE代码。
为什么错误行号和列丢失以及如何将其打开?
根据评论更新:
OP 在 Linux 系统上安装了 MacOS
g++
可执行文件。 Linux系统无法将其识别为可执行文件,因此尝试将其作为shell脚本执行,从而导致出现误导性的错误消息。
特定的错误消息:
syntax error: ')' unexpected
看起来像是 shell 错误,而不是编译器错误。
在我的系统上,带有无关
)
的 C++ 程序会导致 g++ 生成以下消息:
c.cpp: In function ‘int main()’:
c.cpp:2:5: error: expected primary-expression before ‘)’ token
c.cpp:2:5: error: expected ‘;’ before ‘)’ token
请注意,这些消息包括行号和列号,就像 g++ 语法错误消息通常所做的那样。
而带有无关的
)
的 Bourne shell 脚本会生成如下消息:
./foo.sh: 3: ./foo.sh: Syntax error: ")" unexpected
与您所看到的非常相似,但不完全相同。 (差异很容易由
sh
的不同实现引起。)
在某个地方,要么您的 shell 脚本存在语法错误,要么您尝试执行 shell 脚本以外的其他内容,就好像它是 shell 脚本一样。
您运行的哪个命令会产生此错误?是
/data/data/app/sdk/hardware/tools/avr/bin/avr-g++
一个正确的可执行文件?如果你跑步会发生什么
/data/data/app/sdk/hardware/tools/avr/bin/avr-g++ --version
从命令行? 怎么样
file /data/data/app/sdk/hardware/tools/avr/bin/avr-g++ ?
来自评论,此命令:
/data/data/app/sdk/hardware/tools/avr/bin/avr-g++ --version
产生相同的错误消息:
syntax error: ')' unexpected).
这意味着
avr-g++
命令是可执行的,但系统无法将其识别为可执行文件,因此它尝试将其作为 shell 脚本运行。
您在什么操作系统上运行它?
avr-g++
命令是否旨在在主机系统或目标上运行(在 Arduino 上运行 g++
似乎不太可能)。比较的输出
file /data/data/app/sdk/hardware/tools/avr/bin/avr-g++
例如,
file /usr/bin/g++
或者,如果它是符号链接,则指向它指向的任何实际文件(在我的系统上
/usr/bin/g++-4.7
)。关键是要确定这个 avr-g++
是什么类型的文件,并将其与已知适合您的系统的可执行文件进行比较。 (为了百分百确定,请尝试/usr/bin/g++ --version
。)
例如,在我的系统上,我得到:
$ file /usr/bin/g++
/usr/bin/g++: symbolic link to `g++-4.7'
$ file /usr/bin/g++-4.7
/usr/bin/g++-4.7: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0xac398e1061dbb1a6f8da022f0a1616f15cf07085, stripped