different problems with different versions of libcurl. Install is broken when using any version. Topic is solved

Please use template to report bugs and problems. Post here your questions when not sure where else to post
Only for bugs in the Domoticz application! other problems go in different subforums!
Forum rules
Before posting here, make sure you are on the latest Beta or Stable version.
If you have problems related to the web gui, clear your browser cache + appcache first.

Use the following template when posting here:

Version: xxxx
Platform: xxxx
Plugin/Hardware: xxxx
Description:
.....

If you are having problems with scripts/blockly, always post the script (in a spoiler or code tag) or screenshots of your blockly

If you are replying, please do not quote images/code from the first post

Please mark your topic as Solved when the problem is solved.
Post Reply
trixx
Posts: 3
Joined: Thursday 21 June 2018 10:21
Target OS: Linux
Domoticz version:
Contact:

different problems with different versions of libcurl. Install is broken when using any version.

Post by trixx » Thursday 21 June 2018 10:28

Running on ununtu 18.4, on the beta for for months without issues, now with the latest update (i think ? ) it broke...
(on a normal desktop core duo running as server)

first i got errors complaining about libcurl3 not being installed, installed it.
Now the error when starting looks like this:

Code: Select all

USERNAME@SERVERNAME:/opt/domoticz$ sudo service domoticz status
● domoticz.service - LSB: Home Automation System
   Loaded: loaded (/etc/init.d/domoticz.sh; generated)
   Active: active (exited) since Thu 2018-06-21 09:17:33 CEST; 5s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 13803 ExecStop=/etc/init.d/domoticz.sh stop (code=exited, status=0/SUCCESS)
  Process: 13825 ExecStart=/etc/init.d/domoticz.sh start (code=exited, status=0/SUCCESS)

Jun 21 09:17:33 SERVERNAME domoticz.sh[13825]:   File "<frozen importlib._bootstrap_external>", line 1443 in path_hook_for_FileFinder
Jun 21 09:17:33 SERVERNAME domoticz.sh[13825]:   File "<frozen importlib._bootstrap_external>", line 1193 in _path_hooks
Jun 21 09:17:33 SERVERNAME domoticz.sh[13825]:   File "<frozen importlib._bootstrap_external>", line 1217 in _path_importer_cache
Jun 21 09:17:33 SERVERNAME domoticz.sh[13825]:   File "<frozen importlib._bootstrap_external>", line 1245 in _get_spec
Jun 21 09:17:33 SERVERNAME domoticz.sh[13825]:   File "<frozen importlib._bootstrap_external>", line 1276 in find_spec
Jun 21 09:17:33 SERVERNAME domoticz.sh[13825]:   File "<frozen importlib._bootstrap>", line 906 in _find_spec
Jun 21 09:17:33 SERVERNAME domoticz.sh[13825]:   File "<frozen importlib._bootstrap>", line 963 in _find_and_load_unlocked
Jun 21 09:17:33 SERVERNAME domoticz.sh[13825]:   File "<frozen importlib._bootstrap>", line 983 in _find_and_load
Jun 21 09:17:33 SERVERNAME domoticz.sh[13825]: Aborted
Jun 21 09:17:33 SERVERNAME systemd[1]: Started LSB: Home Automation System.

i tried:

Code: Select all

sudo apt install libcurl4-gnutls-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
libcurl4-gnutls-dev is already the newest version (7.58.0-2ubuntu3.1).
Then

Code: Select all

sudo apt install libcurl4
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  cmake-data libjsoncpp1 librhash0
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  libcurl3
The following NEW packages will be installed:
  libcurl4
0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
Need to get 0 B/214 kB of archives.
After this operation, 3,072 B disk space will be freed.
Do you want to continue? [Y/n] Y
now the initial error returns:

Code: Select all

