make buildworld macht nichts

AronaDaal

Well-Known Member
Hallo zusammen,

ich bin's mal wieder ;-)
Ich wollte heute auf meinem Desktop-Rechner mein System "neumachen" und meine komplette Umgebung auf meine 'neuen' Compilerflags anpassen, sowie den Scheduler wechseln.

Dazu habe ich mir, brav wie ich bin, erst einmal das Tutorial im Wiki durchgelesen und bin "Schritt für Schritt" so auch vorgegangen. Doch an dem Punkt, an dem es heißt
"make buildworld"
auszuführen, geschieht einfach nichts. Keine Fehlermeldung, Kein Configure, Kein Make, einfach nichts....
Woran könnte das liegen?

Schonmal besten Dank!

Grüße AronaDaal
 
Bist du im Verzeichnis /usr/src ?
Hast du die sources installiert?
Kannst du denn, nachdem du den Befehl ausgeführt hast, noch was eintippen? Oder gibts dann keinen Cursor mehr?
 
sooo.... ich habs auch mal auf meinem Laptop angetestet.
Das gleiche Problem. Ich bin folgendermaßen dabei vorgegangen:

- Sourcen installieren (sysinstall --> Configure --> Distrib. --> Sources --> alle installiert)
- mit cvsup die Quellen geuppt
- in /usr/src gewechselt
- "make buildwolrd" gemacht
- und dann ist der Cursor weg und es scheint so als würde "make" was machen, was es aber nicht macht

und ja, ich hab im WIKI gelesen....
"make buildkernel" funktioniert dagegen ohne Probleme.

Grüße AronaDaal
 
- mit cvsup die Quellen geuppt

Poste mal bitte dein supfile für die sources. im übrigen brauchst du cvsup nicht mehr zu isntallieren, csup ist in der Base vorhanden.

Welche Version von FreeBSD hast du denn und auf welche Version willst du aktualisieren?
 
Oh, Sorry! dachte ich hätte es schon erwähnt:

Eigentlich will ich nichts updaten, sondern nur mein von CD installiertes BSD einmal durchkompilieren, bzgl. Compiler-Flags und Performance. Installiert habe ich FreeBSD 7 BETA3.

Code:
# CVSup (CVS Update Protocol) allows you to download the latest CVS
# tree (or any branch of development therefrom) to your system easily
# and efficiently (far more so than with sup, which CVSup is aimed
# at replacing).  If you're running CVSup interactively, and are
# currently using an X display server, you should run CVSup as follows
# to keep your CVS tree up-to-date:
#
#       cvsup ports-supfile
#
# If not running X, or invoking cvsup from a non-interactive script, then
# run it as follows:
#
#       cvsup -g -L 2 ports-supfile
#
# You may wish to change some of the settings in this file to better
# suit your system:
#
# host=CHANGE_THIS.FreeBSD.org
#               This specifies the server host which will supply the
#               file updates.  You must change it to one of the CVSup
#               mirror sites listed in the FreeBSD Handbook at
#               http://www.freebsd.org/doc/handbook/mirrors.html.
#               You can override this setting on the command line
#               with cvsup's "-h host" option.
#
# base=/var/db
#               This specifies the root where CVSup will store information
#               about the collections you have transferred to your system.
#               A setting of "/var/db" will generate this information in
#               /var/db/sup.  You can override the "base" setting on the
#               command line with cvsup's "-b base" option.  This directory
#               must exist in order to run CVSup.
#
# prefix=/usr
#               This specifies where to place the requested files.  A
#               setting of "/usr" will place all of the files requested
#               in "/usr/ports" (e.g., "/usr/ports/devel", "/usr/ports/lang").
#               The prefix directory must exist in order to run CVSup.

# Defaults that apply to all the collections
#
# IMPORTANT: Change the next line to use one of the CVSup mirror sites
# listed at http://www.freebsd.org/doc/handbook/mirrors.html.
*default host=cvsup7.de.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=.
*default delete use-rel-suffix

