5

We have a system (Power TAC) that has been building successfully for several years on multiple versions of Linux, Windows, and MacOS. Under Pop!_OS 22.04 (Ubuntu 22.04 with a slightly different appearance), the maven build fails with the message

[INFO] 03 06 2022 19:42:21.934:INFO [launcher]: Starting browser PhantomJS [INFO] 03 06 2022 19:42:22.005:ERROR [phantomjs.launcher]: Auto configuration failed [INFO] 140172241258432:error:25066067:DSO support routines:DLFCN_LOAD:could not load the shared library:dso_dlfcn.c:185:filename(libproviders.so): libproviders.so: cannot open shared object file: No such file or directory

OpenSSL is installed and works. Not sure what to try next. Any ideas welcome.

GrampaJohn
  • 617
  • 6
  • 10

1 Answers1

5

Ubuntu 22.04 uses the new OpenSSL version 3.0.2 instead of the older OpenSSL version 1.1.1 . These OpenSSL versions are not fully compatible, so this is why you see this error when PhantomJS tries to auto configure the SSL/TLS settings.

If you don't need OpenSSL for your PhantomJS application you can disable SSL by setting the following environmental variable, before you run your application:

export OPENSSL_CONF=/dev/null

# or you can set it when you run the application

OPENSSL_CONF=/dev/null ./yourapp

Otherwise you can uses containerization tools (such as Docker) to pack an older OpenSSL version along your application.

Ezbob
  • 329
  • 1
  • 9
  • I would think this will impact the functionality of phantom – Scott Stensland Mar 09 '23 at 13:11
  • If you are talking about disabling openssl, then yes it will mean that phantomJS will be unable to use HTTPS. But this can be a non-issue depending on what you are using PhantomJS for. Also, to my knowledge, it seems that PhantomJS is not actively maintained anymore, so if you are expecting high security from it then you will be surprised. – Ezbob Mar 12 '23 at 15:17