Compilation fails : xtensa-lx106-elf-g++: fatal error: Killed signal terminated program cc1plus

Hi,

my devices are now failing the compilation with the following log:

INFO Reading configuration /config/esphome/climat-1.yaml...
INFO Detected timezone 'Europe/Paris'
INFO Generating C++ source...
INFO Compiling app...
Processing climat-1 (board: d1_mini; framework: arduino; platform: platformio/espressif8266 @ 3.2.0)
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
Dependency Graph
|-- <ESPAsyncTCP-esphome> 1.2.3
|-- <ESPAsyncWebServer-esphome> 2.1.0
|   |-- <ESPAsyncTCP-esphome> 1.2.3
|   |-- <Hash> 1.0
|   |-- <ESP8266WiFi> 1.0
|-- <DNSServer> 1.1.1
|-- <ESP8266WiFi> 1.0
|-- <ESP8266mDNS> 1.2
|-- <AsyncMqttClient-esphome> 0.8.6
|   |-- <ESPAsyncTCP-esphome> 1.2.3
|-- <Wire> 1.0
|-- <ArduinoJson> 6.18.5
Compiling /data/climat-1/.pioenvs/climat-1/src/main.cpp.o
Compiling /data/climat-1/.pioenvs/climat-1/lib3ff/ESP8266mDNS/LEAmDNS.cpp.o
Compiling /data/climat-1/.pioenvs/climat-1/lib3ff/ESP8266mDNS/LEAmDNS_Structs.cpp.o
Compiling /data/climat-1/.pioenvs/climat-1/lib3ff/ESP8266mDNS/LEAmDNS_Transfer.cpp.o
xtensa-lx106-elf-g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
*** [/data/climat-1/.pioenvs/climat-1/src/main.cpp.o] Error 1
xtensa-lx106-elf-g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
*** [/data/climat-1/.pioenvs/climat-1/lib3ff/ESP8266mDNS/LEAmDNS.cpp.o] Error 1

Installed versions:

Home Assistant 2022.9.5
Supervisor 2022.09.1
Operating System 9.0
Interface utilisateur : 20220907.2 - latest

Any hint would be appreciated.

Many thanks

4 Likes

I’m having the same problem:

ESPHOME v2022.9.1
Home Assistant 2022.9.5
Supervisor 2022.09.1
Operating System 9.0

It is running on an RPI 4 1GB - 64 bit

From what I understand from reading other users, the problem arises using the 64bit version ;

I tried running ESPHOME on windows 10 with python ; but I can’t finish the configuration of a D1 mini

This is quite frustrating, it is a now critical component for Home assistant.

I hope to find a solution quickly.

1 Like

I have the same situation and I am having a lot of trouble.

1 Like

I had the same problem using the ESPhome UI within the Home Assistant addon, until I pressed the button ‘update all’ in de right hand corner (I only have one device) and then it compiled and updated fine.

Edit: nvm it seems to fail there as well, sometimes it works fine other times I get the error.

I tried to compile on HA Addon, but I had the same error. Than, I intsalled ESPhome on windows, and compile was ok.

Installing ESPhome on windows:
https://esphome.io/guides/installing_esphome.html

I had my own yaml on my drive d:, so I just ran it. (esphome run d:\myownyaml.yaml)

It worked for me…

I’m having the same issue too.
This started happening after I updated esphome, core and Home Assistant OS to latest.

Home Assistant 2022.9.6
Supervisor 2022.09.1
Operating System 9.0
Frontend 20220907.2 - latest
ESPHome: 2022.9.1

Also I have currently 19 esphome devices and shortly there will be more than 30 and I don’t want to unless there is a speceific reason since there is constantly an update anyways and compilation+update takes long especially for all the devices. (also, don’t fix it if it’s not broken)