domoticz.sh[22510]: /opt/domoticz/domoticz: /usr/lib/x86_64-linux-gnu/libcurl.so.4: version `CURL_OPENSSL_3' not found (required by /opt/domoticz/domoticz)
Loaded: loaded (/etc/init.d/domoticz.sh; generated)
Active: active (exited) since Thu 2018-06-21 10:07:30 CEST; 3min 33s ago

trixx
Posts: 3
Joined: Thursday 21 June 2018 10:21
Target OS: Linux
Domoticz version:
Contact:

Re: different problems with different versions of libcurl. Install is broken when using any version.

Post by trixx » Thursday 21 June 2018 12:10

So i narrowed down the problem, it seems like libcurl3 & 4 just can't co-exist:

Code: Select all

 sudo apt-get install curl
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  libcurl4
The following packages will be REMOVED:
  libcurl3
The following NEW packages will be installed:
  curl libcurl4

alanlsmith
Posts: 92
Joined: Monday 07 August 2017 17:17
Target OS: Linux
Domoticz version: 4.9701
Location: Near London
Contact:

Re: different problems with different versions of libcurl. Install is broken when using any version.

Post by alanlsmith » Thursday 21 June 2018 13:08

You are correct 3 and 4 won't co-exist and Domoticz won't start if libcurl4 is present (and libcurl3 is not) and curl doesn't work if libcurl4 is not present.

I get round it at the moment by running a script which installs libcurl3 (and by definition removes libcurl4) then starts Domoticz and finally installs libcurl4.

I believe the correct way to deal with this is to build Domoticz from source but in my case I have failed miserably to do this, concluding that a complete clean reinstall of Ubuntu is needed. (as I have successfully built Domoticz from source in a virtual machine running 18.04) there is obviously something amiss with my install but I'm reluctant to start afresh given the other software I have running on the same box. I might transfer Domoticz to a spare Pi then clean out the NUC and start again.

Another way presumably would be to allow Domoticz to run with libcurl4, as more people who run on Ubuntu upgrade this inconvenience is likely to grow.
Domoticz v4.9701 beta, Ubuntu 18.04 on Intel NUC i3, 8Gb ram, 70Gb drive, RFXtrx433, z-wave and a bit of Broadlink/Android

trixx
Posts: 3
Joined: Thursday 21 June 2018 10:21
Target OS: Linux
Domoticz version:
Contact:

Re: different problems with different versions of libcurl. Install is broken when using any version.

Post by trixx » Friday 22 June 2018 16:30

i tried all day to fix it but i can't repair the install in any way.
A clean reinstall of ubuntu isn't possible because of all the other services running on the server.

Or i could take the opportunity to virtualize the drive, run esxi on the server and take daily snaps of the HD so i can just revert to a working state....

For now I'll try to restore my last backup from domoticz to a pi which does still run, untill i can get domoticz up and running again on the server.

alanlsmith
Posts: 92
Joined: Monday 07 August 2017 17:17
Target OS: Linux
Domoticz version: 4.9701
Location: Near London
Contact:

Re: different problems with different versions of libcurl. Install is broken when using any version.

Post by alanlsmith » Friday 22 June 2018 20:38

It’s not the right way to do it but as I said if you install libcurl3 then you should be able to start Domoticz, after which you can install libcurl4.
Domoticz v4.9701 beta, Ubuntu 18.04 on Intel NUC i3, 8Gb ram, 70Gb drive, RFXtrx433, z-wave and a bit of Broadlink/Android

alanlsmith
Posts: 92
Joined: Monday 07 August 2017 17:17
Target OS: Linux
Domoticz version: 4.9701
Location: Near London
Contact:

Re: different problems with different versions of libcurl. Install is broken when using any version.

Post by alanlsmith » Saturday 23 June 2018 20:28

Just upgraded to Domoticz v4.9701 and this appears to now be resolved as Domoticz started after the upgrade with libcurl4 installed.

[edit: this must also apply with v.49700 stable, I just managed to miss it.]

Thank you very much to Gismocuz and all others responsible.
Domoticz v4.9701 beta, Ubuntu 18.04 on Intel NUC i3, 8Gb ram, 70Gb drive, RFXtrx433, z-wave and a bit of Broadlink/Android

Post Reply

Who is online

Users browsing this forum: No registered users and 9 guests