## Ports Collection.
#
# The easiest way to get the ports tree is to use the "ports-all"
# mega-collection.  It includes all of the individual "ports-*"
# collections,
ports-all

# These are the individual collections that make up "ports-all".  If you
# use these, be sure to comment out "ports-all" above.
#
# Be sure to ALWAYS cvsup the ports-base collection if you use any of the
# other individual collections below. ports-base is a mandatory collection
# for the ports collection, and your ports may not build correctly if it
# is not kept up to date.
#ports-base
#ports-accessibility
#ports-arabic
#ports-archivers
#ports-astro
#ports-audio
#ports-benchmarks
#ports-biology


(...) der Rest ist auskommentiert

Ich habe als cvs tag "." in meiner Config stehen. Was müsste ich da eintragen um der BETA 4 zu folgen, oder ist das so ok?

Kann ich überhaupt so mein System nochmal neubauen, oder geht das erst wenn ich eine neue Sourcen-Version habe? (Das würde dann bedeuten, dass mein cvs Tag falsch gesetzt ist.):confused:

Grüße AronaDaal
 
ok, danke für den Hinweis.
Aber: Nach meinem Verständnis müsste es doch trotzdem möglich sein, ein "make buildworld" durchzuführen, oder nicht?
 
Die src von der CD sind leicht veraltet.
Einfach die neuen ziehen und du bist auf dem aktuellen Stand.
 
ok, lass mich mal kurz rekapitulieren:

- ich soll zukünfig csup und nicht cvsup verwenden
- für der aktuellen BETA zu folgen, soll ich den CVS Tag auf "RELENG_7" umstellen (ich dachte damit würde ich dem Devel folgen :confused:)
- damit die Sourcen auch geupdated werden soll ich ein "src-all" in mein supfile eintragen

Okay. Aber damit hat mir immer noch keiner gesagt, warum mein "make buildworld" nicht funktioniert. Funktioniert das nur, wenn man ein Update macht? Eigentlich sollte das doch auch so funktionieren....
 
Last edited:
- Im Wiki-Artikel werden weder das Wort CSup noch CVSup erwähnt. In einigen anderen Artikeln steht aber noch CVSup, das werde ich beheben.
- RELENG_7 ist der 7er Release-Engineering Zweig. Dort finden sich zur Zeit die Betas. Es gibt keinen seperaten Beta-Zweig. Nach dem Release wird der Zweig zu 7.0-Stable, bis daraus irgendwann die 7.1-Betas, 7.1-Release und 7.1-Stable werden.
- Wahrscheinlich sind bloß die Kernel-Sourcen installiert worden. Die braucht man um bestimmte Ports mit Kernel-Modulen zu bauen. Ich glaube die Sourcen der Welt sind gar nicht auf der CD.
 
Okay. Aber damit hat mir immer noch keiner gesagt, warum mein "make buildworld" nicht funktioniert. Funktioniert das nur, wenn man ein Update macht? Eigentlich sollte das doch auch so funktionieren....

Es funktioniert auch so, aber wie Kamikaze schon geschrieben hat, hast du vermutlich über die CD nicht alle Sources installiert, oder hast du wirklich überall unter "src" einen Haken gemacht? Kamikaze hat es schon angedeutet: Es kann sein, dass die Sources gar nicht komplett auf der CD sind. Ich meine aber, dass sie normalerweise dabei sind. Es könnte aber daran liegen, dass es sich um eine BETA handelt, da sind die ISOs noch nicht voll bestückt. Die ganzen Pakete etc. fehlen ja auch noch.
 
Hallo zusammen,

sorry, dass es etwas gedauert hat bis ich mich nochmal gemeldet habe, aber hier im Wohnheim ist das mit dem I-Net leider immer so ne Sache. Ich habe sowohl auf meinem Notebook, als auch auf meinem Stand-PC den Ordner /usr/src gelöscht und mit Hilfe von "portsnap fetch extract" frische Sourcen geladen. Aber mein "make buildworld" klappt immer noch nicht. Auf keinem der PC's. Kernelbauen funzt ohne Probleme und er läuft nach installkernel auch!

