While running a configure script before compiling an application on CentOS Linux I received an error noting that libgdbm could not be found. Below I display the actual error output that interrupted the configure script, how the correct RPM package to resolve the error was located, and the output of installing the new package on CentOS Linux via YUM.
Configure Error On CentOS Linux: libgdbm
- configure: error: *** libgdbm not found ***
When I receive errors like the above I typically use YUM to locate what package includes the necessary items to complete the configure script or list the available packages named whatever the configure script is complaining about as shown in the below example.
Use YUM To Discover Packages That Include Missing Files:
- [root@dev ~]# yum whatprovides *libgdbm*
- Loaded plugins: fastestmirror, refresh-packagekit
- Loading mirror speeds from cached hostfile
- * base: yum.singlehop.com
- * epel: mirror.steadfast.net
- * extras: mirror.steadfast.net
- * rpmforge: ftp-stud.fht-esslingen.de
- * updates: mirror.rackspace.com
- atrpms/filelists_db | 1.1 MB 00:03
- gdbm-devel-1.8.0-36.el6.i686 : Development libraries and header files for the gdbm library
- Repo : base
- Matched from:
- Filename : /usr/lib/libgdbm.so
- gdbm-1.8.0-36.el6.x86_64 : A GNU set of database routines which use extensible hashing
- Repo : base
- Matched from:
- Filename : /usr/lib64/libgdbm.so.2.0.0
- Other : libgdbm.so.2()(64bit)
- Filename : /usr/lib64/libgdbm.so.2
- gdbm-devel-1.8.0-36.el6.x86_64 : Development libraries and header files for the gdbm library
- Repo : base
- Matched from:
- Filename : /usr/lib64/libgdbm.so
- gdbm-1.8.0-36.el6.i686 : A GNU set of database routines which use extensible hashing
- Repo : base
- Matched from:
- Other : libgdbm.so.2
- Filename : /usr/lib/libgdbm.so.2.0.0
- Filename : /usr/lib/libgdbm.so.2
- nemiver-0.8.2el6-1.el6.x86_64 : A GNOME C/C++ Debugger
- Repo : epel
- Matched from:
- Other : libgdbmod.so()(64bit)
- Filename : /usr/lib64/nemiver/modules/libgdbmod.so
- gdbm-1.8.0-36.el6.x86_64 : A GNU set of database routines which use extensible hashing
- Repo : installed
- Matched from:
- Filename : /usr/lib64/libgdbm.so.2.0.0
- Other : libgdbm.so.2()(64bit)
- Filename : /usr/lib64/libgdbm.so.2
- [root@dev ~]#
Typically you will need the “-devel” package when running into an error with a configure script so based on the above output the gdbm-devel package would need to be installed as shown in the below example output.
Install gdbm-devel Using YUM On CentOS Linux:
- [root@dev ~]# yum install gdbm-devel
- Loaded plugins: fastestmirror, refresh-packagekit
- Loading mirror speeds from cached hostfile
- * base: yum.singlehop.com
- * epel: mirror.steadfast.net
- * extras: mirror.steadfast.net
- * rpmforge: apt.sw.be
- * updates: mirror.rackspace.com
- Setting up Install Process
- Resolving Dependencies
- --> Running transaction check
- ---> Package gdbm-devel.x86_64 0:1.8.0-36.el6 set to be updated
- --> Finished Dependency Resolution
- Dependencies Resolved
- =====================================================================================================================================================
- Package Arch Version Repository Size
- =====================================================================================================================================================
- Installing:
- gdbm-devel x86_64 1.8.0-36.el6 base 25 k
- Transaction Summary
- =====================================================================================================================================================
- Install 1 Package(s)
- Upgrade 0 Package(s)
- Total download size: 25 k
- Installed size: 22 k
- Is this ok [y/N]: y
- Downloading Packages:
- gdbm-devel-1.8.0-36.el6.x86_64.rpm | 25 kB 00:00
- Running rpm_check_debug
- Running Transaction Test
- Transaction Test Succeeded
- Running Transaction
- Installing : gdbm-devel-1.8.0-36.el6.x86_64 1/1
- Installed:
- gdbm-devel.x86_64 0:1.8.0-36.el6
- Complete!
- [root@dev ~]#
After installing gdbm-devel I was able to move past the error noted above in the configure script though I ran into other errors moving forward. I used the same process above for each of the error until the configure script completed successfully.