Link to home
Create AccountLog in
Unix OS

Unix OS

--

Questions

--

Followers

Top Experts

Avatar of bvkreddy
bvkreddy🇮🇳

fatal relocation error referenced symbol not found killed
hi experts
today i installed GPS 1.4.0 (GNAT PROGRAMMING SYSTEM,GNU VISUAL DEBUGGER) for solaris sparc 7 machine.as per instructions
given in README file.installation quite well normally.when i used to execute gps
from bin directory the following error
#pwd
#/opt/gps/bin
#gps
ld.so.1:/opt/gps/bin/gps_exe:fatal relocation error :file /opt/gps/lib/libgdk-X11-2.0.so.0 symbol XkbLibraryVersion referenced symbol not found killed
#
kindly help me

thanks in advance

Zero AI Policy

We believe in human intelligence. Our moderation policy strictly prohibits the use of LLM content in our Q&A threads.


Avatar of JimsilJimsil

Use the ldd command on the library its complaining about and make sure it can find all the libraries its looking for.

If you see  => and nothing to the right then the library on the left caan not be found and you may need to change the LD_LIBRARY_PATH variable to include the libs it needs.

You may also have an issue where the binary is an incorrect version and the function names could be changed. You can use the nm command to deturmine if this is the case.

#nm /opt/gps/lib/libgdk-X11-2.0.so.0 | grep XkbLibraryVersion

If this is not found then this library does not contain this variable and the executible code might  differ from the libraries it is calling on. If this is the situation you need to find the versions of the binary and the versions of the librarys and make them match.


Avatar of bvkreddybvkreddy🇮🇳

ASKER

Hi Jimsil

today i tried the ldd command on gps_exe after setting the LD_LIBRARY_PATH in .profile
as
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib:/usr/openwin/lib:/opt/gps/lib
export LD_LIBRARY_PATH
the following observed
TPT#ldd /opt/gps/bin/gps_exe
        libgtkada-2.2.so.1 =>    /opt/gps/lib/libgtkada-2.2.so.1
        libgtk-x11-2.0.so.0 =>   /opt/gps/lib/libgtk-x11-2.0.so.0
        libgdk-x11-2.0.so.0 =>   /opt/gps/lib/libgdk-x11-2.0.so.0
        libatk-1.0.so.0 =>       /opt/gps/lib/libatk-1.0.so.0
        libgdk_pixbuf-2.0.so.0 =>        /opt/gps/lib/libgdk_pixbuf-2.0.so.0
        libjpeg.so =>    /opt/gps/lib/libjpeg.so
        libpng.so =>     /opt/gps/lib/libpng.so
        libz.so =>       /opt/gps/lib/libz.so
        libpangox-1.0.so.0 =>    /opt/gps/lib/libpangox-1.0.so.0
        libpango-1.0.so.0 =>     /opt/gps/lib/libpango-1.0.so.0
        libgobject-2.0.so.0 =>   /opt/gps/lib/libgobject-2.0.so.0
        libgmodule-2.0.so.0 =>   /opt/gps/lib/libgmodule-2.0.so.0
        libdl.so.1 =>    /usr/lib/libdl.so.1
        libglib-2.0.so.0 =>      /opt/gps/lib/libglib-2.0.so.0
        libiconv.so.2 =>         /opt/gps/lib/libiconv.so.2
        libm.so.1 =>     /usr/lib/libm.so.1
        libc.so.1 =>     /usr/lib/libc.so.1
        libgcc_s.so.1 =>         /opt/gps/lib/libgcc_s.so.1
        libX11.so.4 =>   /usr/lib/libX11.so.4
        libX11.so.4 (SUNW_1.1) =>        (version not found)
        libsocket.so.1 =>        /usr/lib/libsocket.so.1
        libnsl.so.1 =>   /usr/lib/libnsl.so.1
        libXext.so.0 =>  /usr/lib/libXext.so.0
        libXext.so.0 (SUNW_1.1) =>       (version not found)
        libX11.so.4 (SUNW_1.1) =>        (version not found)
        libX11.so.4 (SUNWprivate) =>     (version not found)
        libX11.so.4 (SUNW_1.1) =>        (version not found)
        libX11.so.4 (SUNWprivate) =>     (version not found)
        libmp.so.2 =>    /usr/lib/libmp.so.2
#nm /opt/gps/lib/libgdk-x11-2.0.so.0 | grep XkbLibraryVersion
#
nothing can be examined in nm command

this is my observation
kindly help
bvkreddy

The missing libraries are in /usr/X/lib. Try adding this to LD_LIBRARY_PATH as Jimsil suggested. Alternatively, you could look (very carefully) at the crle command.

Reward 1Reward 2Reward 3Reward 4Reward 5Reward 6

EARN REWARDS FOR ASKING, ANSWERING, AND MORE.

Earn free swag for participating on the platform.


As jon stated you are either missing packages or your LD_LIBRARY_PATH variable is missing the location of those libraries.

To see if you have all the libraries installed you can grep the contents file .

For example: grep /var/sadm/install/contents libX11.so.4

Then find the path to libX11.so.4 and add it to LD_LIBRARY_PATH

When this is compleated you can then run the ldd again and verify that all the libraries are found. Now the error should be gone.



ASKER CERTIFIED SOLUTION
Avatar of JimsilJimsil

Link to home
membership
Log in or create a free account to see answer.
Signing up is free and takes 30 seconds. No credit card required.
Create Account

Avatar of bvkreddybvkreddy🇮🇳

ASKER

as suggested by jon i added the /usr/X/lib in my LD_LIBRARY_PATH
and done ldd on gps_exe file the same report it showing.
and as suggested by Jimsil i used the grep the contents of file
#grep /var/sadm/install/contents libX11.so.4
#
nothing can be found from this command
this is my observation
finally i thought Jimsil is given correct suggestion
to go newer version of the binary to compile
thank u for giving suggestion for both Jimsil and jon

Unix OS

Unix OS

--

Questions

--

Followers

Top Experts

Unix is a multitasking, multi-user computer operating system originally developed in 1969 at Bell Labs. Today, it is a modern OS with many commercial flavors and licensees, including FreeBSD, Hewlett-Packard’s UX, IBM AIX and Apple Mac OS-X. Apart from its command-line interface, most UNIX variations support the standardized X Window System for GUIs, with the exception of the Mac OS, which uses a proprietary system.