Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 Jun 1997 21:57:32 -0400
From:      Mark Mayo <mark@quickweb.com>
To:        Michael Smith <msmith@atrad.adelaide.edu.au>
Cc:        Mark Mayo <mark@quickweb.com>, freebsd-hackers@FreeBSD.ORG
Subject:   Re: make world error in RELENG_2_2
Message-ID:  <19970619215732.54070@vinyl.quickweb.com>
In-Reply-To: <199706192341.JAA00235@genesis.atrad.adelaide.edu.au>; from Michael Smith on Fri, Jun 20, 1997 at 09:11:03AM %2B0930
References:  <19970619182720.20258@vinyl.quickweb.com> <199706192341.JAA00235@genesis.atrad.adelaide.edu.au>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jun 20, 1997 at 09:11:03AM +0930, Michael Smith wrote:
> Mark Mayo stands accused of saying:
> > 
> > I realize that. I just wanted to see if the error popped up that way. Turns
> > out it doesn't. I ended up just doing a "make -k world" and manually 
> > building tcl afterwards. Note that I did
> > 	cd /usr/src/include
> > 	make
> > 	make install
> > 
> > on the second try before running make world. This *should* be updating my
> > /usr/include , no?
> 
> No.  "make includes" at the top level does that.

Yeah. However, I still don't understand why my header files are screwed.
Here's what I'm confused about:
'make world' fairly early in the game does a 'make includes'. Based on this
I assumed that I didn't have to manually do a 'make includes' myself.
Result: doing a 'make includes' while the old /usr/include still existed
didn't get me a clean build. After following the advice of Jordan and Mike,
I did
	cd /usr/include
	rm -rf *
	cd /usr/src
	make includes

Result:

cd /usr/src/include;  install -C -o bin -g bin -m 444  a.out.h ar.h assert.h
bitstring.h ctype.h db.h dirent.h disktab.h  err.h f2c.h fnmatch.h fstab.h fts.h
glob.h grp.h strhash.h histedit.h  kvm.h limits.h link.h locale.h malloc.h
memory.h mpool.h ndbm.h  netdb.h nl_types.h nlist.h paths.h pthread.h
pthread_np.h pwd.h  ranlib.h regex.h regexp.h resolv.h rune.h runetype.h
setjmp.h sgtty.h  signal.h stab.h stddef.h stdio.h stdlib.h string.h strings.h 
struct.h sysexits.h tar.h time.h timers.h ttyent.h unistd.h utime.h  utmp.h
vis.h /usr/include
cd /usr/src/include/arpa;  install -C -o bin -g bin -m 444  ftp.h inet.h
nameser.h telnet.h tftp.h /usr/include/arpa
usage: install [-CcDps] [-f flags] [-g group] [-m mode] [-o owner] file1 file2
       install [-CcDps] [-f flags] [-g group] [-m mode] [-o owner] file1 ...
             fileN directory
       install -d [-g group] [-m mode] [-o owner] directory ...
*** Error code 64

Stop.
*** Error code 1

Hmm. Seems like the install program fails when there's no existing stuff.
Soooo, I grabbed a copy of /usr/include/* from an up and running 2.2.2
machine, put them in my /usr/include and then did 'make includes'. It 
worked. I did notice that the tcl libraries (which are my problem) were
replaced (I mean the include files for the tcl libraries..). I'm hoping
this is where the problem is.  I also removed the depend files from 
the src tree:

	root:{126}/usr/src % find . -name "*depend*" -print
	./contrib/groff/pic/depend
	./contrib/libg++/libg++/src/depend
	./contrib/libg++/libg++/tests/depend
	./contrib/libg++/libio/depend
	root:{127}/usr/src % find . -name "*depend*" -delete

Then I removed the entire object tree
	rm -rf /usr/obj/*

I checked one more time with CVSUP to see that I have everthing, and I
do. I'm doing to do a make world now to see if it works.

I don't think that the above procedure is entirely obvious. II also shouldn't
have to grab files from another machine to build my include directory.
make includes should do it for me. The point of all of this is quite
simple: I had a problem. I even worked out my problem (make -k world;make
tcl separetly afterwards) in my own clutsy way. I wanted to see if
other were having the same sort of problem so I posted to -hackers. All
you did was give a frustrated "you're wrong. you must have hosed you machine.
there's nothing wrong with 2.2". You then proceded to imply that such
questions were asked by "incompetent" people, and suggested that any
competent person would figure out how to do it. Thank yo very much. What
an intelligent response. I'm not responding to your post directly, since
I have no desire to get in a flame war. I almost replied and called you
and ignorant, elitist asshole. But upon pondering the situation, I really
don't think you are. You're just frustrated by "incompetent people". Of
course, what you would call incompetent I would call "inexperienced". Fine.
I'm "incompetent". I asked a question. I didn't criticise FreeBSD. I didn't
even complain about it. I just wanted to find a nice solution to my problem,
since my incompetent solution is just a hack. Fuck me for wanting to learn
something. You see, believe it or not, I don't know as much as you about
FreeBSD. I'm 21 years old, and I've only been using Unix for under 2 years.
I've only been using FreeBSD for 1.5 years. I'm trying to learn as much
as I can as quickly as I can, but I'm not familiar with the details of
the build mechanism, and I'm not a C guru. Maybe someday I will, but for
now I'm just a learner.

So in the future, if it bugs you to have to deal with us newbies, just don't
read our emails. That way we won't bug you, and you won't bug us. In the
mean time, I've been documenting everything I learn about FreeBSD so the
other newbies like myself don't have to bug your majesty.
	http://vinyl.quickweb.com/mark/FreeBSD
I'll be adding a section entitles "What to do when make world fails", that
will go throough some of the common problems that might occur during 
dramatic reorganizations of the source tree, and how to get around them.

Thanks to Jordan and others who actually responded with suggestions.

-Mark

> 
> -- 
> ]] Mike Smith, Software Engineer        msmith@gsoft.com.au             [[
> ]] Genesis Software                     genesis@gsoft.com.au            [[
> ]] High-speed data acquisition and      (GSM mobile)     0411-222-496   [[
> ]] realtime instrument control.         (ph)          +61-8-8267-3493   [[
> ]] Unix hardware collector.             "Where are your PEZ?" The Tick  [[

-- 
----------------------------------------------------------------------------
 Mark Mayo		  				mark@quickweb.com       
 RingZero Comp.  	  		   http://vinyl.quickweb.com/mark 

	 finger mark@quickweb.com for my PGP key and GCS code
----------------------------------------------------------------------------
	University degrees are a bit like adultery: you may not want to 
	get involved with that sort of thing, but you don't want to be 
	thought incapable.	-Sir Peter Imbert



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19970619215732.54070>