BSD Help
 
Forums: » Register « |  User CP |  Games |  Calendar |  Members |  FAQs |  Sitemap |  Support | 
User Name:
Password:
Remember me
Go Back   Dev Shed ForumsOperating SystemsBSD Help

Reply
Add This Thread To:
  Del.icio.us   Digg   Google   Spurl   Blink   Furl   Simpy   Y! MyWeb 
Thread Tools Search this Thread Rate Thread Display Modes
 
Unread Dev Shed Forums Sponsor:
1200+ fellow developers rate and compare features of the top IDEs, like Visual Studio, Eclipse, RAD, Delphi and others, across 13 categories. Enjoy this FREE Download of the IDE User Satisfaction Study by Evans Data Corporation. Download Now!
  #1  
Old March 29th, 2002, 09:08 PM
estrabd's Avatar
estrabd estrabd is offline
o0o.o0o
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Feb 2001
Location: m00n
Posts: 184 estrabd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 h 4 m 48 sec
Reputation Power: 8
Send a message via ICQ to estrabd Send a message via AIM to estrabd Send a message via Yahoo to estrabd
problem with make buildworld

I cvsup'ed everything, went to /usr/src, and did a `make buildworld` ... as a result, it ran for a while, then halted with this message:

Code:
cc -O -pipe  -D_open=open -DIN_GCC -DHAVE_CONFIG_H -DPREFIX=\"/usr/obj/usr/src/i386/usr\" -I/usr/obj/usr/src/i386/usr/src/gnu/usr.bin/cc/cc_fbsd/../cc_tools -I/usr/src/gnu/usr.bin/cc/cc_fbsd/../cc_tools -I/usr/src/gnu/usr.bin/cc/cc_fbsd/../../../../contrib/gcc.295 -I/usr/src/gnu/usr.bin/cc/cc_fbsd/../../../../contrib/gcc.295/config  -c /usr/src/gnu/usr.bin/cc/cc_fbsd/../../../../lib/libc/gen/getobjformat.c -o getobjformat.o

cc -O -pipe  -D_open=open -DIN_GCC -DHAVE_CONFIG_H -DPREFIX=\"/usr/obj/usr/src/i386/usr\" -I/usr/obj/usr/src/i386/usr/src/gnu/usr.bin/cc/cc_fbsd/../cc_tools -I/usr/src/gnu/usr.bin/cc/cc_fbsd/../cc_tools -I/usr/src/gnu/usr.bin/cc/cc_fbsd/../../../../contrib/gcc.295 -I/usr/src/gnu/usr.bin/cc/cc_fbsd/../../../../contrib/gcc.295/config  -c /usr/src/gnu/usr.bin/cc/cc_fbsd/../../../../lib/libc/stdio/mktemp.c -o mktemp.o

/usr/src/gnu/usr.bin/cc/cc_fbsd/../../../../lib/libc/stdio/mktemp.c:38: syntax error before string constant

/usr/src/gnu/usr.bin/cc/cc_fbsd/../../../../lib/libc/stdio/mktemp.c:38: warning: data definition has no type or storage class

*** Error code 1



Stop in /usr/src/gnu/usr.bin/cc/cc_fbsd.

*** Error code 1



Stop in /usr/src/gnu/usr.bin/cc.

*** Error code 1



Stop in /usr/src.

*** Error code 1



Stop in /usr/src.

*** Error code 1



Stop in /usr/src.

bash-2.05# exit


Any thoughts would be appreciated!! TIA, Brett

Reply With Quote
  #2  
Old March 29th, 2002, 09:14 PM
mezz mezz is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Oct 2001
Posts: 310 mezz User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 7
Did you empty the /usr/obj by rm -rf? Also, make clean in /usr/src? If not, then try both of them then do buildworld again to see if it will working.. If it doesn't works then I have no idea..

Reply With Quote
  #3  
Old March 30th, 2002, 12:33 AM
freebsd freebsd is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Jan 2001
Posts: 5 freebsd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 0
>> Also, make clean in /usr/src?

Should be make cleandir instead.

>> I cvsup'ed everything, went to /usr/src

You need to provide more details:

1) Current branch+version from uname -r
2) Your target branch+version
3) How many times have you cvsup'd your /usr/src
4) Did you have an empty /usr/src/ prior to running cvsup?
5) And of course, your exact procedures

Reply With Quote
  #4  
Old March 31st, 2002, 07:34 PM
estrabd's Avatar
estrabd estrabd is offline
o0o.o0o
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Feb 2001
Location: m00n
Posts: 184 estrabd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 h 4 m 48 sec
Reputation Power: 8
Send a message via ICQ to estrabd Send a message via AIM to estrabd Send a message via Yahoo to estrabd
Ok, tried the make clean, make cleandir, made sure the /usr/obj was cleaned out. I also re-cvsup'd src-all.

Quote:
You need to provide more details:

1) Current branch+version from uname -r
2) Your target branch+version
3) How many times have you cvsup'd your /usr/src
4) Did you have an empty /usr/src/ prior to running cvsup?
5) And of course, your exact procedures


