2017-04-20 5 views
0

für eine Reihe von Gründen, muß ich ein festes Dateiformat umfassen, „header.f“ enthalten nur einen Formatausdruck:Intel Fortran Fehler 5082 bei der Verwendung von „include“

c 
8000 format(/, 
    & t9,'----------------------------------------------------',/, 
    & t9,'Some header that i want to include , Tel.555-55555 ',/, 
    & t9,'----------------------------------------------------') 
c 

In meinem Haupt-Code ich habe :

include 'header.f' 

Wenn unter Linux, mit Intel-Compiler, erhalte ich die folgende Meldung:

header.f(6): error #5082: Syntax error, found END-OF-FILE when expecting one of: <END-OF-STATEMENT> ; <LABEL> BLOCK BLOCKDATA PROGRAM MODULE TYPE COMPLEX BYTE ... 

Wie soll ich das Ende Header-Datei? Warum funktioniert das gleiche Beispiel unter Windows (mit Visual Studio)? Kommt es auf einige Kompilierungsoptionen an?

Vielen Dank!

EDIT 1: Offensichtlich statisch fügt der Code, der in "header.f" in das Haupt geschrieben wird, wie ein Charme ein. Das Problem ist die "Kompilierung" von .f, die nur das Format enthält.

+0

Ihre Frage ist nicht klar. Sie können mit include keine Quelle eines festen Formats in eine freie Formatkompilierung einfügen. Es ist möglich, Include-Dateien zu erstellen, die sowohl als 72-Spalten-Format als auch als freies Format arbeiten, indem beide Arten von Zeilenfortsetzungszeichen verwendet werden. – tim18

+0

Ist das Hauptprogramm auch eine feste Form? Es sieht nicht so aus, als würde es keine Einrückung geben. – francescalus

+0

Ich würde erwarten, eine Fehlermeldung wie diese zu sehen, wenn der Compiler versuchte, Ihre 'header.f' isoliert zu kompilieren. Ich denke, wir müssen wissen, was im Hauptprogramm ist und wie Sie alles zusammenstellen. –

Antwort

0

Leider bin ich einer der Leute, die header.f in der Kompilierzeile enthalten. Das Problem war, dass ich versuche kompilieren eine Datei im festen Format als ein Include verwendet. Wie jemand in den Kommentaren sagte, ist es nicht empfehlenswert, die Erweiterung .f für Include-Dateien zu verwenden.

Lektion gelernt, danke allen für die Hilfe, die mir zur Verfügung gestellt!

Verwandte Themen