1

Day 1

I have hit into some error, and the build simply fail, saying that there is some conflict. Thus I believe a .o file cannot be made and then result fatal error during linking, anyone have steps by steps trouble shooting tips ?

I have been successful do it on a clean install of red hat 6, so i suspect someone have update the kernel but didn't update the kernel library. Need some hints on where should i check

I have type rpm -qa and shows there is 2 kernel, tried to boot to old kernel and compile the LiS but didn't help.

I have break down my question as below:

  1. How to check if the kernel libraries are matching with the kernel version ?
    idea: the dlevel, kernel, gcc, glib, glibc ...
  2. It there a general steps in trouble shoot build issues, like a check list? So you can tick it one by one. The LiS installation did provide several libraries minimum level requirement, I am sure that i meet with them all, right now i suspect that i am over patch.
  3. Can i just go down the file version ? so i just have every library just meet the requirement? and 100% compatible.

Progress on Day 2

with some tips from @schaiba, i have researched how to do logging in the compile process.

while after break into the build package, trace into build strconf in a second folder, added --verbose to the cc compiling, got the following message:
ignore conflicting library /usr/lib64/libc.so , it is a small file, so i try to open it wwith vi, thus discover it is a text file instead, for which a statement like OUTPUT FORMAT (elf32-i386), which is obviously incorrect to me, since lib64 should be x86_64 instead.
Then, I have determine to check the where do the libc.so comes from, by:

rpm -qf libc.so  

from which is discover it is in glibc-devel-...., i have get a red hat 6.4 repository, doing

yum update glibc-devel

then, the naughty libc.so became OUTPUT FORMAT(elf64-x86-64) and that strconf module compile. and i got the build complete.

but then, i got any other problems now. I still got the ignore conflict libc.so warning, and the LiS I build is actually used by another application, and that one seems to have some problems.

any suggestions ?

For another study around internet, that the LiS package is something native to 32-bit, thus i guess it may have part of the code require to be compile under 32-bit, Therefore arise 2 new question,

  1. How can you modified a build file so that it can use two version of same libraries ?

  2. Is there a way to let 2 version of devel co-exist on a linux system ? and more precise, 2 version of /usr/lib64/libc.so

4
  • 1
    I hope you realize that without the exact errors you encountered nobody can help you troubleshoot the issue.
    – schaiba
    May 2, 2013 at 13:35
  • the error message is: fatal error ld - lc failure /lib/(kernelversion)/misc/ .o missing
    – user37597
    May 2, 2013 at 13:54
  • 1
    Redirect stderr and stdin to some file and use a pastebin, then paste the link. Like 'gcc -options file.c > logfile.txt 2>&1'
    – schaiba
    May 2, 2013 at 13:59
  • by the way, this is the official link IBM provide link which is a must for their CommServer
    – user37597
    May 2, 2013 at 14:09

1 Answer 1

0

It's a shot in the dark, but since LiS looks like it involves a kernel module (http://www.gcom.com/home/linux/lis/index.html), you probably need the kernel development package.

So try running this as root:

yum -y install kernel-devel kernel-headers

Will it build now?

2
  • i did it some other way, pretty much same direction as you have suggest, and it seems to works, at least 80%
    – user37597
    May 3, 2013 at 12:40
  • yeah, i agree that it is shot in the dark. since the version i am using is 2.19 ...... that is mad
    – user37597
    May 3, 2013 at 13:35

You must log in to answer this question.