Dies ist der Befehl „aimkPVM“, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
Aimk – Portables Make-Wrapper-Skript
ZUSAMMENFASSUNG
Ziel [ -Hier ] [ um Argumente ]
BESCHREIBUNG
Ziel ist ein Wrapper-Programm für um, wird verwendet, um Optionen zum Erstellen von PVM und PVM portabel auszuwählen
Anwendungen auf verschiedenen Maschinen. Jedem Port von PVM ist ein zugewiesen Architektur Namedem „Vermischten Geschmack“. Seine
Name wird sowohl während der Kompilierung (zum bedingten Umschalten im Code) als auch zur Laufzeit (zur Verwendung) verwendet
Wählen Sie eine ausführbare Datei oder einen Host aus.
Aimk verwendet den Wert der Umgebungsvariablen $PVM_ARCH wenn es gesetzt ist, sonst ruft es auf
$PVM_ROOT/pvmgetarch um den Architekturnamen zu bestimmen. pvmgetarch ist ein Skript, das
schnüffelt an verschiedenen Teilen des Systems, um den richtigen Architekturnamen zu ermitteln. Es ist
Wird aktualisiert, wenn neue PVM-Ports definiert werden, und kann lokal erweitert werden.
Aimk bestimmt die Maschinenarchitektur und die Execs und übergibt ihm die Architektur und a
Konfigurationsdatei zusammen mit den an Aimk übergebenen Argumenten. Es führt make in einem Unterverzeichnis aus
um zu verhindern, dass ausführbare Dateien vermischt werden, und um überlappende Kompilierungen zu ermöglichen. A
In jedem Unterverzeichnis oder in einem einzelnen Makefile können unterschiedliche Makefiles abgelegt werden. Makefile.aimk,
kann zwischen Architekturen geteilt werden. Architekturspezifische Definitionen aus $PVM_ROOT/conf
Verzeichnis werden an das gemeinsame Makefile angehängt. Aimk Calls Make wird in einem von drei Fällen aufgerufen
Möglichkeiten, abhängig davon, welche Makefiles vorhanden sind:
ich. Wenn $PVM_ARCH/Makefile oder $PVM_ARCH/makefile vorhanden ist, ändern Sie das Verzeichnis in $PVM_ARCH
und exec make dort:
(cd $PVM_ARCH ; make PVM_ARCH=$PVM_ARCH < Aimk-Argumente >)
ii. Andernfalls, wenn Makefile.aimk existiert, erstellen Sie das Verzeichnis $PVM_ARCH, falls es nicht existiert, dann:
(cd $PVM_ARCH ; \
make -f $PVM_ROOT/conf/$PVM_ARCH.def \
-f ../Makefile.aimk PVM_ARCH=$PVM_ARCH < Aimk-Argumente >)
iii. Andernfalls führen Sie einfach „exec make“ im aktuellen Verzeichnis aus:
make PVM_ARCH=$PVM_ARCH < Aimk-Argumente >
Wenn es Aimk gelingt, make aufzurufen, ist der Exit-Status der von make, andernfalls ist er 1.
FLAGGEN
-here Zwingt Aimk dazu, make im aktuellen Verzeichnis auszuführen, z. B. konvertiert case i. zu fall
iii.
Beispiele:
Die folgende Makefile.aimk-Datei wird erstellt und installiert HELLO, wodurch die PVM-Binärdatei erstellt wird
Verzeichnis, falls es nicht existiert. Es kann gleichzeitig auf Maschinen unterschiedlichen Typs ausgeführt werden.
das gleiche Quellverzeichnis teilen.
LDIR = -L$(PVM_ROOT)/lib/$(PVM_ARCH)
PVMLIB = -lpvm3
SDIR = ..
BDIR = $(HOME)/pvm3/bin
XDIR = $(BDIR)/$(PVM_ARCH)
CFLAGS = -g -I$(PVM_ROOT)/include
LIBS = $(LDIR) $(PVMLIB) $(ARCHLIB)
$(XDIR):
- mkdir $(BDIR) $(XDIR)
Hallo: $(SDIR)/hello.c $(XDIR)
$(CC) $(CFLAGS) -o $@ $(SDIR)/[E-Mail geschützt] $(LIBS)
mv $@ $(XDIR)
$PVM_ROOT Root-Pfad der PVM-Installation.
$PVM_ARCH PVM-Architekturname für die Maschine.
Nutzen Sie AimkPVM online über die Dienste von onworks.net