pslawinski / esphome_airconintl

Support for Aircon international Mini-Splits via ESPHome
11 stars 4 forks source link

Errors while compiling #1

Closed nicolaeff closed 1 year ago

nicolaeff commented 1 year ago

INFO Reading configuration /config/esp-hisense.yaml... INFO Generating C++ source... INFO Compiling app... Processing esp-hisense (board: nodemcuv2; framework: arduino; platform: platformio/espressif8266 @ 3.2.0)

HARDWARE: ESP8266 80MHz, 80KB RAM, 4MB Flash 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 .pioenvs/esp-hisense/src/main.cpp.o Archiving .pioenvs/esp-hisense/libfb1/libESP8266WiFi.a Compiling .pioenvs/esp-hisense/libf68/ESPAsyncWebServer-esphome/WebServer.cpp.o Compiling .pioenvs/esp-hisense/lib070/DNSServer/DNSServer.cpp.o Compiling .pioenvs/esp-hisense/libfb2/ESP8266mDNS/ESP8266mDNS.cpp.o Compiling .pioenvs/esp-hisense/libfb2/ESP8266mDNS/LEAmDNS.cpp.o Compiling .pioenvs/esp-hisense/libfb2/ESP8266mDNS/LEAmDNS_Control.cpp.o Compiling .pioenvs/esp-hisense/libfb2/ESP8266mDNS/LEAmDNS_Helpers.cpp.o Compiling .pioenvs/esp-hisense/libfb2/ESP8266mDNS/LEAmDNS_Structs.cpp.o Archiving .pioenvs/esp-hisense/lib070/libDNSServer.a Compiling .pioenvs/esp-hisense/libfb2/ESP8266mDNS/LEAmDNS_Transfer.cpp.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_aead/chacha20poly1305/sodium/aead_chacha20poly1305.c.o Archiving .pioenvs/esp-hisense/libf68/libESPAsyncWebServer-esphome.a Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_core/ed25519/core_ed25519.c.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_core/ed25519/core_ristretto255.c.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_core/ed25519/ref10/ed25519_ref10.c.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_hash/crypto_hash.c.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_hash/sha256/cp/hash_sha256_cp.c.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_hash/sha256/hash_sha256.c.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_onetimeauth/crypto_onetimeauth.c.o In file included from src/esphome/core/controller.h:29, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/climate/climate.h: In constructor 'esphome::climate::Climate::Climate()': src/esphome/components/climate/climate.h:167:7: warning: 'esphome::climate::Climate::away' is deprecated: away is deprecated, use preset instead [-Wdeprecated-declarations] 167 | class Climate : public EntityBase { | ^~~ src/esphome/components/climate/climate.h:193:8: note: declared here 193 | bool away{false}; | ^~~~ src/esphome/components/climate/climate.h:167:7: warning: 'esphome::climate::Climate::away' is deprecated: away is deprecated, use preset instead [-Wdeprecated-declarations] 167 | class Climate : public EntityBase { | ^~~ src/esphome/components/climate/climate.h:193:8: note: declared here 193 | bool away{false}; | ^~~~ In file included from src/main.cpp:60: src/aircon_climate.h: In constructor 'AirconClimate::AirconClimate(esphome::uart::UARTComponent*)': src/aircon_climate.h:730:91: note: synthesized method 'esphome::climate::Climate::Climate()' first required here 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [21])' In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [21]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [21]' to 'esphome::sensor::Sensor&&' In file included from src/main.cpp:60: src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [29])' 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [29]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [29]' to 'esphome::sensor::Sensor&&' In file included from src/main.cpp:60: src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [26])' 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [26]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [26]' to 'esphome::sensor::Sensor&&' In file included from src/main.cpp:60: src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [20])' 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [20]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [20]' to 'esphome::sensor::Sensor&&' In file included from src/main.cpp:60: src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [30])' 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [30]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [30]' to 'esphome::sensor::Sensor&&' In file included from src/main.cpp:60: src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [31])' 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [31]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [31]' to 'esphome::sensor::Sensor&&' In file included from src/main.cpp:60: src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [27])' 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [27]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [27]' to 'esphome::sensor::Sensor&&' In file included from src/main.cpp:60: src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [36])' 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [36]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [36]' to 'esphome::sensor::Sensor&&' In file included from src/main.cpp:60: src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [24])' 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [24]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [24]' to 'esphome::sensor::Sensor&&' In file included from src/main.cpp:60: src/aircon_climate.h:730:91: error: no matching function for call to 'esphome::sensor::Sensor::Sensor(const char [23])' 730 | indoor_humidity_status("Indoor Humidity status") {} | ^ In file included from src/esphome/core/controller.h:17, from src/esphome/components/api/api_server.h:4, from src/esphome/components/api/api_connection.h:6, from src/esphome.h:3, from src/main.cpp:3: src/esphome/components/sensor/sensor.h:59:12: note: candidate: 'esphome::sensor::Sensor::Sensor()' 59 | explicit Sensor(); | ^~ src/esphome/components/sensor/sensor.h:59:12: note: candidate expects 0 arguments, 1 provided src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(const esphome::sensor::Sensor&)' 57 | class Sensor : public EntityBase { | ^~ src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [23]' to 'const esphome::sensor::Sensor&' src/esphome/components/sensor/sensor.h:57:7: note: candidate: 'esphome::sensor::Sensor::Sensor(esphome::sensor::Sensor&&)' src/esphome/components/sensor/sensor.h:57:7: note: no known conversion for argument 1 from 'const char [23]' to 'esphome::sensor::Sensor&&' Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_onetimeauth/poly1305/donna/poly1305_donna.c.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_onetimeauth/poly1305/onetimeauth_poly1305.c.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_scalarmult/crypto_scalarmult.c.o Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_scalarmult/curve25519/ref10/x25519_ref10.c.o *** [.pioenvs/esp-hisense/src/main.cpp.o] Error 1 Compiling .pioenvs/esp-hisense/lib41d/libsodium/crypto_scalarmult/curve25519/scalarmult_curve25519.c.o ========================= [FAILED] Took 25.41 seconds =========================

d1mdev commented 1 year ago

I changed class declaration from:

public: AirconClimate(UARTComponent *parent) : PollingComponent(2000), UARTDevice(parent), compressor_frequency("Compressor Frequency"), compressor_frequency_setting("Compressor Frequency Setting"), compressor_frequency_send("Compressor Frequency Send"), outdoor_temperature("Outdoor Temperature"), outdoor_condenser_temperature("Outdoor Condenser Temperature"), compressor_exhaust_temperature("Compressor Exhaust Temperature"), target_exhaust_temperature("Target Exhaust Temperature"), indoor_pipe_temperature("Indoor Evaporator Inlet Temperature"), indoor_humidity_setting("Indoor Humidity setting"), indoor_humidity_status("Indoor Humidity status") {}

to:

public: AirconClimate(UARTComponent *parent) : PollingComponent(2000), UARTDevice(parent) {}

And compliation finished successfuly.

Taronaga commented 1 year ago

public: AirconClimate(UARTComponent *parent) : PollingComponent(2000), UARTDevice(parent) {}

And compliation finished successfuly.

Hello! Your solution did not help me. Could you post your aircon_cliamte.h and garage_ac.yaml

I tried to compile via espHome Thank you.

d1mdev commented 1 year ago

Have not much to say. This link goes to aircon_cliamte.h and garage_ac.yaml, and compiling log. Hope this can help you. I'm not programmer, so don't ask to explain how. Dinno. P.S. I'm using esphome addon for HomeAssistant to compile project.

pslawinski commented 1 year ago

I committed changes that should fix the issue.