INFO Reading configuration /config/esphome/powermeter-03.yaml...
INFO Generating C++ source...
INFO Compiling app...
Processing powermeter-03 (board: esp01_1m; framework: arduino; platform: platformio/espressif8266 @ 3.2.0)
--------------------------------------------------------------------------------
HARDWARE: ESP8266 80MHz, 80KB RAM, 1MB Flash
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
Dependency Graph
|-- ESPAsyncTCP-esphome @ 1.2.3
|-- ESPAsyncWebServer-esphome @ 2.1.0
|   |-- ESPAsyncTCP-esphome @ 1.2.3
|   |-- Hash @ 1.0
|   |-- ESP8266WiFi @ 1.0
|-- DNSServer @ 1.1.1
|-- ESP8266WiFi @ 1.0
|-- ESP8266mDNS @ 1.2
|-- noise-c @ 0.1.4
|   |-- libsodium @ 1.10018.1
Compiling /data/powermeter-03/.pioenvs/powermeter-03/src/esphome/components/api/api_connection.cpp.o
Compiling /data/powermeter-03/.pioenvs/powermeter-03/src/esphome/components/api/api_pb2.cpp.o
Compiling /data/powermeter-03/.pioenvs/powermeter-03/src/esphome/components/api/api_server.cpp.o
Compiling /data/powermeter-03/.pioenvs/powermeter-03/src/esphome/components/api/list_entities.cpp.o
xtensa-lx106-elf-g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
*** [/data/powermeter-03/.pioenvs/powermeter-03/src/esphome/components/api/list_entities.cpp.o] Error 1
xtensa-lx106-elf-g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
*** [/data/powermeter-03/.pioenvs/powermeter-03/src/esphome/components/api/api_server.cpp.o] Error 1
========================= [FAILED] Took 68.34 seconds =========================

Did anyone find a fix for this?

ok I updated one of the older devices which had an available update, now it seems like the new device is compilig.

Try stopping all other addons before compiling, for me on Pi3 it seems to be a RAM related issue.
After stopping all other addons it worked.

10 Likes

That worked for me. I did just a restart.
Thx !!

1 Like

I opened a terminal on HA while compiling with ESPHome. On a Raspberrypi4 with 1G of ram it looks like it almost run out of memory:

image

I found this conversation which acknowledge there seems to be a problem with lack of memory on Raspberrypis: Esphome killing home assistant

2 Likes

My work-a-round was to build home assistant in a virtuabox on my iMac.
From there I was able to update or change my esphome.

1 Like

Been able to publish setting to my esphome device using Raspberry pi 4 instead of my Raspberry Pi 3b on which I run my current HA setup. Might have something to do with avalaible ram.

esphome 2022.11.0 fixes that by adding support for a new config:

esphome:
  ...
  compile_process_limit: 1
8 Likes

The compile_process_limit: 1 fixed my problem - thanks. Just to clarify for other newbies like me - it is in the script of the individual ESPhome device and not in the global config jaml file.

Question: Is there a way I can set this on a global level for all ESPhome scripts so I don’t have to specify it for every individual device?

1 Like

Thank you for this, based on my experience today, either disabling other plugins to have some room on memory or limiting worked.

The compile_process_limit: 1 fixed my problem too with Raspberry pi 3+B
Thank you!

I read somewhere else that you can also set a default_compile_process_limit in the options of ESPHome now. For me it worked and solved it without altering the individual esphome devices.

Settings → Add-ons → Esphome → configuration tab → Toggle on: “Show unused optional configuration options” and then put 1 in “default_compile_process_limit”

4 Likes

Hello, the new flag: compile_process_limit: 1 isn’t fixing the problem for me.

I manually added it to my configuration.yaml:

esphome:
  compile_process_limit: 1

I also followed the manual steps:

Settings → Add-ons → Esphome → configuration tab → Toggle on: 
“Show unused optional configuration options” and then put 1 in 
“default_compile_process_limit”

It still fails on my Pi3:

xtensa-lx106-elf-g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
*** [/data/temp-sensor/.pioenvs/temp-sensor/src/esphome/components/web_server_base/web_server_base.cpp.o] Error 1
========================= [FAILED] Took 77.53 seconds =========================

I’m going to try and kill processes to free up memory but just know that the new flag doesn’t work for everyone.

Any advice or suggestions are very welcome!

Thank you.

1 Like

I have the same problem on RPi3 so I manually stopped addons like Editor, Terminal, everything I don’t currently need and then the compilation ran fine.

1 Like