Skocz do zawartości

Błąd kompilacji dla płytki Arduino/Genuino Uno


Pomocna odpowiedź

Napisano

Witam otóż mam problem ze skompilowaniem programu. Program jest praca domową z kursu ARDUINO. Nie mogę doszukać sie błedów, ktorych ja przypuszczam w ogóle nie ma. Poniżej przedstawaiam szczegółowy opis błędów.

Arduino:1.8.6 Hourly Build 2018/01/03 03:33 (Windows 10), Płytka:"Arduino/Genuino Uno"

C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\arduino-builder -dump-prefs -logger=machine -hardware C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware -tools C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\tools-builder -tools C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr -built-in-libraries C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\libraries -libraries C:\Users\macie\Documents\Arduino\libraries -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10806 -build-path C:\Users\macie\AppData\Local\Temp\arduino_build_463086 -warnings=none -build-cache C:\Users\macie\AppData\Local\Temp\arduino_cache_803930 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr -verbose C:\Users\macie\Desktop\sketch_feb21b\sketch_feb21b.ino
C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\arduino-builder -compile -logger=machine -hardware C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware -tools C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\tools-builder -tools C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr -built-in-libraries C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\libraries -libraries C:\Users\macie\Documents\Arduino\libraries -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10806 -build-path C:\Users\macie\AppData\Local\Temp\arduino_build_463086 -warnings=none -build-cache C:\Users\macie\AppData\Local\Temp\arduino_cache_803930 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr -verbose C:\Users\macie\Desktop\sketch_feb21b\sketch_feb21b.ino
Using board 'uno' from platform in folder: C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\arduino\avr
Using core 'arduino' from platform in folder: C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\arduino\avr
Detecting libraries used...
"C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10806 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\arduino\avr\variants\standard" "C:\Users\macie\AppData\Local\Temp\arduino_build_463086\sketch\sketch_feb21b.ino.cpp" -o "nul"
Generating function prototypes...
"C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10806 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\arduino\avr\variants\standard" "C:\Users\macie\AppData\Local\Temp\arduino_build_463086\sketch\sketch_feb21b.ino.cpp" -o "C:\Users\macie\AppData\Local\Temp\arduino_build_463086\preproc\ctags_target_for_gcc_minus_e.cpp"
"C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\tools-builder\ctags\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\Users\macie\AppData\Local\Temp\arduino_build_463086\preproc\ctags_target_for_gcc_minus_e.cpp"
Kompilowanie szkicu...
"C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10806 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR   "-IC:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\arduino\avr\cores\arduino" "-IC:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\arduino\avr\variants\standard" "C:\Users\macie\AppData\Local\Temp\arduino_build_463086\sketch\sketch_feb21b.ino.cpp" -o "C:\Users\macie\AppData\Local\Temp\arduino_build_463086\sketch\sketch_feb21b.ino.cpp.o"
Compiling libraries...
Compiling core...
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\wiring_pulse.S.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\WInterrupts.c.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\hooks.c.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\wiring.c.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\wiring_analog.c.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\wiring_digital.c.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\wiring_pulse.c.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\wiring_shift.c.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\CDC.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\HardwareSerial.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\HardwareSerial0.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\HardwareSerial1.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\HardwareSerial2.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\HardwareSerial3.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\IPAddress.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\PluggableUSB.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\Print.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\Stream.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\Tone.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\USBCore.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\WMath.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\WString.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\abi.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\main.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\new.cpp.o
Użycie wcześniej skompilowanego pliku: C:\Users\macie\AppData\Local\Temp\arduino_build_463086\core\core.a
Archiving built core (caching) in: C:\Users\macie\AppData\Local\Temp\arduino_cache_803930\core\core_arduino_avr_uno_77a11ad5a83ef90d79b8bfa04802e459.a
Linking everything together...
"C:\Users\macie\Desktop\ELEKTRONIKA i ROBOTY - ARDUINO\arduino-nightly\hardware\tools\avr/bin/avr-gcc" -w -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p  -o "C:\Users\macie\AppData\Local\Temp\arduino_build_463086/sketch_feb21b.ino.elf" "C:\Users\macie\AppData\Local\Temp\arduino_build_463086\sketch\sketch_feb21b.ino.cpp.o" "C:\Users\macie\AppData\Local\Temp\arduino_build_463086/core\core.a" "-LC:\Users\macie\AppData\Local\Temp\arduino_build_463086" -lm
C:\Users\macie\AppData\Local\Temp\cchUqZYF.ltrans0.ltrans.o: In function `_GLOBAL__sub_D_odebranedane':

C:\Users\macie\Desktop\sketch_feb21b/sketch_feb21b.ino:4: undefined reference to `String::~String()'

C:\Users\macie\AppData\Local\Temp\cchUqZYF.ltrans0.ltrans.o: In function `_GLOBAL__sub_I_odebranedane':

C:\Users\macie\Desktop\sketch_feb21b/sketch_feb21b.ino:4: undefined reference to `String::String(char const*)'

