Makefile in Ports überschreiben

gil

Member
Hallo zusammen,

erstmal muß ich mir eingestehen, ein totales Newbee in Sachen FreeBSD zu sein.

Mein Problem ist auch ziemlich trivaler Natur, da es lediglich um eine kleine Änderung geht:

In den Ports muß ich in der Datei Makefile eine kleine Anpassung vornehmen, um eine vorhandene Installation (in diesem Fall php4) dann nochmal vorzunehmen.

Soweit hab ich eine Anleitung bereits "ergoogelt". Alle Bemührungen scheitern jedoch daran, das die Datei sich nicht ändern lässt (Read Only Filesystem)

Das FreeBSD Handbuch stellt zwar alle möglichen Features vor, jedoch habe ich hierzu (also ein trivales Ändern einer Datei) keine Anleitung gefunden.

Vielleicht kann jemand, bitte möglichst einfach erklärt, eine Hilfestellung geben.

Danke,

Gilbert
 
gil said:
( lrwxrwxrwx )

Das waehre dann ein Link, wo zeigt der hin?!

Eigentlich sollte so gehen:

Code:
# cd /usr/ports/deine/anwendung/
# vim Makefile
# make install clean

Du kannst natuerlich einen anderen Texteditor verwenden, vim war hier nur ein Beispiel.
 
Jau, das dachte ich auch, bereits schon versucht.

Leider blockiert ein Schreibschutz (read only filesystem) meinen Versuch, das makefile für die Extensions im Port für lang/php4 zu ändern.

Ich muss hier zusätzlich einen Parameter angeben, um die GD zur Ausgabe von deutschen Sonderzeichen zu bewegen.

Warum lassen sich die Dateien in den Ports nicht einfach anpassen bzw. aktualisieren ? By the Way, welchen Sinn ergibt das ganze Port-System, wenn es Pakete gibt ?

Gil
 
gil said:
Leider blockiert ein Schreibschutz (read only filesystem) meinen Versuch, das makefile für die Extensions im Port für lang/php4 zu ändern.

Poste mal deine /etc/fstab.
Kann es sein, dass du /usr o.ä. auf einer extra Partition hast und diese als read-only gemountet wird? Das wuerde natuerlich alles erklaeren.

gil said:
Warum lassen sich die Dateien in den Ports nicht einfach anpassen bzw. aktualisieren

Geht eigentlich ohne Probleme... das ist ja das geile ;)

gil said:
? By the Way, welchen Sinn ergibt das ganze Port-System, wenn es Pakete gibt ?

http://www.freebsd.org/doc/de_DE.ISO8859-1/books/handbook/ports-overview.html
 
Hi,

hab in meine fstab reingeschaut. Gemountet wird eine Partion für die Ports nicht.
Ich hab mir grad nochmal die Rechte anzeigen lassen. Die schaun so aus:

-rw-r--r-- 1 root wheel 5406 Apr 4 10:39 Makefile
-rw-r--r-- 1 root wheel 9887 Apr 12 23:35 Makefile.ext
-rw-r--r-- 1 root wheel 915 Apr 15 10:39 Makefile.pear
-rw-r--r-- 1 root wheel 96 Apr 4 10:39 distinfo
drwxr-xr-x 2 root wheel 1024 Apr 15 10:39 files
-rw-r--r-- 1 root wheel 455 Jan 18 2004 pkg-descr
-rw-r--r-- 1 root wheel 330 Jul 19 2004 pkg-message.mod
-rw-r--r-- 1 root wheel 273 Jul 19 2004 pkg-message.pear
-rw-r--r-- 1 root wheel 5977 Apr 4 10:39 pkg-plist
-rw-r--r-- 1 root wheel 1996 Apr 15 10:39 pkg-plist.pear

Nun gibts noch einen User "wheel"... Inwieweit drehtd er denn noch am Rad ???


Achje, issat komplex... Bin jetzt langsam völlig verwirrt ;-)...
 
gil said:
hab in meine fstab reingeschaut. Gemountet wird eine Partion für die Ports nicht.
Ich hab mir grad nochmal die Rechte anzeigen lassen. Die schaun so aus:

