Subject: Re: /usr/libexec/ld.so error + Problem installing /usr/src/include
To: None <clarence@cs.cuhk.hk>
From: Greg Earle <earle@isolar.Tujunga.CA.US>
List: current-users
Date: 04/29/1996 22:29:09
CHAN Yiu Wah writes:
>>> I did include the include files.  What do you mean rebuild/reinstalled libs?
>>> I don't understand. Please advise.  Thanks.
>>
>> cd /usr/src/lib
>> make depend
>> make
>> make install
>
> I did try the above procedure, but the same result appeared,
> "/usr/libexec/ld.so undefined symbol "SYS_futimes" in
> /usr/lib/libc.so.12.4 ".  Any idea ?

Jason said to install the include files, because a new system call
(SYS_futimes, #206) was added.  Do a "diff" on /usr/src/sys/sys/syscall.h vs.
/usr/include/sys/syscall.h:

scipio# diff -rc0 /usr/include/sys/syscall.h /usr/src/sys/sys/syscall.h
*** /usr/include/sys/syscall.h  Sat Mar  9 04:30:35 1996
--- /usr/src/sys/sys/syscall.h  Tue Apr 23 04:37:53 1996
***************
*** 5 ****
!  * created from       NetBSD: syscalls.master,v 1.31 1996/02/27 04:20:41 jonathan Exp 
--- 5 ----
!  * created from       NetBSD: syscalls.master,v 1.32 1996/04/23 10:24:21 mycroft Exp 
***************
*** 195 ****
--- 196 ----
+ #define       SYS_futimes     206

Matthias Scheler writes:
> I have problem installing "src/include" from 960428 sup sources.
> If I call "make install", nothing happens.  I installed "/usr/src/shake/mk"
> and recompiled "make" but that didn't help.

These two problems are related.

I just tried doing a "make build" on a Pentium 120 (running 1.1B/-current from
a month ago; March 27th kernel & userland).  The same thing happened to me,
namely I got the "/usr/libexec/ld.so: Undefined symbol "SYS_futimes" ... "
error message.

Having seen that /usr/src/sys/sys/syscall.h is newer than the existing
/usr/include/sys/syscall.h, I wondered why the normal "make install" didn't
install these includes.    (The Makefile I was using for "make build" still
had "make install" for this stage.)

Then I noticed that /usr/src/Makefile had changed (I copy to "Makefile.build"
and add "&& ${MAKE} obj" to the rules to do my "make build"s with, so mine
became outdated as of 5 days ago).  If you check the source-changes archive,
you'll find a bunch of CVS commits from the 24th that mention the use of
"make includes" to install headers instead of "make install".

In other words, if you're using "make build", make sure your Makefile is
either the current April 24th /usr/src/Makefile or something derived from it.

	- Greg