MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.06k stars 19.16k forks source link

1.1.8 Compile error (using the example Anet A8 config) #9072

Closed Mystikal91 closed 6 years ago

Mystikal91 commented 6 years ago

I guys, when I try to compile my Marlin 1.1.8 I get this error. I'll attach the configuration files too:

Arduino:1.8.0 (Windows 10), Scheda:"Anet V1.0"

In file included from sketch\Marlin_main.cpp:314:0:

endstop_interrupts.h:124: error: missing binary operator before token "("

     #if digitalPinToInterrupt(X_MIN_PIN) != NOT_AN_INTERRUPT

                              ^

endstop_interrupts.h:144: error: missing binary operator before token "("

     #if digitalPinToInterrupt(Y_MIN_PIN) != NOT_AN_INTERRUPT

                              ^

endstop_interrupts.h:164: error: missing binary operator before token "("

     #if digitalPinToInterrupt(Z_MIN_PIN) != NOT_AN_INTERRUPT

                              ^

Più di una libreria trovata per "LiquidCrystal.h"
Usata: D:\Moved\Desktop\Marlin\arduino-1.8.0\arduino-1.8.0\portable\sketchbook\libraries\LiquidCrystal
Non usata: D:\Moved\Desktop\Marlin\arduino-1.8.0\arduino-1.8.0\libraries\LiquidCrystal
exit status 1
missing binary operator before token "("

Config.zip

GMagician commented 6 years ago

I succesfully compiled with arduino 1.8.4 & Win 10 using your configuration files. Board: Sanguino CPU: atmega1284p Can you specify your board/cpu?

GMagician commented 6 years ago

I also installed anet board and it continues to compile

kingb commented 6 years ago

I'm getting the exact same error as @Mystikal91 using Arduino 1.8.5 w/ ANET Board definition pulled from the ANET hardware defined from the Skynet v2.2 package. I couldn't figure out how to get the ANET board selection in Arduino 1.8.5 without that.

Maybe that's related to the error?

kingb commented 6 years ago

