Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ AVR-C错误:预期为'='''''';asm&x27;或'__属性';在'之前<';代币_C++_Arduino_Winavr - Fatal编程技术网

C++ AVR-C错误:预期为'='''''';asm&x27;或'__属性';在'之前<';代币

C++ AVR-C错误:预期为'='''''';asm&x27;或'__属性';在'之前<';代币,c++,arduino,winavr,C++,Arduino,Winavr,我目前正试图获取为Arduino USB主机编写的代码库,并将其与Arduino核心库分离,以便在非Arduino微控制器项目中使用该代码 从代码来看,Arduino代码库没有太多硬依赖,但我遇到了一些奇怪的错误,可能是由于Arduino构建系统和。具体地说,我在大约75%的头文件中发现以下错误,每个头文件出现几十次: error: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token 我应该注意的是,我确实将

我目前正试图获取为Arduino USB主机编写的代码库,并将其与Arduino核心库分离,以便在非Arduino微控制器项目中使用该代码

从代码来看,Arduino代码库没有太多硬依赖,但我遇到了一些奇怪的错误,可能是由于Arduino构建系统和。具体地说,我在大约75%的头文件中发现以下错误,每个头文件出现几十次:

error: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token
我应该注意的是,我确实将
Arduino.h
复制到了我的include路径,如果我将
Arduino.h
包含到我的主
.c
文件中,它可以很好地编译,因此不存在问题。但是,包括
printhex.h
,会产生以下结果:

In file included from MIDI.c:38:
Lib/HostShield/printhex.h:26: error: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token
Lib/HostShield/printhex.h:41: error: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token
Lib/HostShield/printhex.h:56: error: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token
make: *** [MIDI.o] Error 1
template <class T>
MIDI.c:38中包含的文件中的

Lib/HostShield/printhex.h:26:错误:应为“=”,“,”,“;”,”AS'''或''At'属性'>之前''p>你试图编译C++代码作为C。你可以(通常)做相反的操作,但是你需要把它改写成纯C或者使用C++编译器(<代码> avr g++)/代码>,它出现了。将文件更改为<代码> .CPP可以告诉构建系统自动使用C++编译器。< /P>你是否试图用C编译器编译C++代码?你试过将IDE编译成C++吗?可能他使用的是代码> AVR GCC < /C>。当然还有一个
avg-g++
——至少在我的工具链中。我没有写这个,它在Arduino IDE中100%编译,它使用的WinAVR版本比我使用的稍旧。@qwertymodo:没有人说你是否编写了它,是否使用IDE,或者版本是否更旧。你使用C编译器编译C++代码吗?最终还是由你来验证或否认这个。我目前正在挖掘LuFaMag文件,看看他们是否正在调用C++编译器。我不能确认它是否在这么做,但是C++编译的配置有很多引用。任何人都比我熟悉LuFa构建系统(与Git中继线同步大约2个星期前,如果这有任何区别)可以更肯定地说。@ QWEYTYMODO“看起来像MaFrimeX没有正确检测C++代码的存在”
template <class T>