1

Our machine was in SUSE Linux Enterprise Server 11 SP4 until when we recently moved to SUSE Linux Enterprise Server 12 SP3.

Our C++ tools were compiling without any problem on SuSe 11. But when we compile the tools in SuSe 12, we are having below linker error:

/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../libXm.so when searching for -lXm     
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: cannot find -lXm                                                      
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../libXt.so when searching for -lXt  
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: cannot find -lXt                                                      
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib64/gcc/x86_64-suse-linux/4.8/../../../libX11.so when searching for -lX11  
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: cannot find -lX11

After some exploration, I came to know that compilation is successful with 64 bit. But I want the binaries in 32 bit.

I know that the linker is searching for the file libXm.so, libXt.so, libX11.so but unable to find the right file.

The following page from SuSe tells that there is no support of x86 from SuSe12 onwards: https://www.suse.com/products/server/download

When I checked those files in SuSe 11 SP4, it was available as:

/usr/lib/libXm.so -> libXm.so.4.0.1
/usr/lib/libXt.so -> libXt.so.6.0.0
/usr/lib/libX11.so -> libX11.so.6.2.0

In SuSe 12, these .so are not available under /usr/lib. But libXm.so.4.* or libXt.so.6.* or libX11.so.6.* are present under /usr/lib. Its only the softlink from these files to .so are missing (not available).

So how do I overcome this problem in this environment?

SS Hegde
  • 111
  • 5

0 Answers0