dog: Error when attempting to run

I downloaded dog-v0.1.0-x86_64-unknown-linux-gnu.zip to my Ubuntu 22.04 release, and I got this error

support@Network-VM /t/completions> dog
dog: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory

Looking for libssl I found:

support@Network-VM /t/completions [124]> bash
support@Network-VM:/tmp/completions$ sudo dpkg -l |grep libssl*
ii  libss2:amd64                               1.46.5-2ubuntu1.1                       amd64        command-line interface parsing library
ii  libssh-4:amd64                             0.9.6-2build1                           amd64        tiny C SSH library (OpenSSL flavor)
ii  libssl3:amd64                              3.0.2-0ubuntu1.6                        amd64        Secure Sockets Layer toolkit - shared libraries

Looks like It needs to be perhaps installed, or there is a dependency issue

How do I install the correct ssl stuff, and could you please update your readme, thanks

About this issue

  • Original URL
  • State: open
  • Created 2 years ago
  • Reactions: 3
  • Comments: 16

Most upvoted comments

Leaving dependency issues up to the user is lazy coding, python for instance has a “try” statement that is useful for loading dependencies … here is some code I wrote before to install a python library for my app:

#check if the rich module exists, if not, install it
try:
    from rich import print
    from rich import pretty
except ImportError:
    subprocess.call([sys.executable, "-m", "pip", "install", "rich"])
    import rich
    time.sleep (1)
     #tell the user the library is installed
    print("[!] Rich module is now installed")
    print("Please restart the program")
    time.sleep(3)
    sys.exit()

If the system doesn’t come pre-baked with some dependency let the program try to install it - if it cannot, tell the user something like, “this app requires a dependency “x” that appears incompatible with the current environment, please consult the web for possible fixes” etc etc

Just a thought

Please tell me that you’ve never written code like that. Ever. Holy crap - never install dependencies in a user’s environment - not without their explicit consent. It’s fine to download stuff, but you shouldn’t just install stuff randomly like that.

Suggest commands, but don’t run them. “Leaving things up to the user” more like “giving users the option to install things themselves”. These aren’t end-user programs - these are command-line applications. It’s not lazy to not mess with the user’s setup or environment or make assumptions about it.

Not only the libssl, I am also getting an error on Ubuntu 20.

➜ dog
dog: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found (required by dog)