链接时出错:Arduino IDE中对函数的未定义引用

时间:2019-05-12 10:10:06

标签: c++ compiler-errors arduino linker

IM尝试使用其IDE为我的Ardrino编译一些代码,并且链接阶段导致错误。我不太了解链接阶段的工作方式。但是我已经在头文件中声明了我不喜欢的函数,并且这些函数是在源文件中定义的。

我只想知道是什么原因导致此类错误,以及我可以寻求什么来解决它。

如果我注释掉对函数PABDerivedTest::printTestValue()的所有引用,则代码可以正常编译 但这只是测试

除此之外,我不知道还能尝试什么

以下是错误代码的示例

"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-gcc" -w -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p -o "C:\\Users\\benca\\AppData\\Local\\Temp\\arduino_build_49890/PolyAsycTest.ino.elf" "C:\\Users\\benca\\AppData\\Local\\Temp\\arduino_build_49890\\sketch\\PolyAsycTest.ino.cpp.o" 

...

"C:\\Users\\benca\\AppData\\Local\\Temp\\arduino_build_49890\\libraries\\ArduinoSTL\\vector.cpp.o" "C:\\Users\\benca\\AppData\\Local\\Temp\\arduino_build_49890/..\\arduino_cache_513584\\core\\core_arduino_avr_uno_0c812875ac70eb4a9b385d8fb077f54c.a" "-LC:\\Users\\benca\\AppData\\Local\\Temp\\arduino_build_49890" -lm
C:\Users\benca\AppData\Local\Temp\ccKtblBO.ltrans0.ltrans.o: In function `setup':

C:\Users\benca\Documents\Arduino\LEDClock\New 2019 Clock\Tests\PolyAsycTest/PolyAsycTest.ino:19: undefined reference to `PABDerivedTest::printTestValue()'

collect2.exe: error: ld returned 1 exit status

Using library ArduinoSTL at version 1.1.0 in folder: C:\Users\benca\Documents\Arduino\libraries\ArduinoSTL 
exit status 1```


0 个答案:

没有答案