2009-07-24 6 views
1

Ich bin auf der Suche nach einer rpm oder einfachen Installationsanleitung, damit f2c auf meinem RedHat Linux OS funktioniert. Ich bin neu in Linux und es ist schwierig, so etwas bei Google zu finden.Woher bekomme ich die Dateien, um f2c auf Redhat Linux zu installieren?

(Ziel ist es f2c zu verwenden, um eine einfache FORTRAN77 Datei in c zu konvertieren, kompiliert dann)

Vorschläge jemand haben Hat?

Antwort

5
  1. die Quelle mit rsync Erste (empfohlen):

    $ rsync -avz netlib.org::netlib/f2c/src f2c 
    

    Abrufen der Quellen via FTP:

    $ mkdir -p f2c/src 
    $ cd f2c/src 
    $ ftp ftp.netlib.org 
    ftp> cd f2c 
    ftp> prompt 
    ftp> mget * 
    
  2. die Quellen zu bauen, in dem f2c/src tun:

    $ make -f makefile.u 
    
  3. das binäre, kopieren Sie sie in ein Verzeichnis in Ihrem $ PATH zu installieren:

    $ mkdir -p /usr/local/bin /usr/local/man/man1 
    $ cp f2c /usr/local/bin 
    $ cp f2c.1t /usr/local/man/man1 
    
  4. zu kompilieren Fortran Programme, die Sie auch libf2c benötigen:

    $ mkdir libf2c 
    $ cd libf2c 
    $ unzip ../libf2c.zip 
    $ make -f makefile.u 
    $ make -f makefile.u install LIBDIR=/usr/local/lib 
    

    libf2c ist eine Kombination aus der libF77 und libI77 Bibliotheken. Sie können diese Bibliotheken separat installieren und dann mit "-lF77 -lI77" verknüpfen. f2c/src Unter der Annahme ist von dem aktuellen Verzeichnis, speichern libF77 und libI77 und gehen Sie wie folgt (nicht erforderlich, wenn Sie bereits installiert libf2c oben):

    $ sh libf77 
    $ sh libi77 
    $ cd libF77 
    $ make CFLAGS=-I../f2c/src 
    $ make install LIBDIR=/usr/local/lib 
    $ cd ../libI77 
    $ make CFLAGS=-I../f2c/src 
    $ make install LIBDIR=/usr/local/lib 
    
  5. Die fc shell script ein schönes Frontend ist mit f2c zu verwenden. Speichern Sie es irgendwo und tun:

    $ cp fc /usr/local/bin/f77 
    $ chmod 755 /usr/local/bin/f77 
    

    I umbenannt es f77 Konflikte zu vermeiden, da fc ein bash builtin ist. Das fc-Skript erwartet libf2c und nicht libF77 und libI77, daher müssen Sie es bearbeiten und "-lf2c" durch "-lF77 -lI77" ersetzen, wenn Sie diese Bibliotheken anstelle von libf2c installiert haben.

  6. Schließlich Ihr Programm zu kompilieren können Sie tun:

    $ f77 source.f -o binary 
    

Auch die f2c parent directory überprüfen. Es enthält getopt.c, f2c.pdf und einige andere Sachen, die nützlich sein können.

Weitere weitere Informationen zu f2c die Readme-consult (weniger f2c/src/readme) und die Manpage (Mann f2c). Weitere Informationen zum fc-Skript finden Sie in den Kommentaren am Anfang der Datei.

+0

wow. Das ist eine unglaubliche Antwort! Vielen Dank! Ich habe es installiert. Allerdings, wenn ich "f77 source.f -o binary" ausführen, erhalte ich diesen Fehler: "Fehler: f2c.h: Keine solche Datei oder Verzeichnis". Weißt du, was ich falsch mache? (Ich habe libf2c entsprechend Ihrer ersten Anleitung installiert) – chris

+1

Sie können versuchen, * "f77 -I f2c/src source.f -o binary" *, wobei f2c/src das Verzeichnis ist, das die f2c-Quellen enthält (einschließlich f2c.h). Das Kopieren von f2c.h in/usr/local/include sollte dies dauerhaft machen. – Inshallah

0

Sie können eine vorkompilierte f2c Paket von ATrpms erhalten: http://atrpms.net/name/f2c/ Es enthält sowohl die Header (wie f2c.h) und die Bibliothek (libf2c) in Standardverzeichnissen, so dass Sie keine Probleme Kompilieren danach haben sollte.

Andernfalls könnten Sie versuchen, direkt mit einem kostenlosen Fortran-Compiler zu kompilieren; versuchen Sie gfortran. Wenn es nicht installiert ist, befindet es sich in Paket gcc-gfortran, so dass Sie es mit dem folgenden Befehl installieren können: yum install gcc-gfortran.