1) current branch is 4.4 RELEASE
2) Target branch is 4.5 RELEASE
3) I have cvsup'd /usr/src about 3 times
4) yes /usr/src was empty before running cvsup
5) After I cvsup'd everything, I cd'd into /usr/source as root and ran `make buildworld`.

I can send the entire typescript file I made, but the error occurs just like the original post.

Thanks!
Brett

Reply With Quote
  #5  
Old March 31st, 2002, 08:35 PM
freebsd freebsd is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Jan 2001
Posts: 5 freebsd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 0
1) ok
2) Why not 4.5-STABLE?
For 4.5-RELEASE the cvs tag should be RELENG_4_5.
4) Everytime you cvsup your src from scratch you also need to remove your /usr/sup/src-all directory.
5) You need to recompile your kernel first.
Say you are upgrading from 4.5-STABLE to the latest 4.5-STABLE then you probably don't need to recompile a kernel because the src changes should be minimal enough.
For 4.5-RELEASE or 4.4-STABLE to 4.5-STABLE you definitely need to rebuild a kernel so it understands the new userland/changes.
Lastly, you need to know how to recompile a custom kernel prior to buildworld. If you don't, buildworld is not for you. Just so you know, just to build a custom kernel can take dozen trials and many days to get it right.

Here's what you need to do:
1) rm -rf /usr/sup/* /usr/src/*
2) Install all-src from CD (4.4-RELEASE)
3) Just forget cvsup, recompile a custom kernel first
4) When you're happy with your custom kernel, try cvsup your src now (you don't need to rm -rf /usr/src/*)
5) Recompile a custom kernel again (check GENERIC and LINT for new changes)
6) Reboot then buildworld

Why must I compile a custom kernel before cvsup?

Like I said, compiling a custom kernel takes dozen trials (you will likely see some errors) and buildworld as well may give you some headaches. That said, when it comes to troubleshooting the problems, it's better off to isolate the two, and just to make your life easier.

Reply With Quote
  #6  
Old April 4th, 2002, 12:39 PM
estrabd's Avatar
estrabd estrabd is offline
o0o.o0o
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Feb 2001
Location: m00n
Posts: 184 estrabd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 h 4 m 48 sec
Reputation Power: 8
Send a message via ICQ to estrabd Send a message via AIM to estrabd Send a message via Yahoo to estrabd
I appreciate the continued help.

Ok, I got the 4.4-RELEASE source on. Should I do the make buildkernel/make installkernel stuff, or should I go about manually doing it, ie make/config/make depend, etc?

I know the make buildkernel is used in conjuction with make buildworld ...

Thanks,
Brett

Reply With Quote
  #7  
Old April 4th, 2002, 03:57 PM
freebsd freebsd is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Jan 2001
Posts: 5 freebsd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 0
>> Should I do the make buildkernel/make installkernel stuff

I hate it very much when FreeBSD keeps reinventing the wheel like this. Buildworld/recompile a kernel should be straight forward enough (not changing from version to version) like NetBSD/OpenBSD. Everytime I do a buildworld on FreeBSD I still have to read the latest handbook and see if any new way of doing that, that is so inconsistent.

>> or should I go about manually doing it, ie make/config/make depend, etc?

You MUST do this way: config,make depend, make and make install.

Reply With Quote
  #8  
Old April 4th, 2002, 11:01 PM
estrabd's Avatar
estrabd estrabd is offline
o0o.o0o
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Feb 2001
Location: m00n
Posts: 184 estrabd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 h 4 m 48 sec
Reputation Power: 8
Send a message via ICQ to estrabd Send a message via AIM to estrabd Send a message via Yahoo to estrabd
if its not one thing, its another

Ok, cvsup'd the 4.4-RELEASE, recompiled the kernel successfully, and cvsup'd 4.5-RELEASE.

I then did a `build world`, and it ran for a good long while until I got:

===> etc/sendmail
make: don't know how to make freebsd.mc. Stop
*** Error code 2

Stop in /usr/src/etc.
*** Error code 1

Stop in /usr/src/etc.
*** Error code 1

.
.
.

thanks,

Brett

Reply With Quote
  #9  
Old April 5th, 2002, 07:47 AM
freebsd freebsd is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Jan 2001
Posts: 5 freebsd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 0
>> Is this a typo that is the old way no

First off I could be wrong, I am too lazy to read the handbook right at this moment. You'd use the NEW way (KERNCONF) only if your base system doesn't match your /usr/src (for instance, after a cvsup).
That said, when your base system is 4.4-RELEASE and your /usr/src is the exact all-src from 4.4-RELEASE CD, don't use the NEW way.

>> cvsup'd the 4.4-RELEASE, recompiled the kernel successfully, and cvsup'd 4.5-RELEASE.

What? Can you tell us once again? When you say cvsup'd, that's from what uname -r to what cvs tag?

>> Stop in /usr/src/etc

You (your current working directory), when building world, should never be cd'd to /usr/src/etc in the first place, because /usr/src/etc is untouched during buildworld.

Reply With Quote
  #10  
Old April 7th, 2002, 08:18 PM
estrabd's Avatar
estrabd estrabd is offline
o0o.o0o
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Feb 2001
Location: m00n
Posts: 184 estrabd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 h 4 m 48 sec
Reputation Power: 8
Send a message via ICQ to estrabd Send a message via AIM to estrabd Send a message via Yahoo to estrabd
cvsup'd from 4.4-RELEASE to 4.5-RELEASE

Brett

Reply With Quote
  #11  
Old April 8th, 2002, 04:57 AM
freebsd freebsd is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Jan 2001
Posts: 5 freebsd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 0
>> Why do you go for RELEASE?

I too wonder why. When FreeBSD users talking about cvsup the src, 99% of the time they are tracking RELENG4 (4.X-STABLE), the -STABLE branch. cvsup from whatever uname -r to a RELEASE branch is just something I have never heard of, though it's possible but no reason to.

Reply With Quote
  #12  
Old April 9th, 2002, 01:43 PM
estrabd's Avatar
estrabd estrabd is offline
o0o.o0o
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Feb 2001
Location: m00n
Posts: 184 estrabd User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: 1 h 4 m 48 sec
Reputation Power: 8
Send a message via ICQ to estrabd Send a message via AIM to estrabd Send a message via Yahoo to estrabd
Chalk it up to inexperience I guess. Thats why I appreciate the insight and help.

Reply With Quote
  #13  
Old May 13th, 2002, 03:26 AM
phoenix_rizzen phoenix_rizzen is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: May 2002
Location: Kamloops, BC, Canada
Posts: 55 phoenix_rizzen User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 7
Quote:
Originally posted by Bob Loblaw
Is this a typo that is the old way no

the new way
makebuildkernel KERNCONF=
makeinstallkernel KERNCONF=


Both ways are still valid. However, you need to know the differences between them and when to use them.

The "old" way:
Code:
cd /usr/src/sys/i386/conf/
cp GENERIC KERNEL
ee KERNEL
/sbin/config KERNEL
cd ../../compile/KERNEL
make depend
make
make install

This will build your new kernel using the build tools already installed on your system. This uses your existing, already installed and running build environment.

The "new" way:
Code:
cd /usr/src/sys/i386/conf/
cp GENERIC KERNEL
ee KERNEL
cd /usr/src
make KERNCONF=KERNEL buildworld
make KERNCONF=KERNEL buildkernel
make KERNCONF=KERNEL installkernel
[reboot into single-user mode]
make KERNCONF=KERNEL installworld
mergemaster
[start multi-user mode]

The KERNCONF= isn't really needed for the installworld target, but it doesn't hurt to keep things consistent. Also, if you are just building a kernel, the last two steps aren't needed.

This will build your new kernel using the new build tools located in /usr/obj/usr/src/. Thus, you get a new kernel that's in sync with your new world, built with the new tools.

Thus, to just re-build your kernel, use the first method. If you are re-building your world, plus your kernel, then use the second method.
__________________
Linux is for those who hate Windows.
FreeBSD is for those who love UNIX.
-------
Have you read The Handbook yet?
How about The FAQ?
Have you searched the mailing lists?
Or read any of the man pages?
Have you searched the web for BSD resources?
In short, have you done your homework yet?

Last edited by phoenix_rizzen : May 13th, 2002 at 03:32 AM.

Reply With Quote
  #14  
Old May 13th, 2002, 03:30 AM
phoenix_rizzen phoenix_rizzen is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: May 2002
Location: Kamloops, BC, Canada
Posts: 55 phoenix_rizzen User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 7
Quote:
Originally posted by freebsd
>> Why do you go for RELEASE?

I too wonder why. When FreeBSD users talking about cvsup the src, 99% of the time they are tracking RELENG4 (4.X-STABLE), the -STABLE branch. cvsup from whatever uname -r to a RELEASE branch is just something I have never heard of, though it's possible but no reason to.


Obviously you don't work with FreeBSD servers, nor do you hang around with people who do so. 99% of admins CVSup their servers to the most stable/tested codebas: -RELEASE, or the new security branch (RELENG_4_4 and RELENG_4_5). Few run -STABLE on production machines unless they need specific software/hardware support only available in -STABLE at that moment.

Casual home users who aren't developers should be running -RELEASE or RELENG_4_5, NOT -STABLE.

Reply With Quote
  #15  
Old May 13th, 2002, 03:34 AM
mezz mezz is offline
Contributing User
Dev Shed Newbie (0 - 499 posts)
 
Join Date: Oct 2001
Posts: 310 mezz User rank is Just a Lowly Private (1 - 20 Reputation Level) 
Time spent in forums: < 1 sec
Reputation Power: 7
Quote:
Originally posted by phoenix_rizzen
Obviously you don't work with FreeBSD servers, nor do you hang around with people who do so.
Nope, he has a lot of knowledge on servers, so he does work with *BSDs boxes as servers.. If I remember it correct, freebsd has around over 10 boxes with *BSDs installed.

Reply With Quote
Reply