Sie sind nicht angemeldet.

Caddy

Profi

  • »Caddy« ist männlich
  • »Caddy« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Röslau

Beruf: Organisationsprogrammierer

  • Nachricht senden

1

12.06.2003, 07:01

Default PATH-Pfad?

Tach zusammen.

Folgendes Problem:

Habe gerade die aktuelle CUPS-Version in folgendes Verzeichnis erstellt: /usr/local/cups-1.1.19

Anschließend wollte ich zum testen mal samba-3.0 beta1 mal kompelieren. Bei der Suche nach Cups kommt ne Fehlermeldung, das er die cups-config nicht findet. Logisch, da ja der Pfad /usr/local/cups-1.1.19 nicht im "Default-Pfad" liegt.

Kann mir jemand nen kurzen Tip geben, wie ich das Systemweit ändern kann????

Unter DOS ging das ja immer in der autoexec.bat :crazy:

Danke schon jetzt
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

  • »Doomshammer« ist männlich

Beiträge: 668

Wohnort: Ostfriesland

Beruf: Netzwerk- & Systemadministrator

  • Nachricht senden

2

12.06.2003, 07:57

Das Verz. /usr/local/cups-1.1.19/bin in das PATH Environment aufzunehmen ist IMO ziemlich unsauber.

Das Programm cups-config ist dazu da, dem Configure-Skript die $CFLAGS und $LDFLAGS zu uebergeben. Wenn das Configure-Skript dieses nicht findet, ist das aber nicht unbedingt schlimm. Du kannst auch einfach vor dem kompilieren folgendes machen:

Quellcode

1
2
3
4
5
export CFLAGS=$(/usr/local/cups-1.1.19/bin/cups-config --cflags)
export LDFLAGS=$(/usr/local/cups-1.1.19/bin/cups-config --libs)
make clean
rm -f config.log config.status
./configure --deine-paramter


Damit sollte er die $LDFLAGS und $CFLAGS direkt aus 'm Environment lesen, was die Verwendung von cups-config ueberfluessig macht.

Alternativ bieten einige Configure-Skripts auch einen Parameter a la: --with-cups-prefix. Dann sehe das ganze in etwa so aus:

Quellcode

1
./configure --deine-parameter --with-cups-prefix=/usr/local/cups-1.1.19


Falls Du aber unbedingt den PATH aendern willst, schau Dir mal die Datei /etc/profile an
perl -e 'print pack("B248","01010010010101000100011001001101001000000010110100100000010010000110000101101100011101000010000001000100011010010110001101101000001000000110010001110010011000010110111000100001");'

Caddy

Profi

  • »Caddy« ist männlich
  • »Caddy« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Röslau

Beruf: Organisationsprogrammierer

  • Nachricht senden

3

12.06.2003, 10:05

Habe nun gerade gelesen, das es bei SuSE eine /etc/profile.local gibt.

Dort könnte ich das ja mit eingeben...

Ich habe mir das so vorgestellt:

Aktuell habe ich hier in der Firma einen Samba-2.2.8 Server mit Cups 1.1.12 auf SuSE 8.0. Dieser bedient die komplette Firma als Printserver.

Jetzt werde ich einen neuen Server auf SuSE 8.2 aufbauen. Aber diesmal möchte ich die aktuellen Samba und Cups selbst aus der Source erstellen. Daher dachte ich, währe es ganz gut, den Pfad in die /etc/profile.local einzugeben. Dann kann ich bei einer neuen Samba oder Cups-Version einfach dann diesen Pfad ändern...
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

  • »Doomshammer« ist männlich

Beiträge: 668

Wohnort: Ostfriesland

Beruf: Netzwerk- & Systemadministrator

  • Nachricht senden

4

12.06.2003, 10:18

Zitat

Original von Caddy
Jetzt werde ich einen neuen Server auf SuSE 8.2 aufbauen. Aber diesmal möchte ich die aktuellen Samba und Cups selbst aus der Source erstellen. Daher dachte ich, währe es ganz gut, den Pfad in die /etc/profile.local einzugeben. Dann kann ich bei einer neuen Samba oder Cups-Version einfach dann diesen Pfad ändern...

Das hat nichts mit 'm PATH zu tun...
Sowas solltest Du mit stow oder checkinstall machen.

Sven 'Hoaxter' Hoexter hat mal 'n kleinen Text zum PATH Environment geschrieben: http://www.hautu.de/index.php?page=3&id=18
perl -e 'print pack("B248","01010010010101000100011001001101001000000010110100100000010010000110000101101100011101000010000001000100011010010110001101101000001000000110010001110010011000010110111000100001");'

Caddy

Profi

  • »Caddy« ist männlich
  • »Caddy« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Röslau

Beruf: Organisationsprogrammierer

  • Nachricht senden

5

12.06.2003, 12:27

Danke Doomshammer, genausowas brauche ich.

Ich denke das ist optimal für meinen Wunsch.

Dann lege ich

/usr/local/cups-1.1.19

in die /etc/profile.local.

Wenn es dann ne neue Version gibt (z. B. 1.1.20), welche ich dann in der Verzeichnis /usr/local/cups-1.1.20 installiere, ändere ich einfach den Pfad in der /etc/profile.local.

Anschließend in meinen Fall noch Samba nochmals neu kompelieren lassen und dann ist das gut.

???????????????????????????
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

  • »Doomshammer« ist männlich

Beiträge: 668

Wohnort: Ostfriesland

Beruf: Netzwerk- & Systemadministrator

  • Nachricht senden

6

12.06.2003, 13:03

Vom Prinzip her 'ne nette Idee, aber wie schon gesagt, das funktioniert so nicht. Fuer sowas solltest Du stow oder checkinstall oder sowas benutzen.

