Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster Topic is solved

On various Hardware and OS systems: pi / windows / routers / nas, etc

Moderator: leecollings

Post Reply
meal
Posts: 108
Joined: Monday 04 March 2019 14:59
Target OS: Raspberry Pi / ODroid
Domoticz version: 2025.1
Location: France
Contact:

Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by meal »

Dear All,

The context is the following :
I have a Raspberry PI3 running Domoticz Version: 2020.1 (build 11835 compiled from the sources).
The configuration of the Domoticz Version running on Debian Stretch:
-Build Hash: d93f467a7-modified
- Compile Date: 2020-03-23 11:18:12
- dzVents Version: 3.0.1
- Python Version: 3.5.3 (default, Sep 27 2018, 17:25:39) [GCC 6.3.0 20170516]

The objective is to upgrade the os from Stretch to Buster.

I have upgraded the os (https://pimylifeup.com/upgrade-raspbian ... an-buster/) and the process has been achieved successfully.
pi@domoticz:~/domoticz $ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

However when I start domoticz manually after the reboot I get the following message
pi@domoticz:~/domoticz $ ./domoticz
./domoticz: /usr/lib/arm-linux-gnueabihf/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by ./domoticz)

It seems that the libcurl4 has been installed during the upgrade of the os and I am not able to install libcurl13 again via the commande line "sudo apt-get install libcurl3"

I would be grateful if someone has already faced the issue to help me sort that out.

Many thanks in advance

Best regards
Meal
meal
User avatar
waaren
Posts: 6028
Joined: Tuesday 03 January 2017 14:18
Target OS: Linux
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by waaren »

meal wrote: Sunday 25 October 2020 2:00 I have a Raspberry PI3 running Domoticz Version: 2020.1 (build 11835 compiled from the sources).
I would be grateful if someone has already faced the issue to help me sort that out.
I guess the domoticz version you use is compiled locally when still on stretch and that is is dynamical linked to curl. Have you tried recompiling it under buster?
Debian buster, bullseye on RPI-4, Intel NUC.
dz Beta, Z-Wave, RFLink, RFXtrx433e, P1, Youless, Hue, Yeelight, Xiaomi, MQTT
==>> dzVents wiki
meal
Posts: 108
Joined: Monday 04 March 2019 14:59
Target OS: Raspberry Pi / ODroid
Domoticz version: 2025.1
Location: France
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by meal »

Hello,

Yes you are right. My domoticz version has been compiled under stretch so far.

I will recompile it under Buster.

Would you be kind to provide me the latest recommandation to compile domoticz under Buster ?

I thank you in advance

BR
Meal
meal
User avatar
waaren
Posts: 6028
Joined: Tuesday 03 January 2017 14:18
Target OS: Linux
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by waaren »

meal wrote: Sunday 25 October 2020 8:20 Would you be kind to provide me the latest recommandation to compile domoticz under Buster ?
Sure. It's all in this wiki page
Debian buster, bullseye on RPI-4, Intel NUC.
dz Beta, Z-Wave, RFLink, RFXtrx433e, P1, Youless, Hue, Yeelight, Xiaomi, MQTT
==>> dzVents wiki
meal
Posts: 108
Joined: Monday 04 March 2019 14:59
Target OS: Raspberry Pi / ODroid
Domoticz version: 2025.1
Location: France
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by meal »

Hello

I have performed the build of domoticz according to "https://www.domoticz.com/wiki/Build_Dom ... rom_source"

First cd /home/pi/DEV20200309/domoticz
Then git pull
Then cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt
and finally make

I get the error "Python.h" not found as shown below.

[ 18%] Building CXX object CMakeFiles/domoticz.dir/main/EventSystem.cpp.o
In file included from /home/pi/DEV20200309/domoticz/main/../hardware/plugins/PythonObjects.h:4,
from /home/pi/DEV20200309/domoticz/main/../hardware/plugins/Plugins.h:6,
from /home/pi/DEV20200309/domoticz/main/EventSystem.cpp:41:
/home/pi/DEV20200309/domoticz/main/../hardware/plugins/DelayedLink.h:12:10: fatal error: Python.h: Aucun fichier ou dossier de ce type
#include <Python.h>
^~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/domoticz.dir/build.make:186: CMakeFiles/domoticz.dir/main/EventSystem.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:372: CMakeFiles/domoticz.dir/all] Error 2
make: *** [Makefile:169: all] Error 2

