Ошибка компоновщика Platformio при включении <functional> - PullRequest
0 голосов
/ 21 апреля 2019

Я использую PlatformIO (с расширением кода VS) в Windows 10 и собираю плату для Teensy 3.5.

Я уменьшил ошибку компоновщика в одном из моих проектов до следующегокусок кода:

#include <Arduino.h>
#include <functional>

void setup()
{
   // Serial.println();
  std::function<void()> func;
  func();
}

void loop() {}

Когда я пытаюсь скомпилировать и связать это, он компилируется нормально, но не связывается.Если я раскомментирую Serial.println (), он связывает и компилирует.

Я использую следующие настройки в файле platformio.ini:

[env:teensy35]
platform = teensy
board = teensy35
framework = arduino

Ошибка, возникающая при сбоессылка на это:

c: /users/zackh/.platformio/packages/toolchain-gccarmnoneeabi/bin /../ lib / gcc / arm-none-eabi / 5.4.1 /../ ../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-writer.o): в функции _write_r': writer.c:(.text._write_r+0x12): undefined reference to _write 'collect2.exe: ошибка: ld вернул 1 состояние выхода

Есть идеи, что здесь происходит?

1 Ответ

0 голосов
/ 21 апреля 2019

Я нашел решение включить следующую строку в проект platformio.ini.

build_flags = -llibc -lc
...