Denn... das Configure-Script ruft, um mal beim Bsp. zu bleiben, cups-config (welches in einem Verz. in $PATH liegt) auf und bekommt von dem LD- und CFLAGS

z. B. sowas:

Quellcode

1
-L/usr/local/cups-1.1.9/lib


Merkst was? Der absolute Pfad zu den Bibliotheken wird hier uebergeben, damit ldd sie finden kann. Wenn Du jetzt den PATH-Eintrag von cups in der /etc/profile.local auf eine neuere Version aenderst, sind in Samba aber immernoch die Libs in /usr/local/cups-1.1.19/lib verwandt.

Ausserdem muesstest Du jedesmal wenn Du eine andere Version installierst, die /etc/ld.so.conf aendern bzw. anpassen, damit der neue Pfad auch stimmt und ldconfig die richtigen Libs findet.

Einfacher ist das ganze mit Stow. Dort installierst Du alles, wie Du es schon gemacht hast z. B. nach /usr/local/stow/cups-1.1.19. Dann meisst Du stow an und laesst ihn das cups-verz. verarbeiten. Stow erstellt jetzt Symlinks von /usr/local/stow/cups-1.1.19/libs auf /usr/local/libs (auf das jedes Configurescript und ldconfig eh zugreifen. Willst Du jetzt eine neue Cups-Version installieren, entfernt stow die Symlinks wieder und verlink die Dateien des neuen Cups. Feine Sache eigentlich (ich pers. nutze nur stow).

Checkinstall ist auch recht nett. Du gibst beim Configure kein extra prefix an sondern laesst ihn das default nehmen. Dann nach dem make einfach "checkinstall make install" machen. Checkinstall loggt den kompletten Vorgang mit und speichert das ganze auf Wunsch auch noch als RPM oder dergl. Somit ist das Sourcepaket installiert, aber laesst sich mittels checkinstall leicht wieder entfernen und auf ein neueres updaten.
perl -e 'print pack("B248","01010010010101000100011001001101001000000010110100100000010010000110000101101100011101000010000001000100011010010110001101101000001000000110010001110010011000010110111000100001");'

Caddy

Profi

  • »Caddy« ist männlich
  • »Caddy« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Röslau

Beruf: Organisationsprogrammierer

  • Nachricht senden

7

12.06.2003, 13:27

Das heißt, das wenn ich mein Prinzip verfolge, jedesmal bei einer neuen Version bei meinem Beispiel sowohl Cups als auch Samba neu erstellen muss oder?

Das nächste Problem wo ich dann habe:

Ich werde Samba so konfigurieren, damit ich von Windows aus Drucker-Treiber auf dem Samba-Server hinterlege.

Das heißt natürlich auch, das ich bei einer neuen Samba-Version keinen Bock drauf habe, jedesmal die ganzen Drucker neu anzulegen und die Treiber wieder hochzuladen.

Gut, mit rpm-Versionen währe das Thema gegessen. Aber will ich net haben. Vor allem weil es von Samba 3 noch keine von SuSE gibt.

CUPS währe kein Thema. Einfach die cups.conf wegkopiert, fertig. Bei Samba smb.conf, klar. Aber die ganzen Druckertreiber usw. Dann gibt es ja noch extra Dateien, wo dies alles abgespeichert ist.

Macht ein Verzeichnis /usr/local/samba Sinn, in welche ich immer die neue Version einfach reinstelle?
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

Caddy

Profi

  • »Caddy« ist männlich
  • »Caddy« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Röslau

Beruf: Organisationsprogrammierer

  • Nachricht senden

8

12.06.2003, 14:19

Habe nun mal geschaut zwecks Samba:

http://de.samba.org/samba/devel/docs/htm….html#compiling

Sollte es einen interessieren...
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

Wurlitzer

Schüler

  • »Wurlitzer« ist männlich

Beiträge: 146

Wohnort: Wurlitz

Beruf: Informatikkaufmann

  • Nachricht senden

9

12.06.2003, 14:33

Link

Ich arbeite ganz gerne mit Links.

z.B. /usr/local/cups-1.1.9 linken auf /usr/local/cups

Wenns dann mal ne neue Version gibt einfach den Link ändern auf das neue Verzeichnis.
Aber ob das eleganter ist als den Path zu ändern weiß ich auch nicht.
Wir stehen vor einem tiefen Abgrund - Morgen sind wir einen Schritt weiter

Caddy

Profi

  • »Caddy« ist männlich
  • »Caddy« ist der Autor dieses Themas

Beiträge: 756

Wohnort: Röslau

Beruf: Organisationsprogrammierer

  • Nachricht senden

10

12.06.2003, 15:28

Werde die Programme nun nach

/usr/local/cups
/usr/local/samba

installieren.

Habe mir mal beide Dokus a wengerle angeschaut (!!!)
Bei neuen Version kann man einfach die alten überschreiben. Dann klappt das. (hoffe ich)
Der Vorteil der Klugheit besteht darin, dass man sich dumm stellen kann. Das Gegenteil ist schon schwieriger.

strcat

Unix Gladiator

  • »strcat« ist männlich

Beiträge: 2 330

Wohnort: /Earth/Germany/Bavaria/Regensburg

  • Nachricht senden

11

12.06.2003, 15:47

RE: Link

Zitat

Original von Wurlitzer
..
Aber ob das eleganter ist als den Path zu ändern weiß ich auch nicht.

Ist es. (Symbolische) Links vergisst man relativ schnell und dann mecktert 'ld' und 'ldconfig' wieder rum.
Christian 'strcat' Schneider <http://www.strcat.de/>
/* When all else fails, read the instructions. */

Thema bewerten