将Arduino库与c++';弦流

将Arduino库与c++';弦流,arduino,linker,stringstream,esp8266,platformio,Arduino,Linker,Stringstream,Esp8266,Platformio,我正在使用esp8266和平台来写一个简单的草图 #include <sstream> #include <Arduino.h> std::stringstream s; void setup() { Serial.begin(9600); Serial.println("Test"); } void loop() { } #包括 #包括 std::strings; 无效设置() { Serial.begin(9600); 序列号。打印号(“测试

我正在使用esp8266平台来写一个简单的草图

#include <sstream>
#include <Arduino.h>

std::stringstream s;

void setup()
{
    Serial.begin(9600);
    Serial.println("Test");
}

void loop()
{

}
#包括
#包括
std::strings;
无效设置()
{
Serial.begin(9600);
序列号。打印号(“测试”);
}
void循环()
{
}
一切都应该正确设置,大多数草图都没有问题。 但当我尝试使用stringstreams时,platformio链接固件时就会出现错误

platformio run
[12/29/16 12:11:32] Processing esp12e (platform: espressif8266, board: nodemcu, framework: arduino)

Verbose mode can be enabled via `-v, --verbose` option
Collected 23 compatible libraries
Looking for dependencies...
Project does not have dependencies
Linking .pioenvs\esp12e\firmware.elf

c:/users/simon/.platformio/packages/toolchain-xtensa/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: .pioenvs\esp12e\firmware.elf section `.text' will not fit in region `iram1_0_seg'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o):(.literal._ZSt16__convert_from_vRKPiPciPKcz[_ZSt16__convert_from_vRKPiPciPKcz]+0x4): undefined reference to `setlo
cale'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o):(.literal._ZSt16__convert_from_vRKPiPciPKcz[_ZSt16__convert_from_vRKPiPciPKcz]+0xc): undefined reference to `vspri
ntf'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o):(.literal._ZSt9use_facetISt5ctypeIcEERKT_RKSt6locale[_ZSt9use_facetISt5ctypeIcEERKT_RKSt6locale]+0x4): undefined r
eference to `std::__throw_bad_cast()'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o):(.literal._ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES3_S3_RSt8ios_baseccT_
[_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES3_S3_RSt8ios_baseccT_]+0x0): undefined reference to `memchr'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o): In function `std::__convert_from_v(int* const&, char*, int, char const*, ...)':
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `setlocale'
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `setlocale'
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `vsprintf'
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `setlocale'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o): In function `std::ctype<char> const& std::use_facet<std::ctype<char> >(std::locale const&)':
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `std::__throw_bad_cast()'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o): In function `std::numpunct<char> const& std::use_facet<std::numpunct<char> >(std::locale const&)':
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `std::__throw_bad_cast()'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o): In function `std::num_put<char, std::ostreambuf_iterator<char, std::char_traits<char> > > const& std::use_facet<s
td::num_put<char, std::ostreambuf_iterator<char, std::char_traits<char> > > >(std::locale const&)':
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `std::__throw_bad_cast()'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o): In function `std::num_get<char, std::istreambuf_iterator<char, std::char_traits<char> > > const& std::use_facet<s
td::num_get<char, std::istreambuf_iterator<char, std::char_traits<char> > > >(std::locale const&)':
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `std::__throw_bad_cast()'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o): In function `std::moneypunct<char, true> const& std::use_facet<std::moneypunct<char, true> >(std::locale const&)'
:
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `std::__throw_bad_cast()'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o):/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libst
dc++-v3/include/bits/locale_classes.tcc:114: more undefined references to `std::__throw_bad_cast()' follow
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o): In function `std::ostreambuf_iterator<char, std::char_traits<char> > std::num_put<char, std::ostreambuf_iterator<
char, std::char_traits<char> > >::_M_insert_float<double>(std::ostreambuf_iterator<char, std::char_traits<char> >, std::ios_base&, char, char, double) const':
/Users/igrokhotkov/e/ESPTools/crosstool-NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114: undefined reference to `memchr'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o): In function `std::ostreambuf_iterator<char, std::char_traits<char> > std::num_put

A lot more similar errors

----------

collect2.exe: error: ld returned 1 exit status
*** [.pioenvs\esp12e\firmware.elf] Error 1
 [ERROR] Took 8.38 seconds
