评论
同样在这里,从当前的 Marlin 错误修复分支或从 BT 提供的 Marlin 版本编译时。 |
我在主要的 Marlin 分支和 BTT 分支以及 skr mini e3 v1.2 和 v2 固件中也遇到了这个编译问题。 Building in release mode
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:37:43:注意:建议替代:’SPI_CR1_LSBFIRST’
|
同样,即使是从这个 repo 克隆的未更改固件也不会编译。 |
找到临时解决方法,注释掉这个: |
这似乎不是永久性的解决方法。该回购最近在过去约 21 小时内进行了编辑。他们可能引入了一个破坏了某些东西的变化。 |
是的,好像是 |
我不建议注释掉该依赖项,因为它似乎是针对温度传感器的 SPI/I2C 通信。 |
.png)
Adafruit 目前正在处理这个问题。它在前面提到的链接。 |
我注册了一个帐户,这样我就可以发表评论并说声非常感谢。 |
有趣的是,我第一次在我的新 Skr mini 上刷固件,这是最近的一个问题,哈哈。我更喜欢旧的 Arduino 方式,但我又在 MacOS 上使用 visual studio,如果我调整窗口大小,Arduino 会崩溃…… |
即使更改行后我仍收到编译错误@lastone2print提及。 在 platformio.ini 中,第 32 行设置为 Adafruit_MAX31865= https://github.com/adafruit/Adafruit_MAX31865/archive/1.1.0.zip,但我仍然收到: |
对我来说,它正在处理 platformio.ini 中第 32 行的更改 |
它对我来说在最新的错误修复方面效果很好。 |
我也有同样的问题。尝试在更改后清理您的项目。或者在运行构建之前删除并重新开始 |
我知道这是针对以前版本的这个问题,但我通过删除 adafruit 文件解决了这个问题(反正我不打算使用它们) |
嗨, 我有同样的编译器错误,我读到 v1.1.0 是要使用的那个。但是即使我点击了链接并下载了它 – 我该怎么办呢?我把它放在哪里?我必须更改 configuration.h 吗?如果是这样,有什么变化? 对不起伙计们-这超出了我的范围… 邓肯 |
啊哈!@ 在 platformio.ini 中找到它。将行更改为 v1.1.0 并编译 – 没问题! 耶! |
在努力让它进入编译部分(在这里阅读了大量内容)之后,我也遇到了这个错误,虽然我的代码看起来与你的代码略有不同,但我将其复制粘贴到这些区域并进行了编译。太感谢了! |
我收到以下错误,似乎找不到解决方案。
编译.pio\build\STM32F103RC_btt_512K\liba17\USBComposite\Consumer.cpp.o
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_I2CDevice.cpp: 在成员函数’bool Adafruit_I2CDevice::read(uint:bol*), size
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_I2CDevice.cpp:160:79: 错误:没有匹配函数来调用’TwoWire::requestFrom(uint8_t, uint8_t, uint8_t)’
size_t recv = _wire->requestFrom((uint8_t) _地址,(uint8_t)len,(uint8_t)停止);
^
在 C:\Users\lastp.platformio\packages\framework-arduinoststm32-maple\STM32F1\libraries\Wire/Wire.h:42:0 中包含的文件中,
来自 .pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_I2CDevice.h :1,
来自 .pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_I2CDevice.cpp:1:
C:\Users\lastp.platformio\packages\framework-arduinoststm32-maple\STM32F1\libraries\Wire/utility/WireBase.h:101:11:注意:候选:uint8 WireBase::requestFrom(uint8, int)
uint8 requestFrom(uint8, int);
^~~~~~~~~~~
C:\Users\lastp.platformio\packages\framework-arduinoststm32-maple\STM32F1\libraries\Wire/utility/WireBase.h:101:11: 注意:候选人需要 2 个参数, 3 提供
C:\Users\lastp.platformio\packages\framework-arduinoststm32-maple\STM32F1\libraries\Wire/utility/WireBase.h:106:11: note: candidate: uint8 WireBase::requestFrom(int, int)
uint8 requestFrom(int, int);
^~~~~~~~~~~
C:\Users\lastp.platformio\packages\framework-arduinoststm32-maple\STM32F1\libraries\Wire/utility/WireBase.h:106:11:注意:候选人需要 2 个参数,提供 3 个
*** [.pio\build \STM32F103RC_btt_512K\lib2ab\Adafruit BusIO_ID6214\Adafruit_I2CDevice.cpp.o] Error 1
In file included from .pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.h:55:0,
from .pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.cpp :17:
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:37:43: error: ‘SPI_BITORDER_MSBFIRST’ was not declared in this scope
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~~~ ~~~~~~~~
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:37:43:注意:建议替代:’SPI_CR1_LSBFIRST’
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~~~~~~~~~ ~~
SPI_CR1_LSBFIRST
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:42:43: error: ‘SPI_BITORDER_MSBFIRST’ was not declared in this scope
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~~ ~~~~~~~~
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:42:43:注意:建议的替代方案:’SPI_CR1_LSBFIRST’
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~ ~~~~~~~~~~
SPI_CR1_LSBFIRST
在 .pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.cpp:17:0 中包含的文件中:
.pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.h:84:32:将参数传递给警告非指针 NULL Adafruit_SPIDevice::Adafruit_SPIDevice(int8_t, uint32_t, BitOrder, uint8_t, SPIClass*)’ [-Wconversion-null]
Adafruit_SPIDevice spi_dev = NULL;
^~~~
在 c:\users\lastp.platformio\packages\toolchain-gccarmnoneeabi\arm-none-eabi\include\inttypes.h:22:0 中包含的文件中,
来自 C:\Users\lastp.platformio\packages \framework-arduinoststm32-maple\STM32F1\cores\maple/avr/pgmspace.h:4,
来自 C:\Users\lastp.platformio\packages\framework-arduinoststm32-maple\STM32F1\cores\maple/WString.h:29 ,
来自 C:\Users\lastp.platformio\packages\framework-arduinoststm32-maple\STM32F1\cores\maple/wirish.h:47,
来自 C:\Users\lastp.platformio\packages\framework-arduinoststm32-maple\STM32F1\ cores\maple/Arduino.h:30,
from .pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.h:50,
from .pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.cpp:17:
.pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865 \Adafruit_MAX31865.h:84:32:错误:调用“Adafruit_SPIDevice::Adafruit_SPIDevice(int8_t, uint32_t, BitOrder, uint8_t, SPIClass*)”使用参数 3 的默认参数,该参数尚未定义
Adafruit_SPIDevice spi_dev = NULL;
^
.pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.cpp: In constructor ‘Adafruit_MAX31865::Adafruit_MAX31865(int8_t, int8_t, int8_t, int8_t)’:
.pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.cpp:38:76: error:调用“Adafruit_SPIDevice::Adafruit_SPIDevice(int8_t, int8_t, int8_t, int8_t, uint32_t, BitOrder, uint8_t)”使用参数 6 的默认参数,该参数尚未定义
spi_dev = Adafruit_SPIDevice(spi_cs, spi_clk, spi_miso, spi_mosi, 0) ;
^
.pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.cpp:在构造函数“Adafruit_MAX31865::Adafruit_MAX31865(int8_t)”中:
.pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.cpp:49:43: 错误:“SPI_BITORDER_MSBFIRST”未在此范围内声明
Adafruit_SPIDevice(spi_cs, 1000000, SPI_BITORDER_MSBFIRST, SPI_MODE1);
^~~~~~~~~~~~~~~~~~~~
.pio\libdeps\STM32F103RC_btt_512K\Adafruit_MAX31865\Adafruit_MAX31865.cpp:49:43:注意:建议的替代方案:’SPI_CR1_LSBFIRST’
Adafruit_SPIDevice(spi_cs, 1000000, SPI_BITORDER_MSBFIRST, SPI_MODE1);
^~~~~~~~~~~~~~~~~~~~
SPI_CR1_LSBFIRST
*** [.pio\build\STM32F103RC_btt_512K\lib1cd\Adafruit_MAX31865\Adafruit_MAX31865.cpp.o] 错误 1
在包含的文件中。 pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_BusIO_Register.h:2:0,
from .pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_BusIO_Register.cpp:1:
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:37:43: error: ‘SPI_BITORDER_MSBFIRST’ was not declared in this scope
BitOrder dataOrder = SPI_BITORDER_MSBFIRST ,
^~~~~~~~~~~~~~~~~~~~
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:37:43:注意:建议替代:’SPI_CR1_LSBFIRST’
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~~~~~~~~~~~
SPI_CR1_LSBFIRST
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:42:43:错误:“SPI_BITORDER_MSBFIRST”不是在此范围内声明
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~~~~~~~~~~
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:42:43:注意:建议的替代方案:’SPI_CR1_LSBFIRST’
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~~~~~~~~~~~
SPI_CR1_LSBFIRST
在 .pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_SPIDevice.cpp:1:0:
.pio\libdeps 包含的文件中\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:37:43:错误:未在此范围内声明“SPI_BITORDER_MSBFIRST”
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~~~~~~~~~~~ ~
*** [.pio\build\STM32F103RC_btt_512K\lib2ab\Adafruit BusIO_ID6214\Adafruit_BusIO_Register.cpp.o] 错误 1
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:37:43:注意:建议替代:’SPI_CR1_LSBFIRST’
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~~~~~~~~~ ~~
SPI_CR1_LSBFIRST
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:42:43: error: ‘SPI_BITORDER_MSBFIRST’ was not declared in this scope
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~~ ~~~~~~~~
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:42:43:注意:建议的替代方案:’SPI_CR1_LSBFIRST’
BitOrder dataOrder = SPI_BITORDER_MSBFIRST,
^~~~~~~~~~~ ~~~~~~~~~~
SPI_CR1_LSBFIRST
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_SPIDevice.cpp: 在成员函数’void Adafruit_SPIDevice::transfer(uint8_t*, size_t)’中:
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6211 :ev9:IDafruitc3error : 没有匹配函数调用’SPIClass::transfer(uint8_t*&, size_t&)’
_spi->transfer(buffer, len);
^
在包含自 .pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214/Adafruit_SPIDevice.h:1:0 的文件中,
来自 .pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_SPIDevice.cpp:1:
Marlin\src\2FAL1\STM3.HAL h:268:11: 注意:候选:uint8_t SPIClass::transfer(uint8_t) const
uint8_t transfer(uint8_t data) const;
^~~~~~~~
Marlin\src\HAL\STM32F1/SPI.h:268:11:注意:候选人需要 1 个参数,提供 2 个参数
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_SPIDevice.cpp:115:23:错误:“SPI_BITORDER_LSBFIRST”不是在此范围内声明
if (_dataOrder == SPI_BITORDER_LSBFIRST) {
^~~~~~~~~~~~~~~~~~~~
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_SPIDevice.cpp:115:23 :注意:建议的替代方案: ‘SPI_CR1_LSBFIRST’
if (_dataOrder == SPI_BITORDER_LSBFIRST) {
^~~~~~~~~~~~~~~~~~~~
SPI_CR1_LSBFIRST
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_SPIDevice .cpp:149:23: 错误:’SPI_BITORDER_LSBFIRST’ 未在此范围内声明
if (_dataOrder == SPI_BITORDER_LSBFIRST) {
^~~~~~~~~~~~~~~~~~~~
.pio\libdeps\STM32F103RC_btt_512K\Adafruit BusIO_ID6214\Adafruit_SPIDevice.cpp:149:23:注意:建议替代:’SPI_CR1_LSBFIRST’
if (_dataOrder == SPI_BITORDER_LSBFIRST) {
^~~~~~~~~~~~~~~~~~~~~
SPI_CR1_LSBFIRST
*** [.pio\build\STM32F103RC_btt_512K\lib2ab\Adafruit BusIO_ID6214\Adafruit_SPIDevice.cpp.o] 错误1个