SOLVED - Arduino due gets 'Error compiling for Arduino Due (Programming Port)' when code includes any kind of library

I can code anything I like on Arduino Due until I include any library at the top. This immediately gets me the error in the title. I have got around it by coping lirary code into the top of my code, but it takes a long time and a lot of storage. Any help?

I am using Arduino IDE 1.8.12

Could you please provide an example code for the issue?

#include <SPI.h>
void setup(){
}
void loop(){
}

Generates an error. However, the code for the SPI library above void setup(), not using #include, works perfectly fine.

In the IDE, go to the Preferences and make sure that both checkboxes "Show verbose output..." are set

Then compile the code again and insert the error message in the forum as text with code tags.

This is the error I got when I didn't even include a library

Arduino: 1.8.12 (Windows 10), Board: "Arduino Due (Programming Port)"

C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\Ethan\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\Ethan\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Ethan\Documents\Arduino\libraries\ArdunioAuto-Clock(for due)\libraries -fqbn=arduino:sam:arduino_due_x_dbg -vid-pid=0X2341_0X003D -ide-version=10812 -build-path C:\Users\Ethan\AppData\Local\Temp\arduino_build_383893 -warnings=none -build-cache C:\Users\Ethan\AppData\Local\Temp\arduino_cache_341683 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.bossac.path=C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\tools\bossac\1.6.1-arduino -prefs=runtime.tools.bossac-1.6.1-arduino.path=C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\tools\bossac\1.6.1-arduino -prefs=runtime.tools.arm-none-eabi-gcc.path=C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\tools\arm-none-eabi-gcc\4.8.3-2014q1 -prefs=runtime.tools.arm-none-eabi-gcc-4.8.3-2014q1.path=C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\tools\arm-none-eabi-gcc\4.8.3-2014q1 -verbose C:\Users\Ethan\Desktop\Arduino_Video\Arduino_Video.ino
C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\Ethan\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\Ethan\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\Ethan\Documents\Arduino\libraries\ArdunioAuto-Clock(for due)\libraries -fqbn=arduino:sam:arduino_due_x_dbg -vid-pid=0X2341_0X003D -ide-version=10812 -build-path C:\Users\Ethan\AppData\Local\Temp\arduino_build_383893 -warnings=none -build-cache C:\Users\Ethan\AppData\Local\Temp\arduino_cache_341683 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.bossac.path=C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\tools\bossac\1.6.1-arduino -prefs=runtime.tools.bossac-1.6.1-arduino.path=C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\tools\bossac\1.6.1-arduino -prefs=runtime.tools.arm-none-eabi-gcc.path=C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\tools\arm-none-eabi-gcc\4.8.3-2014q1 -prefs=runtime.tools.arm-none-eabi-gcc-4.8.3-2014q1.path=C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\tools\arm-none-eabi-gcc\4.8.3-2014q1 -verbose C:\Users\Ethan\Desktop\Arduino_Video\Arduino_Video.ino
Using board 'arduino_due_x_dbg' from platform in folder: C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.12
Using core 'arduino' from platform in folder: C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.12
Detecting libraries used...
"C:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\arm-none-eabi-gcc\\4.8.3-2014q1/bin/arm-none-eabi-g++" -c -g -Os -w -std=gnu++11 -ffunction-sections -fdata-sections -nostdlib -fno-threadsafe-statics --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -w -x c++ -E -CC -mcpu=cortex-m3 -mthumb -DF_CPU=84000000L -DARDUINO=10812 -DARDUINO_SAM_DUE -DARDUINO_ARCH_SAM -D__SAM3X8E__ -mthumb -DUSB_VID=0x2341 -DUSB_PID=0x003e -DUSBCON "-DUSB_MANUFACTURER=\"Arduino LLC\"" "-DUSB_PRODUCT=\"Arduino Due\"" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/libsam" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/CMSIS/CMSIS/Include/" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/CMSIS/Device/ATMEL/" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\cores\\arduino" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\variants\\arduino_due_x" "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893\\sketch\\Arduino_Video.ino.cpp" -o nul
Generating function prototypes...
"C:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\arm-none-eabi-gcc\\4.8.3-2014q1/bin/arm-none-eabi-g++" -c -g -Os -w -std=gnu++11 -ffunction-sections -fdata-sections -nostdlib -fno-threadsafe-statics --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -w -x c++ -E -CC -mcpu=cortex-m3 -mthumb -DF_CPU=84000000L -DARDUINO=10812 -DARDUINO_SAM_DUE -DARDUINO_ARCH_SAM -D__SAM3X8E__ -mthumb -DUSB_VID=0x2341 -DUSB_PID=0x003e -DUSBCON "-DUSB_MANUFACTURER=\"Arduino LLC\"" "-DUSB_PRODUCT=\"Arduino Due\"" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/libsam" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/CMSIS/CMSIS/Include/" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/CMSIS/Device/ATMEL/" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\cores\\arduino" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\variants\\arduino_due_x" "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893\\sketch\\Arduino_Video.ino.cpp" -o "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893\\preproc\\ctags_target_for_gcc_minus_e.cpp"
"C:\\Program Files (x86)\\Arduino\\tools-builder\\ctags\\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893\\preproc\\ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
"C:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\arm-none-eabi-gcc\\4.8.3-2014q1/bin/arm-none-eabi-g++" -c -g -Os -w -std=gnu++11 -ffunction-sections -fdata-sections -nostdlib -fno-threadsafe-statics --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -MMD -mcpu=cortex-m3 -mthumb -DF_CPU=84000000L -DARDUINO=10812 -DARDUINO_SAM_DUE -DARDUINO_ARCH_SAM -D__SAM3X8E__ -mthumb -DUSB_VID=0x2341 -DUSB_PID=0x003e -DUSBCON "-DUSB_MANUFACTURER=\"Arduino LLC\"" "-DUSB_PRODUCT=\"Arduino Due\"" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/libsam" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/CMSIS/CMSIS/Include/" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/CMSIS/Device/ATMEL/" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\cores\\arduino" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\variants\\arduino_due_x" "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893\\sketch\\Arduino_Video.ino.cpp" -o "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893\\sketch\\Arduino_Video.ino.cpp.o"
Compiling libraries...
Compiling core...
"C:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\arm-none-eabi-gcc\\4.8.3-2014q1/bin/arm-none-eabi-g++" -c -g -Os -w -std=gnu++11 -ffunction-sections -fdata-sections -nostdlib -fno-threadsafe-statics --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -MMD -mcpu=cortex-m3 -mthumb -DF_CPU=84000000L -DARDUINO=10812 -DARDUINO_SAM_DUE -DARDUINO_ARCH_SAM -D__SAM3X8E__ -mthumb -DUSB_VID=0x2341 -DUSB_PID=0x003e -DUSBCON "-DUSB_MANUFACTURER=\"Arduino LLC\"" "-DUSB_PRODUCT=\"Arduino Due\"" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/libsam" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/CMSIS/CMSIS/Include/" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\system/CMSIS/Device/ATMEL/" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\cores\\arduino" "-IC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\variants\\arduino_due_x" "C:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\variants\\arduino_due_x\\variant.cpp" -o "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893\\core\\variant.cpp.o"
Using precompiled core: C:\Users\Ethan\AppData\Local\Temp\arduino_cache_341683\core\core_arduino_sam_arduino_due_x_dbg_884f556271a757c8620892b2e36d0726.a
Linking everything together...
"C:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\arm-none-eabi-gcc\\4.8.3-2014q1/bin/arm-none-eabi-gcc" -mcpu=cortex-m3 -mthumb -Os -Wl,--gc-sections "-TC:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\variants\\arduino_due_x/linker_scripts/gcc/flash.ld" "-Wl,-Map,C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893/Arduino_Video.ino.map" -o "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893/Arduino_Video.ino.elf" "-LC:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893" -Wl,--cref -Wl,--check-sections -Wl,--gc-sections -Wl,--entry=Reset_Handler -Wl,--unresolved-symbols=report-all -Wl,--warn-common -Wl,--warn-section-align -Wl,--start-group -u _sbrk -u link -u _close -u _fstat -u _isatty -u _lseek -u _read -u _write -u _exit -u kill -u _getpid "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893\\sketch\\Arduino_Video.ino.cpp.o" "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893\\core\\variant.cpp.o" "C:\\Users\\Ethan\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\sam\\1.6.12\\variants\\arduino_due_x/libsam_sam3x8e_gcc_rel.a" "C:\\Users\\Ethan\\AppData\\Local\\Temp\\arduino_build_383893/..\\arduino_cache_341683\\core\\core_arduino_sam_arduino_due_x_dbg_884f556271a757c8620892b2e36d0726.a" -Wl,--end-group -lm -lgcc
C:\Users\Ethan\AppData\Local\Temp\arduino_build_383893/..\arduino_cache_341683\core\core_arduino_sam_arduino_due_x_dbg_884f556271a757c8620892b2e36d0726.a(main.cpp.o): In function `main':

C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.12\cores\arduino/main.cpp:57: undefined reference to `setup'

