mainsail-crew / virtual-klipper-printer

Run a simulated Klipper 3D-Printer in a Docker container
GNU General Public License v3.0
68 stars 32 forks source link

Update the firmware build config #19

Closed FGRCL closed 1 year ago

FGRCL commented 1 year ago

Upon building the docker image, I initially encountered the following error on the firmware build step:

[+] Building 8.3s (11/32)                                                                                                                                                                                                                                                                           
 => [printer internal] load .dockerignore                                                                                                                                                                                                                                                      0.0s
 => => transferring context: 2B                                                                                                                                                                                                                                                                0.0s
 => [printer internal] load build definition from Dockerfile                                                                                                                                                                                                                                   0.0s
 => => transferring dockerfile: 3.91kB                                                                                                                                                                                                                                                         0.0s
 => [printer internal] load metadata for docker.io/library/python:3.10-slim-bullseye                                                                                                                                                                                                           1.4s
 => [printer auth] library/python:pull token for registry-1.docker.io                                                                                                                                                                                                                          0.0s
 => [printer internal] load build context                                                                                                                                                                                                                                                      0.0s
 => => transferring context: 3.02kB                                                                                                                                                                                                                                                            0.0s
 => [printer runner  1/19] FROM docker.io/library/python:3.10-slim-bullseye@sha256:b51f87064a7a335e7c47a1404f7d5d259df76bb9e07097a301b3bbf55db37e0a                                                                                                                                            0.0s
 => CACHED [printer builder 2/9] RUN apt-get update && apt-get install -y     --no-install-recommends     --no-install-suggests     git     swig     virtualenv     avr-libc     binutils-avr     build-essential     cmake     gcc-avr     libcurl4-openssl-dev     libssl-dev     python3-d  0.0s
 => CACHED [printer builder 3/9] WORKDIR /build                                                                                                                                                                                                                                                0.0s
 => CACHED [printer builder 4/9] RUN git clone https://github.com/klipper3d/klipper     && virtualenv -p python3 /build/klippy-env     && /build/klippy-env/bin/pip install -r /build/klipper/scripts/klippy-requirements.txt                                                                  0.0s
 => [printer builder 5/9] COPY config/simulavr.config /usr/src                                                                                                                                                                                                                                 0.7s
 => ERROR [printer builder 6/9] RUN git clone -b master git://git.savannah.nongnu.org/simulavr.git     && cd klipper     && cp /usr/src/simulavr.config .config     && make PYTHON=python3     && cp out/klipper.elf /build/simulavr.elf     && rm -f .config     && make PYTHON=python3 clea  6.2s
------                                                                                                                                                                                                                                                                                              
 > [printer builder 6/9] RUN git clone -b master git://git.savannah.nongnu.org/simulavr.git     && cd klipper     && cp /usr/src/simulavr.config .config     && make PYTHON=python3     && cp out/klipper.elf /build/simulavr.elf     && rm -f .config     && make PYTHON=python3 clean     && cd ../simulavr     && make python     && make build     && make clean:                                                                                                                                                                                                                                   
#0 0.271 Cloning into 'simulavr'...                                                                                                                                                                                                                                                                 
#0 1.742   Creating symbolic link out/board                                                                                                                                                                                                                                                         
#0 1.777   Building out/autoconf.h                                                                                                                                                                                                                                                                  
#0 2.021   Compiling out/src/sched.o
#0 2.245   Compiling out/src/command.o
#0 2.401   Compiling out/src/basecmd.o
#0 2.544   Compiling out/src/debugcmds.o
#0 2.585   Compiling out/src/initial_pins.o
#0 2.619   Compiling out/src/gpiocmds.o
#0 2.703   Compiling out/src/stepper.o
#0 2.797   Compiling out/src/endstop.o
#0 2.846   Compiling out/src/trsync.o
#0 2.917   Compiling out/src/adccmds.o
#0 2.969   Compiling out/src/spicmds.o
#0 3.033   Compiling out/src/i2ccmds.o
#0 3.089   Compiling out/src/pwmcmds.o
#0 3.144   Compiling out/src/avr/main.o
#0 3.184   Compiling out/src/avr/timer.o
#0 3.240   Compiling out/src/avr/gpio.o
#0 3.313   Compiling out/src/avr/adc.o
#0 3.356   Compiling out/src/avr/spi.o
#0 3.409   Compiling out/src/avr/i2c.o
#0 3.465   Compiling out/src/avr/hard_pwm.o
#0 3.516   Compiling out/src/avr/watchdog.o
#0 3.554   Compiling out/src/avr/serial.o
#0 3.593   Compiling out/src/generic/serial_irq.o
#0 3.689   Building out/compile_time_request.o
#0 6.006 Version: v0.11.0-233-g1374c701
#0 6.086   Linking out/klipper.elf
#0 6.138 out/src/spicmds.o: In function `spidev_transfer':
#0 6.138 /build/klipper/src/spicmds.c:96: undefined reference to `spi_software_prepare'
#0 6.138 /build/klipper/src/spicmds.c:104: undefined reference to `spi_software_transfer'
#0 6.138 out/src/i2ccmds.o: In function `command_i2c_write':
#0 6.138 /build/klipper/src/i2ccmds.c:61: undefined reference to `i2c_software_write'
#0 6.138 out/src/i2ccmds.o: In function `command_i2c_read':
#0 6.138 /build/klipper/src/i2ccmds.c:78: undefined reference to `i2c_software_read'
#0 6.138 out/src/i2ccmds.o: In function `command_i2c_modify_bits':
#0 6.138 /build/klipper/src/i2ccmds.c:101: undefined reference to `i2c_software_read'
#0 6.138 /build/klipper/src/i2ccmds.c:111: undefined reference to `i2c_software_write'
#0 6.138 collect2: error: ld returned 1 exit status
#0 6.138 make: *** [Makefile:72: out/klipper.elf] Error 1
------
failed to solve: process "/bin/sh -c git clone -b master git://git.savannah.nongnu.org/simulavr.git     && cd klipper     && cp /usr/src/simulavr.config .config     && make PYTHON=python3     && cp out/klipper.elf /build/simulavr.elf     && rm -f .config     && make PYTHON=python3 clean     && cd ../simulavr     && make python     && make build     && make clean" did not complete successfully: exit code: 2

I've updated the config by creating a new config file with the following options from Klipper:

  1. Micro-controller Architecture (Atmega AVR)
  2. Atmega AVR
  3. enable Enable extra low-level configuration options
  4. Processor model: atmega644p
  5. Processor speed: 20Mhz
  6. Communication Interface: UART 0
  7. enable Compile for simulavr software emulation Everything else has been left to default.
pataar commented 1 year ago

Thanks, LGTM!