Poste trotzdem mal die /etc/fstab

gil said:
-rw-r--r-- 1 root wheel 5406 Apr 4 10:39 Makefile
-rw-r--r-- 1 root wheel 9887 Apr 12 23:35 Makefile.ext
-rw-r--r-- 1 root wheel 915 Apr 15 10:39 Makefile.pear
-rw-r--r-- 1 root wheel 96 Apr 4 10:39 distinfo
drwxr-xr-x 2 root wheel 1024 Apr 15 10:39 files
-rw-r--r-- 1 root wheel 455 Jan 18 2004 pkg-descr
-rw-r--r-- 1 root wheel 330 Jul 19 2004 pkg-message.mod
-rw-r--r-- 1 root wheel 273 Jul 19 2004 pkg-message.pear
-rw-r--r-- 1 root wheel 5977 Apr 4 10:39 pkg-plist
-rw-r--r-- 1 root wheel 1996 Apr 15 10:39 pkg-plist.pear

Nun gibts noch einen User "wheel"... Inwieweit drehtd er denn noch am Rad ???

wheel ist kein User, sondern eine Gruppe. Mitglieder der Gruppe wheel koennen mit su(1) zu root werden.

Sieht eigentlich ganz i.O. aus...

Poste auch bitte den kompletten Shellablauf incl. Fehlermeldung.
 
# Device Mountpoint FStype Options
/dev/da0e / ufs rw,userquota,groupquota
/dev/da0b none swap sw
/dev/da1e /backup ufs ro
proc /proc procfs rw

Als Fehlermeldung z.B.:

/ports/lang/php4# chmod 777 Makefile.ext

chmod: Makefile.ext: Read-only file system

Vielleicht hilfts...
 
Mal ne gaaaaaaanz schwache Vermutung. Ich hatte oben schon bemerkt, dass deine Aussage:

gil said:
Jau, habe natürlich root Rechte. ( lrwxrwxrwx )

.. auf einen Link schliezen laesst. (Siehe das 'l' vor den Datei-Rechten)

Wie wir in deiner /etc/fstab sehen:
gil said:
# Device Mountpoint FStype Options
/dev/da0e / ufs rw,userquota,groupquota
/dev/da0b none swap sw
/dev/da1e /backup ufs ro
proc /proc procfs rw

wird wirklich ein Dateisystem Readonly gemountet. Kann es also sein, dass /usr/ports irgendwo auf /dev/da1e gelinkt ist?
 
xenobyte said:
Mal ne gaaaaaaanz schwache Vermutung. Ich hatte oben schon bemerkt, dass deine Aussage:

.. auf einen Link schliezen laesst. (Siehe das 'l' vor den Datei-Rechten)

Wie wir in deiner /etc/fstab sehen:


wird wirklich ein Dateisystem Readonly gemountet. Kann es also sein, dass /usr/ports irgendwo auf /dev/da1e gelinkt ist?

Jepp, hast Recht. Nachdem ich mich da in die Materie reingefummelt habe, ist tatsächlich ein Teil readonly gemountet.

Dammed, und nu ? Installieren ohne Ports, also mit nen Päckchen ?
 
Last edited:
s-tlk said:
vielleicht das ganze rw mounten?
:)

Diese Rechte habe ich leider nicht. Die ftab ist gesperrt (Virtueller Server).

Schätze mal, das die Partiton für andere mitbenutzt wird.

Alternative wäre doch eine Installation über Packages, oder ?
 
Code:
# rm -rf /usr/ports
# /stand/sysinstall

- Configure waehlen <ENTER>
- Distributions waehlen <ENTER>
- ports waehlen <SPACE>
- Exit waehlen <ENTER>
- HTTP oder FTP waehlen <ENTER>
- Exit waehlen <ENTER>
- sysintall mit X verlassen


Fertig...


Packages gehen natuerlich auch, aber ich persoenlich mag die Ports lieber...
 
Na, ganz so einfach wird es dann leider wohl doch nicht.


Werd mich dann mal heute nachmittag in den ersten Gehversuchen mit Packages versuchen...;-)
 
Back
Top