I made some investigation about the file "python.h" in the outcome of the execution of the command line "cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt"

pi@domoticz:~/DEV20200309/domoticz $ cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt
-- Submodule update
-- LUA library found at: /usr/lib/arm-linux-gnueabihf/liblua5.3.a
-- Python3 includes found at: /usr/include/python3.5m
-- Building with I2C support
-- Building with SPI support
-- ###########################
-- Compiling Revision #12499
-- ###########################
-- Using builtin jsoncpp library
-- JsonCpp Version: 1.9.4
-- Using builtin Mosquitto library
-- WITH_DLT = OFF
-- Using builtin SQLite library
-- OPENSSL library found at: /usr/lib/arm-linux-gnueabihf/libssl.so;/usr/lib/arm-linux-gnueabihf/libcrypto.so
-- Linking against boost static libraries
-- BOOST includes found at: /usr/local/include
-- ZLIB library found at: /usr/lib/arm-linux-gnueabihf/libz.so
-- ZLIB includes found at: /usr/include
-- Curl library found at: /usr/lib/arm-linux-gnueabihf/libcurl.so
-- Curl includes found at: /usr/include/arm-linux-gnueabihf
-- CEREAL includes found at: /usr/include
-- LIBUSB library found at: /usr/lib/arm-linux-gnueabihf/libusb.so
-- OpenZWave library found at: /home/pi/DEV20200309/open-zwave/libopenzwave.a
-- OpenZWave includes found at: /home/pi/DEV20200309/open-zwave/cpp/src
-- GPIO is available
-- Found telldus-core (telldus-core.h) at : /usr/include
-- Found libtelldus-core at : /usr/lib/libtelldus-core.so, adding telldus support
-- Using precompiled headers
-- Using static libgcc/libstdc++
-- Configuring done
-- Generating done
-- Build files have been written to: /home/pi/DEV20200309/domoticz

The command line "cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt" found the python3 include file at /usr/include/python3.5m.
However the os ugrade from Stretch to Buster upgraded also at the same time python3 from python3.5 to python3.7 as shown in the attached screen capture.
Screen Capture /usr/include directory
Screen Capture /usr/include directory
ScreenCapture 2020-10-26 223803.png (28.51 KiB) Viewed 2228 times
So I do not understand how the command line "cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt" found the python3 include file at /usr/include/python3.5m which does not exist any longer.

I would be grateful if you could advise me on the way to proceed.

Mant thanks in advance.

BR
meal
User avatar
waaren
Posts: 6028
Joined: Tuesday 03 January 2017 14:18
Target OS: Linux
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by waaren »

meal wrote: Monday 26 October 2020 23:07 I have performed the build of domoticz according to "https://www.domoticz.com/wiki/Build_Dom ... rom_source"
First cd /home/pi/DEV20200309/domoticz
I tested the installation process wiki on an Intel NUC and on a Raspberry (both buster) and it works without issues on both.

Did you also managed to do the steps before the git clone successfully ?

sudo apt-get install make ....
get and install cmake 3.16 or newer
get and install boost
etc..
Debian buster, bullseye on RPI-4, Intel NUC.
dz Beta, Z-Wave, RFLink, RFXtrx433e, P1, Youless, Hue, Yeelight, Xiaomi, MQTT
==>> dzVents wiki
meal
Posts: 108
Joined: Monday 04 March 2019 14:59
Target OS: Raspberry Pi / ODroid
Domoticz version: 2025.1
Location: France
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by meal »

Hello,

I have installed python3.5 via "sudo apt-get install python3.5-dev"

and went through the domoticz build process successfully .

I am now facing issues with openzwave with some nodes partially configured.

I investigated the topic and found a potential issue.

I compiled successfully the latest version of openzwave "Building OpenZWave Version 1.6-1392-gb0afd4c6 - 1.6.1392".

when launching the command line "cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt" for the build of domoticz it shows
-- OpenZWave library found at: /home/pi/DEV20200309/open-zwave/libopenzwave.a
-- OpenZWave includes found at: /home/pi/DEV20200309/open-zwave/cpp/src
which is correct.

However when starting domoticz I have in the log
2020-10-28 02:52:31.454 Status: OpenZWave: using config in: /home/pi/domoticz/Config/
2020-10-28 02:52:31.501 Status: OpenZWave: Starting...
2020-10-28 02:52:31.501 Status: OpenZWave: Version: 1.6-1052-gf3920e88