Habe das mal mit "ps aux" abgefangen. Irgendwas geht schief. Aber wie kann ich rauskriegen was da passiert?

Code:
root      19442  0.0  0.1  1888   544  p0  S+   10:31PM   0:00.00 make buildworld
root      19447  0.0  0.1  3456  1372  p0  S+   10:31PM   0:00.00 [sh]
root      19448  0.0  0.1  1888   648  p0  S+   10:31PM   0:00.01 make -m /usr/src/share/mk
root      19529  0.0  0.1  3456  1372  p0  S+   10:31PM   0:00.00 /bin/sh -ec MAKEFLAGS= make -C /usr/src/tools/build/make_check shell_1 || MAKEFLAGS= make -C /usr/src/tools/build/make_check failure
root      19530  0.0  0.1  1888   632  p0  S+   10:31PM   0:00.01 make -C /usr/src/tools/build/make_check shell_1
root      19531  0.0  0.1  3456  1372  p0  S+   10:31PM   0:00.00 /bin/sh -ec MAKEFLAGS= make -C /usr/src/tools/build/make_check shell_1_csh
root      19532  0.0  0.1  1888   636  p0  S+   10:31PM   0:00.01 make -C /usr/src/tools/build/make_check shell_1_csh
 
Last edited:
Ach herrje....mit portsnap kann man NUR die Sourcen für Ports (sprich: Programme) ziehen. Du hast also keine Systemsourcen geladen, sondern nur die Ports herunter geladen. Wir hatten dir doch aber auch gesagt, dass du csup benutzen sollst...

Hier nochmal zum mitschreiben:

1. portsnap --> Portstree aktualisieren
2. csup --> Systemsourcen aktualisieren

Also supfile anlegen, csup laufen lassen, make buildworld starten, glücklich sein ;)
 
ok,... ich hab mal wieder die Begrifflichkeiten durcheinander geworfen... war ein langer Tag, man möge mir verzeichen ;-)

Jetzt abba:
Ich hab den src Ordner gelöscht. Definitiv. Und habe die Woche meine Ports mit Hilfe von portsnap gezogen. Soviel dazu.
Mit csup habe ich auf beiden Rechner die src'en ausgescheckt. Aber wie gesagt, es funzt leider nicht mit dem kompilieren.
 
Was heißt "ausgescheckt"? Poste bitte nochmal dein src-supfile und den Befehl, wie du csup aufrufst. Wenn du /usr/src gelöscht hast, dann noch die Frage: Hast du es auch wieder erstellt? Existiert er? Was sagt "ls", wenn du es im Ordner /usr/src ausführst?

Bitte alle Punkte abarbeiten, sonst können wir dir nicht helfen. Ich bin mir inzwischen 100%ig sicher, dass du einen Bedienungsfehler machst!
 
Und nochmal ich :rolleyes:
Mit ausgecheckt meinte ich eigentlich, dass ich die Daten aus dem Repository geladen habe. Dachte das wäre bekannt.

csup habe ich folgendermaßen aufgerufen:
csup /etc/csup/stable-supfile