C:\Users\Ethan\AppData\Local\Arduino15\packages\arduino\hardware\sam\1.6.12\cores\arduino/main.cpp:61: undefined reference to `loop'

collect2.exe: error: ld returned 1 exit status

exit status 1
Error compiling for board Arduino Due (Programming Port).

I used this code, it has a few big arrays

#define bluepicture(vertblue, horzblue);
#define redpicture(vertred, horzred);
#define greenpicture(vertgreen, horzgreen);
int vertblue[] PROGMEM={
//This area contains an array of 31104 characters which I cut out
}
int horzblue[] PROGMEM={
//This area contains an array of 31104 characters which I cut out
}
int vertred[] PROGMEM={
//This area contains an array of 31104 characters which I cut out
}
int horzred[] PROGMEM={
//This area contains an array of 31104 characters which I cut out
}
int vertgreen[] PROGMEM={
//This area contains an array of 31104 characters which I cut out
}
int horzgreen[] PROGMEM={
//This area contains an array of 31104 characters which I cut out
}

There are no libraries included and I can't see any problem with that code.

The only other thing I can think of is to re-install the board driver in board manager

Your code doesn't contains setup() and loop() functions:

Including setup() and loop functions fixed it, thank you.
I have worked with Arduinos for 3 years and I have never encoutered that.

To mark the problem solved you can click the :ballot_box_with_check: Solution button at the bottom of the reply that answered your question. This will make it easy for helpers to see that it is solved and for others with the same question to find the answer quickly.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.