The version displayed in the log is not consistent with the compiled openzwave libray

I would be helpful for me to have some hints on the reason this happened.

Many thanks in advance

BR
meal
User avatar
waaren
Posts: 6028
Joined: Tuesday 03 January 2017 14:18
Target OS: Linux
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by waaren »

meal wrote: Wednesday 28 October 2020 2:59 I have installed python3.5 via "sudo apt-get install python3.5-dev"
According to the wiki you should have done

Code: Select all

sudo apt-get install make gcc g++ libssl-dev git libcurl4-gnutls-dev libusb-dev python3-dev zlib1g-dev libcereal-dev liblua5.3-dev uthash-dev
This would install the latest version of python3-dev (3.7.3-1 on buster or 3.8.2-3 on bullseye)
I compiled successfully the latest version of openzwave "Building OpenZWave Version 1.6-1392-gb0afd4c6 - 1.6.1392".

when launching the command line "cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt" for the build of domoticz it shows
-- OpenZWave library found at: /home/pi/DEV20200309/open-zwave/libopenzwave.a
-- OpenZWave includes found at: /home/pi/DEV20200309/open-zwave/cpp/src
which is correct.

However when starting domoticz I have in the log
2020-10-28 02:52:31.454 Status: OpenZWave: using config in: /home/pi/domoticz/Config/
2020-10-28 02:52:31.501 Status: OpenZWave: Starting...
2020-10-28 02:52:31.501 Status: OpenZWave: Version: 1.6-1052-gf3920e88
Nice catch !
Seems to be only cosmetic but anyway this is how I solved it. Let me know if it also works for you. I will then update the wiki

Code: Select all

### open-zwave part
cd open-zwave-read-only/
git pull

vi cpp/src/vers.cpp # edit the version numbers and strings to

#include "Defs.h"
uint16_t ozw_vers_major = 1;
uint16_t ozw_vers_minor = 6;
uint16_t ozw_vers_revision = 1392;
char ozw_version_string[] = "1.6-1392-gb0afd4c6";

rm libopenzwave.a # this will force a new linking when doing a make. Ready in seconds
make
make install

### domoticz part

cd ../domoticz-dev # or your domoticz development dir

rm -f bin/domoticz domoticz # remove existing binaries
cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt
make -j2 # this will force a new linking. Ready in seconds - up to a minute
Debian buster, bullseye on RPI-4, Intel NUC.
dz Beta, Z-Wave, RFLink, RFXtrx433e, P1, Youless, Hue, Yeelight, Xiaomi, MQTT
==>> dzVents wiki
meal
Posts: 108
Joined: Monday 04 March 2019 14:59
Target OS: Raspberry Pi / ODroid
Domoticz version: 2025.1
Location: France
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by meal »

Hello
I applied the changes in vers.cpp, rebuild open-zwave and linked domoticz again and it is working fine.
The open-zwave version is now consistent.
However it does not solve the issue with the partially configured zwave nodes.
Many thanks for your support
BR
meal
User avatar
waaren
Posts: 6028
Joined: Tuesday 03 January 2017 14:18
Target OS: Linux
Domoticz version: Beta
Location: Netherlands
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by waaren »

meal wrote: Wednesday 28 October 2020 9:10 I applied the changes in vers.cpp, rebuild open-zwave and linked domoticz again and it is working fine.
The open-zwave version is now consistent.
👍
I updated the wiki to include this part. If you have time can you please have a look to see if it is clear enough? Thx !
Debian buster, bullseye on RPI-4, Intel NUC.
dz Beta, Z-Wave, RFLink, RFXtrx433e, P1, Youless, Hue, Yeelight, Xiaomi, MQTT
==>> dzVents wiki
meal
Posts: 108
Joined: Monday 04 March 2019 14:59
Target OS: Raspberry Pi / ODroid
Domoticz version: 2025.1
Location: France
Contact:

Re: Version CURL_OPENSSL_3 not found when upgrading the os from Stretch to Buster

Post by meal »

Hello,
I took a look at wiki "https://www.domoticz.com/wiki/Build_Dom ... rom_source" regarding the update of open_zwave version string in vers.cpp.
It is fine.
BR
meal
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest