From: Zachary Thomas Walters (zachwalters@attbi.com)
Date: Tue 04 Feb 2003 - 01:05:57 IST
I just installed svgalib 1.4.3. "Make install" and "make demoprogs" gave no errors, but when I tried to run the demo programs I was given an error to the effect of "Error: cannot open shared library: libvgagl.so.1: cannot open object file: no such file or directory." That is not a typo, it is looking for the file "libvgagl.so.1" but why?! I get the same error when I compile my own programs with "gcc someprogram.c -o someprogram -lvga -lvgagl." Compiling gives no errors but when I run the object file I am given the same error. The library files are contained in /usr/local/lib which contains libvga.so, libvga.so.1.4.3, libvgagl.so, libvgagl.so.1.4.3. I am pretty sure that libvga.so and libvgagl.so are symbolic links to libvga.so.1.4.3 and libvgagl.so.1.4.3, but I am not sure how to confirm this, I am still a little new to linux. If I understand symbolic links correctly then the kernel should "dereference" them before read or write operations, so what does this mean when ld is asked to link to a symbolic link to a shared library? I barely understand the mechanics of shared linkage. Is a reference to libvgagl.so stored in the object file and then "dereferenced" to libvgagl.so.1.4.3 upon loading? This is how I imagine it should work, but when I open up my compiled object file with vim I find that there is a reference to the mysterious file name "libvgagl.so.1?!" Is this a problem with gcc? Does gcc version egcs-2.91.66 truncate the name upon compilation and linkage? Would replacing the symbolic links with hard links help? Or should I just delete the symbolic links and rename libvga.so.1.4.3 and libvgagl.so.1.4.3 to libvga.so and libvgagl.so respectively, I would hate to loose the ability to know what version of the library I was using simply by typing "ls /usr/local/lib/libvga*!" Could there be duplicate libraries? I did have an older version of svgalib that came with the distribution (Caldera OpenLinux eDesktop) but I could never figure out where the libraries were. Any help would be greatly appreciated! -- Zach ------------------------------------------------------------------ Unsubscribe: To: listbot@svgalib.org Body: unsubscribe linux-svgalib
This archive was generated by hypermail 2.1.4 : Wed 21 Jan 2004 - 22:10:25 IST