c:/users/macie/desktop/elektronika i roboty - arduino/arduino-nightly/hardware/tools/avr/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr5/crtatmega328p.o:(.init9+0x0): undefined reference to `main'

collect2.exe: error: ld returned 1 exit status

exit status 1
Błąd kompilacji dla płytki Arduino/Genuino Uno.

Z góry dziękuję za pomoc!!!

[ Dodano: 26-02-2018, 19:40 ]

Tutaj jeszcze dołączam krótszą wersje opisu błędów:

Arduino:1.8.6 Hourly Build 2018/01/03 03:33 (Windows 10), Płytka:"Arduino/Genuino Uno"

C:\Users\macie\AppData\Local\Temp\ccGJnYd5.ltrans0.ltrans.o: In function `_GLOBAL__sub_D_odebranedane':

C:\Users\macie\Desktop\sketch_feb21b/sketch_feb21b.ino:4: undefined reference to `String::~String()'

C:\Users\macie\AppData\Local\Temp\ccGJnYd5.ltrans0.ltrans.o: In function `_GLOBAL__sub_I_odebranedane':

C:\Users\macie\Desktop\sketch_feb21b/sketch_feb21b.ino:4: undefined reference to `String::String(char const*)'

c:/users/macie/desktop/elektronika i roboty - arduino/arduino-nightly/hardware/tools/avr/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr5/crtatmega328p.o:(.init9+0x0): undefined reference to `main'

collect2.exe: error: ld returned 1 exit status

exit status 1
Błąd kompilacji dla płytki Arduino/Genuino Uno.

Ten raport powinien zawierać więcej informacji jeśli w 
File -> Preferencje zostanie włączona opcja "Pokaż
szczegółowe informacje podczas kompilacji"

Witaj,
Na początek umieść kod błędu w tagach , bo ciężko się to czyta. (klikając EDYTUJ) 😉

Druga sprawa wyślij kod programu z Arduino. Skąd mamy wiedzieć, że nie ma błędu, skoro nawet kodu nie wysłałeś. Pierwsza podstawowa sprawa.

Trzecia sprawa najpierw zanim pytasz, też warto pomyśleć samemu dlaczego ten błąd wyskoczył i co w tym błędzie pisze. Warto przeczytać go, bo czasem problem jest dość oczywisty i z góry widać go w tym "opisie".

Pozdrawiam

#define zielona 8
#define czerwona 10

void setup() {
 Serial.begin(9600);

 pinMode(zielona, OUTPUT);
 pinMode(czerwona, OUTPUT);

 digitalWrite(zielona, LOW);
 digitalWrite(czerwona, LOW);

}

void loop() {
 String dane;

 boolean zielona2 = false;
 boolean czerwona2 = false;

 if(Serial.available()>0)
 {
   dane = Serial.readStringUntil('\n');

   if(dane=="zielona")
   {
     zielona2=!zielona2;
     digitalWrite(zielona, zielona2);
   }
   else if(dane=="czerwona")
   {
     czerwona2=!czerwona2;
     digitalWrite(czerwona, czerwona2);
   }
   else
   {
     Serial.println("Blad danych!!!");
   }
 }

}

Owszem przeczytałem ów opis, ale do żadnego sensownego wniosku sam nie doszedlem dlatego zgłosiłem się na forum.

Tutaj jest sedno problemu

C:\Users\macie\AppData\Local\Temp\ccGJnYd5.ltrans0.ltrans.o: In function `_GLOBAL__sub_D_odebranedane':

C:\Users\macie\Desktop\sketch_feb21b/sketch_feb21b.ino:4: undefined reference to `String::~String()'

C:\Users\macie\AppData\Local\Temp\ccGJnYd5.ltrans0.ltrans.o: In function `_GLOBAL__sub_I_odebranedane':

C:\Users\macie\Desktop\sketch_feb21b/sketch_feb21b.ino:4: undefined reference to `String::String(char const*)'

c:/users/macie/desktop/elektronika i roboty - arduino/arduino-nightly/hardware/tools/avr/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr5/crtatmega328p.o:(.init9+0x0): undefined reference to `main'

W ogóle dziwnie trochę napisałeś ten kod. o ile pamiętam na lekcjach forbota było to inaczej. Czemu !zielona2 i !czerwona2 ?

Dodaj komentarze do kodu programu, edytując tamten post, aby było wiadomo co poszczególne funkcje mają wykonać.

Owszem chyba był właśnie problem z nazwą pliku, gdyż stworzenie nowego pliku z tym samym kodem poskutkowało, lecz trochę to dziwne i uciążliwe. Dzięki wszystkim za komentarze i pomoc!!! Na lekcji forbota właśnie nie było mowy o ów funkcji boolean zaś praca domowa opierała się właśnie na niej dlatego ten kod napisałem trochę po "swojemu" 😉

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...