ls -la /usr/src
Code:
[root@venice /etc/csup]# ls -la /usr/src/
total 350
drwxr-xr-x   23 root  wheel     512 Dec 18 19:27 .
drwxr-xr-x   17 root  wheel     512 Dec 17 23:07 ..
-rw-r--r--    1 root  wheel    6188 Dec 31  2006 COPYRIGHT
-rw-r--r--    1 root  wheel     399 Jan 13  2006 LOCKS
-rw-r--r--    1 root  wheel    6918 May 23  2007 MAINTAINERS
-rw-r--r--    1 root  wheel   11597 Nov 22 02:33 Makefile
-rw-r--r--    1 root  wheel   37947 Oct 11 14:34 Makefile.inc1
-rw-r--r--    1 root  wheel  193048 Dec 13 06:45 ObsoleteFiles.inc
-rw-r--r--    1 root  wheel    3077 Jun  7  2006 README
-rw-r--r--    1 root  wheel   37555 Nov 26 21:07 UPDATING
drwxr-xr-x   37 root  wheel    1024 Dec 17 23:09 bin
drwxr-xr-x    6 root  wheel     512 Dec 17 23:09 cddl
drwxr-xr-x    3 root  wheel     512 Dec 17 23:09 compat
drwxr-xr-x   56 root  wheel    1024 Dec 18 08:13 contrib
drwxr-xr-x    5 root  wheel     512 Dec 18 08:16 crypto
drwxr-xr-x   21 root  wheel    2048 Dec 18 08:20 etc
drwxr-xr-x   13 root  wheel     512 Dec 18 08:23 games
drwxr-xr-x    4 root  wheel     512 Dec 18 08:23 gnu
drwxr-xr-x    7 root  wheel    2048 Dec 18 08:24 include
drwxr-xr-x    9 root  wheel     512 Dec 18 08:24 kerberos5
drwxr-xr-x   73 root  wheel    1536 Dec 18 08:29 lib
drwxr-xr-x   33 root  wheel    1024 Dec 18 08:30 libexec
drwxr-xr-x   12 root  wheel     512 Dec 18 08:31 release
drwxr-xr-x    4 root  wheel     512 Dec 18 08:31 rescue
drwxr-xr-x   92 root  wheel    2048 Dec 18 08:32 sbin
drwxr-xr-x    6 root  wheel     512 Dec 18 08:33 secure
drwxr-xr-x   25 root  wheel     512 Dec 18 08:40 share
drwxr-xr-x   53 root  wheel    1024 Dec 18 19:23 sys
drwxr-xr-x   12 root  wheel     512 Dec 18 19:24 tools
drwxr-xr-x  224 root  wheel    4096 Dec 18 19:27 usr.bin
drwxr-xr-x  193 root  wheel    3584 Dec 18 19:32 usr.sbin


stable-supfile (könnte ich demnächst mal noch umbenennen)
Code:
# $FreeBSD: src/share/examples/cvsup/stable-supfile,v 1.32.2.1 2007/10/11 06:26:19 kensmith Exp $
#
# This file contains all of the "CVSup collections" that make up the
# FreeBSD-stable source tree.
#
# CVSup (CVS Update Protocol) allows you to download the latest CVS
# tree (or any branch of development therefrom) to your system easily
# and efficiently (far more so than with sup, which CVSup is aimed
# at replacing).  If you're running CVSup interactively, and are
# currently using an X display server, you should run CVSup as follows
# to keep your CVS tree up-to-date:
#
#       cvsup stable-supfile
#
# If not running X, or invoking cvsup from a non-interactive script, then
# run it as follows:
#
#       cvsup -g -L 2 stable-supfile
#
# You may wish to change some of the settings in this file to better
# suit your system:
#
# host=CHANGE_THIS.FreeBSD.org
#               This specifies the server host which will supply the
#               file updates.  You must change it to one of the CVSup
#               mirror sites listed in the FreeBSD Handbook at
#               http://www.freebsd.org/doc/handbook/mirrors.html.
#               You can override this setting on the command line
#               with cvsup's "-h host" option.
#
# base=/var/db
#               This specifies the root where CVSup will store information
#               about the collections you have transferred to your system.
#               A setting of "/var/db" will generate this information in
#               /var/db/sup.  You can override the "base" setting on the
#               command line with cvsup's "-b base" option.  This directory
#               must exist in order to run CVSup.
#
# prefix=/usr
#               This specifies where to place the requested files.  A
#               setting of "/usr" will place all of the files requested
#               in "/usr/src" (e.g., "/usr/src/bin", "/usr/src/lib").
#               The prefix directory must exist in order to run CVSup.
#
###############################################################################
#
# DANGER!  WARNING!  LOOK OUT!  VORSICHT!
#
# If you add any of the ports or doc collections to this file, be sure to
# specify them with a "tag" value set to ".", like this:
#
#   ports-all tag=.
#   doc-all tag=.
#
# If you leave out the "tag=." portion, CVSup will delete all of
# the files in your ports or doc tree.  That is because the ports and doc
# collections do not use the same tags as the main part of the FreeBSD 
# source tree.
#
###############################################################################

