compilieren

Gimp

Gimp

Grünschnabel
Hallo,

ic wollte mal fragen ob mir hier jemand sagen kann wie man ein Programm unter SuSE compiliert.

Danke!
 
Alter Dreisatz:

./configure;make;su -c "make install"

MFG

Dennis
 
DennisM schrieb:
Alter Dreisatz:

./configure;make;su -c "make install"

MFG

Dennis

Besser:

./configure && make && su -c checkinstall.

&& = logical and bedeutet: Wenn %Befehl1 erfolgreich, dann $Befehl2 usw.

Checkinstall: Wir wollen doch nicht an der Paketverwaltung vorbeiinstallieren, oder?
 
Naja, wenn ./configure nicht läuft, dann läuft make auch nicht und wenn make nicht durchläuft kannst du make install auch vergessen, hier also trivial. ;)

MFG

Dennis
 
Hallo
Besser daraus einen Viersatz zu machen. Dazu ein cat READMEoder ./configure --help voranstellen. ;)

Gruß Wolfgang
 
Mal hierzu eine Frage - "configure" ist ja ein Script (ca. 500kb) dass sich immer im Verzeichnis des jeweiligen zu kompilierenden Programms befindet, richtig? Bisher habe ich - zumindest nicht in der Form - unter UNIX gecodet. Was passiert, wenn einmal das Script nicht mitgeliefert wird? Funktionieren auch configure Scripts anderer Anwendungen? Kann ich anderweitig das Makefile erstellen? Woher kommt das Script überhaupt?

Hat jemand vielleicht einen Link parat, wo ich Vorgehensweisen nachlesen kann, wie man unter Linux sein Programm bzw. die Ordnerstruktur anlegen muss, damit ich - wenn ich den Dreisatz anwende - meine selbstgeschriebene Anwendung installieren kann (sprich die Binärdaten sich z.B. nach /usr/local/bin kopieren und ich die installierten Dateien sauber wieder vom System bekomme, wenn ich sie nicht mehr benötige)? Bisher hatte ich schlicht mein *.c File und das habe ich kompiliert. Dann kam hinten eine Binärdatei zum ausführen raus.

Disclaimer: Hab mich längere Zeit mit dem Thema beschäftigt und auch gegoogelt, gelesen (auch hier usw.) und und und, aber ich war mit dem Gefundenen einfach nicht zu frieden bzw. es hat mich zu sehr verwirrt ;)
 
Ich bin mir zwar nicht sicher, aber:

Woher kommt das Script überhaupt?
Von demselben Programmierer wie das andere Programm.

Was passiert, wenn einmal das Script nicht mitgeliefert wird?
Bei mir war es so, wenn das Programm eine configure-file gebraucht hat, dann war eigentlich immer eine dabei.
 
Ich bin mir zwar nicht sicher, aber:

Woher kommt das Script überhaupt?
Von demselben Programmierer wie das andere Programm.

Was passiert, wenn einmal das Script nicht mitgeliefert wird?
Bei mir war es so, wenn das Programm eine configure-file gebraucht hat, dann war eigentlich immer eine dabei.

Hehe :-) Vielleicht ist es vollkommener Nonsense; vielleicht kommt es ja nie vor, dass das config File nicht mit dabei ist. Nichtsdistrotrotz würde mich interessieren, wie der Programmierer das dann selbst erstellt hat. Hatte hier eine Software, bei dem das Script 500kb+ hatte und so wie das aussah hat kein Mensch diesen Code fabriziert :-)
 
Wenn kein configure-skript dabei, gibt es im install-Verzeichnis entweder:

- das fertige makefile
- ein shell-script, welches du aufrufst und das das kompilieren für dich übernimmt

Wenn du für deine eigenen Programme ein configure-script brauchst, dann wirst du das wohl selber schreiben müssen.

[Halbwissen]
Es gibt aber Software die einen dabei unterstützt, ich glaube mich an sowas wie autoconfigure zu erinnern.
[/Halbwissen]
 
OffTopic:
Die meisten Configure scripts sind ja so gross wie DOS 1.0 :)
Code:
[(manuel@smartie)-(~/svn/fluxbox)]: wc -l configure
26369 configure
DOS hatte damals auch nicht mehr...


MFG Manuel
 
Hi!

Eine Suche nach "make configure tutorial" bei deiner Lieblings-Suchmaschine (z.B. Google) haette dir schon ein paar gute Links gebracht. Noch bessere Ergebnisse erzielst du mit "autoconf automake tutorial".

Ich war mal so freundlich und habe zwei Tutorials rausgesucht die fuer mich interessant aussehen:
- http://www.seul.org/docs/autotut/
- http://autotoolset.sourceforge.net/tutorial.html

Kurz zusammengefasst:
Solang man nur eine Quellcode-Datei (z.B. eine .c-Datei) kompilieren muss kann man das ja manuell durch Aufruf des Compilers machen (wie du es bisher gemacht hast).
Wenn man allerdings ein groesseres Projekt mit vielen Dateien hat wird das schnell unuebersichtlich und dann benutzt man unter Unix/Linux meist Make um das zu vereinfachen. Siehe Make-Artikel in der Wikipedia fuer mehr Informationen dazu.
Falls man seine Software jetzt anderen zur Verfuegung stellen will hat man das Problem das diese evtl. eine unterschiedliche Unix/Linux-Distribution als man selbst einsetzen. Dort liegt die zum Kompilieren benoetigte Software (Compiler, Linker) oft in einem anderen Pfad oder ist in einer anderen Version vorhanden was dazu fuehrt, dass das Makefile welches man auf dem eigenen System verwendet hat dort u.U. nicht funktioniert. Aus diesem Grund wurde Configure entwickelt was vor ausfuehren von make dafuer sorgt das ueberprueft wird ob alle Abhaengigkeiten erfuellt sind und das Makefile wenn noetig auf die Gegebenheiten des Systems anpasst. Siehe Autoconf-Artikel in der Wikipedia fuer mehr Informationen dazu.

Gruss,
Philip
 
@Peregrine: Ich denke mit Autoconf geht alles automatisch :)
 
@Peregrine: Ich denke mit Autoconf geht alles automatisch

Vorrausgesetzt es ist dafür ausgelegt, viele Programme kommen nun schon mit scons o.ä. was ich gut finde, um dem autotool wirrwarr ein Ende zu setzen.

MFG

Dennis
 

Ähnliche Themen

Probleme mit parallelen Zugriffen per SFTP

Welche Distro wie RHEL (Tools & Repos)?

Versehentlich gelöschte Daten zurückholen

postfix smtpd_recipient_limit

Samba Server mangling

Zurück
Oben