Heads up, I just tried following the directions from section "Arduino IDE hardware definition for Anet main board V1.0" (from https://linuxgnublog.org/en/dealing-with-an-anet-a8-3d-printer-firmware/), and installed Sanguino ATMega1284P 16Hz definition/board and the code compiled.

@GMagician where did you get your ANET board definition?

fiveangle commented 6 years ago

Using default Anet8 config example Marlin bugfix2.0.x also compiles without issue:

avr-g++ -o .pioenvs/anet10/firmware.elf -Os -mmcu=atmega1284p -Wl,--gc-sections -flto -fuse-linker-plugin .pioenvs/anet10/src/src/HAL/HAL_AVR/HAL_AVR.o .pioenvs/anet10/src/src/HAL/HAL_AVR/HAL_spi_AVR.o .pioenvs/anet10/src/src/HAL/HAL_AVR/MarlinSerial.o .pioenvs/anet10/src/src/HAL/HAL_AVR/persistent_store_impl.o .pioenvs/anet10/src/src/HAL/HAL_AVR/servo_AVR.o .pioenvs/anet10/src/src/HAL/HAL_AVR/watchdog_AVR.o .pioenvs/anet10/src/src/HAL/HAL_DUE/EepromEmulation_Due.o .pioenvs/anet10/src/src/HAL/HAL_DUE/HAL_Due.o .pioenvs/anet10/src/src/HAL/HAL_DUE/HAL_spi_Due.o .pioenvs/anet10/src/src/HAL/HAL_DUE/HAL_timers_Due.o .pioenvs/anet10/src/src/HAL/HAL_DUE/InterruptVectors_Due.o .pioenvs/anet10/src/src/HAL/HAL_DUE/MarlinSerialUSB_Due.o .pioenvs/anet10/src/src/HAL/HAL_DUE/MarlinSerial_Due.o .pioenvs/anet10/src/src/HAL/HAL_DUE/Servo_Due.o .pioenvs/anet10/src/src/HAL/HAL_DUE/persistent_store_impl.o .pioenvs/anet10/src/src/HAL/HAL_DUE/u8g_com_HAL_DUE_st7920_sw_spi.o .pioenvs/anet10/src/src/HAL/HAL_DUE/usb/ctrl_access.o .pioenvs/anet10/src/src/HAL/HAL_DUE/usb/sd_mmc_spi_mem.o .pioenvs/anet10/src/src/HAL/HAL_DUE/usb/sysclk.o .pioenvs/anet10/src/src/HAL/HAL_DUE/usb/udc.o .pioenvs/anet10/src/src/HAL/HAL_DUE/usb/udi_cdc.o .pioenvs/anet10/src/src/HAL/HAL_DUE/usb/udi_composite_desc.o .pioenvs/anet10/src/src/HAL/HAL_DUE/usb/udi_msc.o .pioenvs/anet10/src/src/HAL/HAL_DUE/usb/uotghs_device_due.o .pioenvs/anet10/src/src/HAL/HAL_DUE/usb/usb_task.o .pioenvs/anet10/src/src/HAL/HAL_DUE/watchdog_Due.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/HAL.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/HAL_LCD_I2C_routines.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/HAL_LCD_pin_routines.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/HAL_spi.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/HAL_timers.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/HardwareSerial.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/LPC1768_PWM.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/LPC1768_Servo.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/SoftwareSerial.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/WInterrupts.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/arduino.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/include/digipot_mcp4451_I2C_routines.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/main.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/persistent_store_impl.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/pinmapping.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/u8g_com_HAL_LPC1768_hw_spi.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/u8g_com_HAL_LPC1768_ssd_hw_i2c.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/u8g_com_HAL_LPC1768_st7920_hw_spi.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/u8g_com_HAL_LPC1768_st7920_sw_spi.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/u8g_com_HAL_LPC1768_sw_spi.o .pioenvs/anet10/src/src/HAL/HAL_LPC1768/watchdog.o .pioenvs/anet10/src/src/HAL/HAL_STM32F1/HAL_Servo_Stm32f1.o .pioenvs/anet10/src/src/HAL/HAL_STM32F1/HAL_Stm32f1.o .pioenvs/anet10/src/src/HAL/HAL_STM32F1/HAL_spi_Stm32f1.o .pioenvs/anet10/src/src/HAL/HAL_STM32F1/HAL_timers_Stm32f1.o .pioenvs/anet10/src/src/HAL/HAL_STM32F1/persistent_store_flash.o .pioenvs/anet10/src/src/HAL/HAL_STM32F1/persistent_store_impl.o .pioenvs/anet10/src/src/HAL/HAL_STM32F1/watchdog_Stm32f1.o .pioenvs/anet10/src/src/HAL/HAL_TEENSY35_36/HAL_Servo_Teensy.o .pioenvs/anet10/src/src/HAL/HAL_TEENSY35_36/HAL_Teensy.o .pioenvs/anet10/src/src/HAL/HAL_TEENSY35_36/HAL_spi_Teensy.o .pioenvs/anet10/src/src/HAL/HAL_TEENSY35_36/HAL_timers_Teensy.o .pioenvs/anet10/src/src/HAL/HAL_TEENSY35_36/persistent_store_impl.o .pioenvs/anet10/src/src/HAL/HAL_TEENSY35_36/watchdog_Teensy.o .pioenvs/anet10/src/src/HAL/I2cEeprom.o .pioenvs/anet10/src/src/HAL/SpiEeprom.o .pioenvs/anet10/src/src/HAL/servo.o .pioenvs/anet10/src/src/Marlin.o .pioenvs/anet10/src/src/core/serial.o .pioenvs/anet10/src/src/core/utility.o .pioenvs/anet10/src/src/feature/I2CPositionEncoder.o .pioenvs/anet10/src/src/feature/Max7219_Debug_LEDs.o .pioenvs/anet10/src/src/feature/baricuda.o .pioenvs/anet10/src/src/feature/bedlevel/abl/abl.o .pioenvs/anet10/src/src/feature/bedlevel/bedlevel.o .pioenvs/anet10/src/src/feature/bedlevel/mbl/mesh_bed_leveling.o .pioenvs/anet10/src/src/feature/bedlevel/ubl/ubl.o .pioenvs/anet10/src/src/feature/bedlevel/ubl/ubl_G29.o .pioenvs/anet10/src/src/feature/bedlevel/ubl/ubl_motion.o .pioenvs/anet10/src/src/feature/caselight.o .pioenvs/anet10/src/src/feature/controllerfan.o .pioenvs/anet10/src/src/feature/dac/dac_dac084s085.o .pioenvs/anet10/src/src/feature/dac/dac_mcp4728.o .pioenvs/anet10/src/src/feature/dac/stepper_dac.o .pioenvs/anet10/src/src/feature/digipot/digipot_mcp4018.o .pioenvs/anet10/src/src/feature/digipot/digipot_mcp4451.o .pioenvs/anet10/src/src/feature/fanmux.o .pioenvs/anet10/src/src/feature/filwidth.o .pioenvs/anet10/src/src/feature/fwretract.o .pioenvs/anet10/src/src/feature/leds/blinkm.o .pioenvs/anet10/src/src/feature/leds/leds.o .pioenvs/anet10/src/src/feature/leds/neopixel.o .pioenvs/anet10/src/src/feature/leds/pca9632.o .pioenvs/anet10/src/src/feature/leds/tempstat.o .pioenvs/anet10/src/src/feature/mixing.o .pioenvs/anet10/src/src/feature/pause.o .pioenvs/anet10/src/src/feature/runout.o .pioenvs/anet10/src/src/feature/snmm.o .pioenvs/anet10/src/src/feature/solenoid.o .pioenvs/anet10/src/src/feature/tmc_util.o .pioenvs/anet10/src/src/feature/twibus.o .pioenvs/anet10/src/src/gcode/bedlevel/G26.o .pioenvs/anet10/src/src/gcode/bedlevel/G42.o .pioenvs/anet10/src/src/gcode/bedlevel/M420.o .pioenvs/anet10/src/src/gcode/bedlevel/abl/G29.o .pioenvs/anet10/src/src/gcode/bedlevel/abl/M421.o .pioenvs/anet10/src/src/gcode/bedlevel/mbl/G29.o .pioenvs/anet10/src/src/gcode/bedlevel/mbl/M421.o .pioenvs/anet10/src/src/gcode/bedlevel/ubl/G29.o .pioenvs/anet10/src/src/gcode/bedlevel/ubl/M421.o .pioenvs/anet10/src/src/gcode/bedlevel/ubl/M49.o .pioenvs/anet10/src/src/gcode/calibrate/G28.o .pioenvs/anet10/src/src/gcode/calibrate/G33.o .pioenvs/anet10/src/src/gcode/calibrate/M100.o .pioenvs/anet10/src/src/gcode/calibrate/M48.o .pioenvs/anet10/src/src/gcode/calibrate/M665.o .pioenvs/anet10/src/src/gcode/calibrate/M666.o .pioenvs/anet10/src/src/gcode/calibrate/M852.o .pioenvs/anet10/src/src/gcode/config/M200-M205.o .pioenvs/anet10/src/src/gcode/config/M218.o .pioenvs/anet10/src/src/gcode/config/M220.o .pioenvs/anet10/src/src/gcode/config/M221.o .pioenvs/anet10/src/src/gcode/config/M301.o .pioenvs/anet10/src/src/gcode/config/M302.o .pioenvs/anet10/src/src/gcode/config/M304.o .pioenvs/anet10/src/src/gcode/config/M43.o .pioenvs/anet10/src/src/gcode/config/M540.o .pioenvs/anet10/src/src/gcode/config/M92.o .pioenvs/anet10/src/src/gcode/control/M108_M112_M410.o .pioenvs/anet10/src/src/gcode/control/M111.o .pioenvs/anet10/src/src/gcode/control/M120_M121.o .pioenvs/anet10/src/src/gcode/control/M17_M18_M84.o .pioenvs/anet10/src/src/gcode/control/M211.o .pioenvs/anet10/src/src/gcode/control/M226.o .pioenvs/anet10/src/src/gcode/control/M280.o .pioenvs/anet10/src/src/gcode/control/M3-M5.o .pioenvs/anet10/src/src/gcode/control/M350_M351.o .pioenvs/anet10/src/src/gcode/control/M380_M381.o .pioenvs/anet10/src/src/gcode/control/M400.o .pioenvs/anet10/src/src/gcode/control/M42.o .pioenvs/anet10/src/src/gcode/control/M605.o .pioenvs/anet10/src/src/gcode/control/M80_M81.o .pioenvs/anet10/src/src/gcode/control/M85.o .pioenvs/anet10/src/src/gcode/control/M999.o .pioenvs/anet10/src/src/gcode/control/T.o .pioenvs/anet10/src/src/gcode/eeprom/M500-M504.o .pioenvs/anet10/src/src/gcode/feature/advance/M900.o .pioenvs/anet10/src/src/gcode/feature/baricuda/M126-M129.o .pioenvs/anet10/src/src/gcode/feature/camera/M240.o .pioenvs/anet10/src/src/gcode/feature/caselight/M355.o .pioenvs/anet10/src/src/gcode/feature/clean/G12.o .pioenvs/anet10/src/src/gcode/feature/digipot/M907-M910.o .pioenvs/anet10/src/src/gcode/feature/filwidth/M404-M407.o .pioenvs/anet10/src/src/gcode/feature/fwretract/G10_G11.o .pioenvs/anet10/src/src/gcode/feature/fwretract/M207-M209.o .pioenvs/anet10/src/src/gcode/feature/i2c/M260_M261.o .pioenvs/anet10/src/src/gcode/feature/leds/M150.o .pioenvs/anet10/src/src/gcode/feature/mixing/M163-M165.o .pioenvs/anet10/src/src/gcode/feature/pause/G27.o .pioenvs/anet10/src/src/gcode/feature/pause/M125.o .pioenvs/anet10/src/src/gcode/feature/pause/M600.o .pioenvs/anet10/src/src/gcode/feature/pause/M603.o .pioenvs/anet10/src/src/gcode/feature/pause/M701_M702.o .pioenvs/anet10/src/src/gcode/feature/trinamic/M122.o .pioenvs/anet10/src/src/gcode/feature/trinamic/M906.o .pioenvs/anet10/src/src/gcode/feature/trinamic/M911-M915.o .pioenvs/anet10/src/src/gcode/gcode.o .pioenvs/anet10/src/src/gcode/geometry/G17-G19.o .pioenvs/anet10/src/src/gcode/geometry/G53-G59.o .pioenvs/anet10/src/src/gcode/geometry/G92.o .pioenvs/anet10/src/src/gcode/geometry/M206_M428.o .pioenvs/anet10/src/src/gcode/host/M110.o .pioenvs/anet10/src/src/gcode/host/M113.o .pioenvs/anet10/src/src/gcode/host/M114.o .pioenvs/anet10/src/src/gcode/host/M115.o .pioenvs/anet10/src/src/gcode/host/M118.o .pioenvs/anet10/src/src/gcode/host/M119.o .pioenvs/anet10/src/src/gcode/lcd/M0_M1.o .pioenvs/anet10/src/src/gcode/lcd/M117.o .pioenvs/anet10/src/src/gcode/lcd/M145.o .pioenvs/anet10/src/src/gcode/lcd/M250.o .pioenvs/anet10/src/src/gcode/lcd/M300.o .pioenvs/anet10/src/src/gcode/lcd/M73.o .pioenvs/anet10/src/src/gcode/motion/G0_G1.o .pioenvs/anet10/src/src/gcode/motion/G2_G3.o .pioenvs/anet10/src/src/gcode/motion/G4.o .pioenvs/anet10/src/src/gcode/motion/G5.o .pioenvs/anet10/src/src/gcode/motion/M290.o .pioenvs/anet10/src/src/gcode/parser.o .pioenvs/anet10/src/src/gcode/probe/G30.o .pioenvs/anet10/src/src/gcode/probe/G31_G32.o .pioenvs/anet10/src/src/gcode/probe/G38.o .pioenvs/anet10/src/src/gcode/probe/M401_M402.o .pioenvs/anet10/src/src/gcode/probe/M851.o .pioenvs/anet10/src/src/gcode/queue.o .pioenvs/anet10/src/src/gcode/scara/M360-M364.o .pioenvs/anet10/src/src/gcode/sdcard/M20-M30_M32-M34_M928.o .pioenvs/anet10/src/src/gcode/stats/M31.o .pioenvs/anet10/src/src/gcode/stats/M75-M78.o .pioenvs/anet10/src/src/gcode/temperature/M104_M109.o .pioenvs/anet10/src/src/gcode/temperature/M105.o .pioenvs/anet10/src/src/gcode/temperature/M106_M107.o .pioenvs/anet10/src/src/gcode/temperature/M140_M190.o .pioenvs/anet10/src/src/gcode/temperature/M155.o .pioenvs/anet10/src/src/gcode/temperature/M303.o .pioenvs/anet10/src/src/gcode/units/G20_G21.o .pioenvs/anet10/src/src/gcode/units/M149.o .pioenvs/anet10/src/src/gcode/units/M82_M83.o .pioenvs/anet10/src/src/lcd/dogm/u8g_dev_ssd1306_sh1106_128x64_I2C.o .pioenvs/anet10/src/src/lcd/dogm/u8g_dev_st7565_64128n_HAL.o .pioenvs/anet10/src/src/lcd/dogm/u8g_dev_st7920_128x64_HAL.o .pioenvs/anet10/src/src/lcd/dogm/ultralcd_st7920_u8glib_rrd_AVR.o .pioenvs/anet10/src/src/lcd/ultralcd.o .pioenvs/anet10/src/src/libs/buzzer.o .pioenvs/anet10/src/src/libs/hex_print_routines.o .pioenvs/anet10/src/src/libs/least_squares_fit.o .pioenvs/anet10/src/src/libs/nozzle.o .pioenvs/anet10/src/src/libs/stopwatch.o .pioenvs/anet10/src/src/libs/vector_3.o .pioenvs/anet10/src/src/module/configuration_store.o .pioenvs/anet10/src/src/module/delta.o .pioenvs/anet10/src/src/module/endstops.o .pioenvs/anet10/src/src/module/motion.o .pioenvs/anet10/src/src/module/planner.o .pioenvs/anet10/src/src/module/planner_bezier.o .pioenvs/anet10/src/src/module/printcounter.o .pioenvs/anet10/src/src/module/probe.o .pioenvs/anet10/src/src/module/scara.o .pioenvs/anet10/src/src/module/servo.o .pioenvs/anet10/src/src/module/stepper.o .pioenvs/anet10/src/src/module/stepper_indirection.o .pioenvs/anet10/src/src/module/temperature.o .pioenvs/anet10/src/src/module/tool_change.o .pioenvs/anet10/src/src/sd/Sd2Card.o .pioenvs/anet10/src/src/sd/SdBaseFile.o .pioenvs/anet10/src/src/sd/SdFatUtil.o .pioenvs/anet10/src/src/sd/SdFile.o .pioenvs/anet10/src/src/sd/SdVolume.o .pioenvs/anet10/src/src/sd/cardreader.o -L.pioenvs/anet10 -Wl,--start-group .pioenvs/anet10/libFrameworkArduinoVariant.a .pioenvs/anet10/libFrameworkArduino.a -lm .pioenvs/anet10/lib/libU8glib-HAL_ID1932.a .pioenvs/anet10/lib/libWire.a .pioenvs/anet10/lib/libLiquidCrystal_I2C_ID576.a .pioenvs/anet10/lib/libSPI.a .pioenvs/anet10/lib/libTMC2130Stepper.a .pioenvs/anet10/lib/libTMC2208Stepper.a ".pioenvs/anet10/lib/libAdafruit NeoPixel.a" .pioenvs/anet10/lib/libLiquidTWI2.a .pioenvs/anet10/lib/libTMC26XStepper.a .pioenvs/anet10/lib/libArduino-L6470.a .pioenvs/anet10/lib/libSoftwareSerial.a .pioenvs/anet10/lib/libLiquidCrystal.a .pioenvs/anet10/lib/libEEPROM.a .pioenvs/anet10/lib/libServo.a -Wl,--end-group
avr-size --mcu=atmega1284p -C -d .pioenvs/anet10/firmware.elf
AVR Memory Usage
----------------
Device: atmega1284p
Program:  100352 bytes (76.6% Full)
(.text + .data + .bootloader)
Data:       4148 bytes (25.3% Full)
(.data + .bss + .noinit)
avr-objcopy -O ihex -R .eeprom .pioenvs/anet10/firmware.elf .pioenvs/anet10/firmware.hex
========================= [SUCCESS] Took 20.23 seconds =========================
================================== [SUMMARY] ==================================
Environment megaatmega2560              [SKIP]
Environment megaatmega1280              [SKIP]
Environment anet10                      [SUCCESS]
Environment DUE                         [SKIP]
Environment LPC1768                     [SKIP]
Environment LPC1768_debug_and_upload    [SKIP]
Environment rambo                       [SKIP]
Environment sanguino_atmega644p         [SKIP]
Environment STM32F1                     [SKIP]
Environment teensy20                    [SKIP]
Environment teensy35                    [SKIP]
========================= [SUCCESS] Took 20.23 seconds =========================

You guys have a build chain problem you need to figure out, but it isn't Marlin.

kingb commented 6 years ago

UPDATE 3:

I tried uploading to my ANET A8 (ANET v1.0 board) with Sanguino ATMega1284P 16Mhz selection in Arduino IDE. I got sync errors and it failed. It had compiled but won't upload with Sanguino.

I then installed the ANET Board definitions for Arduino IDE from here: https://github.com/SkyNet3D/anet-board

With those definitions I was able to upload the Marlin 1.1.8 firmware.

@Mystikal91 Does that fix your problem too?

GMagician commented 6 years ago

@Mystikal91 & @kingb I searched with google and download anet board files. I attach the one I've found hardware.zip I copied these files in C:\Users[username]\Documents\Arduino (note that zip contains 'hardware' folder)

kingb commented 6 years ago

@Mystikal91 Did that solve your problem?

NephariusAT commented 6 years ago

@kingb @GMagician I had the same issue. This Download fixed my issue! Thank you!

github-actions[bot] commented 3 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.