# Defaults that apply to all the collections
#
# IMPORTANT: Change the next line to use one of the CVSup mirror sites
# listed at http://www.freebsd.org/doc/handbook/mirrors.html.
*default host=cvsup6.de.freebsd.org
*default base=/var/db
*default prefix=/usr
# The following line is for 7-stable.  If you want 6-stable, 5-stable,
# 4-stable, 3-stable, or 2.2-stable, change to "RELENG_6", "RELENG_5",
# "RELENG_4", "RELENG_3", or "RELENG_2_2" respectively.
*default release=cvs tag=RELENG_7
*default delete use-rel-suffix

# If you seem to be limited by CPU rather than network or disk bandwidth, try
# commenting out the following line.  (Normally, today's CPUs are fast enough
# that you want to run compression.)
*default compress

## Main Source Tree.
#
# The easiest way to get the main source tree is to use the "src-all"
# mega-collection.  It includes all of the individual "src-*" collections.
# Please note:  If you want to track -STABLE, leave this uncommented.
src-all

# These are the individual collections that make up "src-all".  If you
# use these, be sure to comment out "src-all" above.
#src-base
#src-bin
#src-cddl
#src-contrib
#src-etc
#src-games
#src-gnu
#src-include
#src-kerberos5
#src-kerberosIV
#src-lib
#src-libexec
#src-release
#src-rescue
#src-sbin
#src-share
#src-sys
#src-tools
#src-usrbin
#src-usrsbin
# These are the individual collections that make up FreeBSD's crypto
# collection. They are no longer export-restricted and are a part of
# src-all
#src-crypto
#src-eBones
#src-secure
#src-sys-crypto

make.conf
Code:
PERL_VER=5.8.8
PERL_VERSION=5.8.8
CFLAGS=-march=pentium-m -O2 -pipe -fomit-frame-pointer
SUP_UPDATE=             yes
SUP=                    /usr/bin/csup
SUPFLAGS=               -L 2 -z
SUPFILE=                /etc/csup/stable-supfile
#DOCSUPFILE=            /etc/csup/doc-supfile
 
Last edited:
Code:
root       5247  0.0  0.1  1888   544  p0  I+    8:02PM   0:00.00 make buildworld
root       5253  0.0  0.1  1888   652  p0  I+    8:02PM   0:00.01 make -m /usr/src/share/mk
root       5334  0.0  0.1  3456  1372  p0  I+    8:02PM   0:00.00 /bin/sh -ec MAKEFLAGS= make -C /usr/src/tools/build/make_check shell_1 || MAKEFLAGS= make -C /usr/src/tools/build/make_check failure
root       5335  0.0  0.1  1888   632  p0  I+    8:02PM   0:00.01 make -C /usr/src/tools/build/make_check shell_1
root       5336  0.0  0.1  3456  1372  p0  I+    8:02PM   0:00.00 /bin/sh -ec MAKEFLAGS= make -C /usr/src/tools/build/make_check shell_1_csh
root       5337  0.0  0.1  1888   636  p0  I+    8:02PM   0:00.01 make -C /usr/src/tools/build/make_check shell_1_csh
 
irgendwo ist nach dieser shell_test eine Variable verkehrt gesetzt.....

.....so nach Fehlermeldung

außerdem steht in der make.conf kein subhost=......ich weiß nicht ob das ohne funktioniert...noch probiert

normal reicht auch CPUTYPE?= pentium-m in der make.conf und nimmst die Flags raus...probieren
 
Last edited:
Back
Top