ls: error while loading shared libraries: libtermcap.so.2: cannot open shared object file: No such file or directory solution

ls
ls: error while loading shared libraries: libtermcap.so.2: cannot open shared object file: No such file or directory

This is not an ldd problem or case of anything missing, this only happened after I upraded Ubuntu.

declare -x PATH="/home/user/bin:/usr/local/bin:/usr/bin:/bin:/usr/games"

"/home/user/bin" is the problem!  It's weird because I have no idea how it happened.

Other users don't have this problem and when typing "export" you see their PATH is set differently:

declare -x PATH="/usr/local/bin:/usr/bin:/bin:/usr/games"

Solution
fix it like this: export PATH="/usr/local/bin:/usr/bin:/bin:/usr/games"

*The proper solution

Check your "~/.profile" file, you'll notice that it has a weird feature to look for a bin directory in your home path.

# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi
~                 

It turns out I do have a ~/bin path, I just moved bin to bin-disable and logged in again and the problem was solved.

This is kind of a weird and annoying quirky feature, if it can't find the libraries in the first path why doesn't it check the other paths (which it obviously doesn't since that's why we get thsoe .so mising errors)?


Tags:

ls, loading, libraries, libtermcap, directory, solutionls, ldd, upraded, ubuntu, declare, quot, user, bin, usr, users, typing, export, ll, feature, executed, interpreter, login, shells, bash, bash_profile, bash_login, examples, startup, located, default, umask, etc, ssh, logins, install, configure, libpam, bash_version, bashrc, fi, includes, disable, logged, quirky, doesn, paths, thsoe, mising, errors,

Latest Articles

  • Convert-im6.q16: attempt to perform an operation not allowed by the security policy `PDF' @ error/constitute.c/IsCoderAuthorized/413. convert-im6.q16: no images defined `pts-time.jpg' @ error/convert.c/ConvertImageCommand/3258. solution ImageMagick P
  • Apache PHP sending expires header solution cannot use cache with CDN
  • How to install virt-manager in Mint 22/Ubuntu 22
  • Infiniband Guide
  • python mysql install error: /bin/sh: 1: mysql_config: not found /bin/sh: 1: mariadb_config: not found /bin/sh: 1: mysql_config: not found mysql_config --version
  • FreePBX 17 How To Add a Trunk
  • Docker Container Onboot Policy - How to make sure a container is always running
  • FreePBX 17 How To Add Phones / Extensions and Register
  • Warning: The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes. solution
  • Cisco How To Use a Third Party SIP Phone (eg. Avaya, 3CX)
  • Cisco Unified Communication Manager (CUCM) - How To Add Phones
  • pptp / pptpd not working in DD-WRT iptables / router
  • systemd-journald high memory usage solution
  • How to Install FreePBX 17 in Linux Debian Ubuntu Mint Guide
  • How To Install Cisco's CUCM (Cisco Unified Communication Manager) 12 Guide
  • Linux Ubuntu Redhat How To Extract Images from PDF
  • Linux and Windows Dual Boot Issue NIC Won't work After Booting Windows
  • Cisco CME How To Enable ACD hunt groups
  • How to install gns3 on Linux Ubuntu Mint
  • How to convert audio for Asterisk .wav format