platformio运行
[12/29/16 12:11:32]处理esp12e(平台:EspressF8266,板:nodemcu,框架:arduino)
详细模式可以通过“-v,--Verbose”选项启用
收集23个兼容库
正在查找依赖项。。。
项目没有依赖项
Linking.pioenvs\esp12e\firmware.elf
c:/users/simon/.platformio/packages/toolschain xtensa/bin/./lib/gcc/xtensa-lx106-elf/4.8.2/../../../../../../../xtensa-lx106-elf/bin/ld.exe:.pioenvs\esp12e\firmware.elf节“.text”将不适合区域“iram1\u 0\u seg”
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o):(.literal._ZSt16_uconvert_from_vrkpipkcz[_ZSt16_uconvert_from_vrkpipkcz]+0x4):对“setlo”的未定义引用
卡尔
C:\users\simon\.platformio\packages\framework-arduinoespressF8266\tools\sdk\lib\libstdc++.a(locale-inst.o):(.literal._ZSt16_convert_from_vrkpipcz[_ZSt16_convert_from_vrkpipcz]+0xc):未定义的对“vspri”的引用
ntf'
C:\users\simon\.platformio\packages\framework-arduinoespressif8266\tools\sdk\lib\libstdc++.a(locale-inst.o):(.literal.\u ZSt9use\u faceist5ctypeerkt\u RKSt6locale[\u ZSt9use\u faceist5ctypeerkt\u RKSt6locale]+0x4):未定义的r
对“std::u throw_bad_cast()”的引用
C:\users\simon\.platformio\packages\framework-arduinoespressF8266\tools\sdk\lib\libstdc++.a(locale-inst.o):(.literal.\u ZNKSt7num\u putIcSt19ostreambuf\u iteratorIcSt11char\u traitsiecee15\u insert\u floatides3\u S3\u RSt8ios\u baseccT_
[\u ZNKSt7num\u putIcSt19ostreambuf\u iteratorIcSt11char\u traitsiecee15\u M\u insert\u floatides3\u RSt8ios\u baseccT\u0]+0x0):未定义对“memchr”的引用
C:\users\simon\.platformio\packages\framework-arduinoespressf8266\tools\sdk\lib\libstdc++.a(locale-inst.o):在函数“std::u convert_from_v(int*const&,char*,int,char-const*,…)”中:
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“setlocale”的未定义引用
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“setlocale”的未定义引用
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“vsprintf”的未定义引用
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“setlocale”的未定义引用
C:\users\simon\.platformio\packages\framework-arduinoespressF8266\tools\sdk\lib\libstdc++.a(locale-inst.o):在函数“std::ctype const&std::use_facet(std::locale const&)”中:
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“std:”的未定义引用
C:\users\simon\.platformio\packages\framework-arduinoespressF8266\tools\sdk\lib\libstdc++.a(locale-inst.o):在函数“std::numpunct const&std::use_facet(std::locale const&)”中:
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“std:”的未定义引用
C:\users\simon\.platformio\packages\framework-arduinoespressF8266\tools\sdk\lib\libstdc++.a(locale-inst.o):在函数“std::num\u put const&std::use_facet(std::locale const&)”中:
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“std:”的未定义引用
C:\users\simon\.platformio\packages\framework-arduinoespressF8266\tools\sdk\lib\libstdc++.a(locale-inst.o):在函数“std::num_get const&std::use_facet(std::locale const&)”中:
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“std:”的未定义引用
C:\users\simon\.platformio\packages\framework-arduinoespressF8266\tools\sdk\lib\libstdc++.a(locale-inst.o):在函数“std::moneypunct const&std::use_facet(std::locale const&)”中
:
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“std:”的未定义引用
C:\users\simon\.platformio\packages\framework-arduinoespressf8266\tools\sdk\lib\libstdc++.a(locale-inst.o):/users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build/build cc-gcc-final/xtensa-lx106-elf/libst
dc++-v3/include/bits/locale\u classes.tcc:114:下面是对“std::\uu throw\u bad\u cast()”的更多未定义引用
C:\users\simon\.platformio\packages\framework-arduinoespressF8266\tools\sdk\lib\libstdc++.a(locale-inst.o):在函数“std::ostreambuf_迭代器std::num_put>中::_M_insert_float(std::ostreambuf_迭代器,std::ios_base&,char,char,double)const”:
/Users/igrokhotkov/e/ESPTools/crosstool NG/.build/xtensa-lx106-elf/build/build-cc-gcc-final/xtensa-lx106-elf/libstdc++-v3/include/bits/locale_classes.tcc:114:对“memchr”的未定义引用
C:\users\simon\.platformio\packages\framework-arduinoespressF8266\tools\sdk\lib\libstdc++.a(locale-inst.o):在函数'std::ostreambuf\u迭代器std::num\u put中
还有很多类似的错误
----------
收藏2.ex