Hello,

I am trying to compile fortran code under Windows.
When the Fortran language is enabled, the fortran checking routine shows the following error:

Determining if the Fortran compiler works failed with the following output:
nmake -f CMakeFiles\cmTryCompileExec.dir/build.make /nologo -L CMakeFiles\cmTryCompileExec.dir\build Building Fortran object CMakeFiles/cmTryCompileExec.dir/testFortranCompiler.obj C:\PROGRA~1\MICROS~2\DF98\BIN\F90.EXE -o CMakeFiles/cmTryCompileExec.dir/testFortranCompiler.obj -c C:\devel\BRAT\CMakeFiles\CMakeTmp\testFortranCompiler.f
F90: error: Switch '-o' is ambiguous
NMAKE : fatal error U1077: 'C:\PROGRA~1\MICROS~2\DF98\BIN\F90.EXE' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Visual Studio\VC98\BIN\nmake.exe"' : return code '0x2'
Stop.

Did somebody have the same kind of problem and solved it ?

The fortran compiler if Compaq Fortran 6.1 and it
does not seem to have a -o option (f90 -help command
output is below).
CMake version: 2.4.2


Thanks
--
Philippe Poilbarbe.
CLS - Space Oceanography Division



Compaq Visual Fortran Optimizing Compiler Version 6.1
Copyright (C) 1997,1999 DIGITAL Equipment Corp. All rights reserved.

Invokes Compaq Visual Fortran preprocessor, Compaq Visual Fortran compiler,
and linker.

f90 [options] file1 [file2...] [/link options]

Compiler Options
/align:keyword         Specifies how data items are aligned.
                        Keywords are [no]commons, dcommons, [no]records,
                        rec1byte, rec2byte, rec4byte, rec8byte.
/[no]altparam          Specifies if alternate form of parameter constant
                        declarations (without parenthesis) is recognized.
/architecture:keyword  Specifies which version of the machine architecture
                        to generate instructions for.
On ALPHA, keyword is generic, host, ev4, ev5, ev56, ev6
                        On Intel, keyword is generic, host, p5, p6
/[no]asmattr:keyword   Specifies the information to generate in the
                        assembleable listing file.
                        Keywords are [no]source, [no]machine.
/[no]asmfile[:filename]
Specifies that an assembleable listing file should be
                        generated.
/assume:keyword        Specifies assumptions made by the optimizer and code
                        generator.
                        Keywords are none, [no]accuracy_sensitive,
                        [no]byterecl, [no]buffered_io, [no]dummy_aliases,
                        [no]minus0, [no]source_include, [no]underscore.
/[no]automatic         Puts local variables on the run-time stack.
/bintext:string        Places the string specified into the object file.
/[no]browser[:filename]
                       Specifies that source browser information should be
                        generated.
/[no]check:keyword     Check run-time conditions.
Keywords are all, none, [no]bounds, [no]flawed_pentium,
                        [no]format, [no]overflow, [no]output_conversion,
                        [no]power, [no]underflow.
/[no]compile_only Specifies that only the compilation phase is performed.
/convert:keyword       Specifies the format of unformatted files containing
                        numeric data.
                        Keyword is big_endian, cray, ibm, little_endian,
                        native, vaxd, vaxg.
/[no]d_lines           Compile lines having a D or d character in column 1.
/[no]dbglibs           Controls linking against debug C run-time library
/[no]debug:keyword     Specifies the amount of debug information included.
                        Keyword is none, minimal, partial, full.
/define:symbol[=int] Defines the symbol specified for use with conditional compilation metacommands. Optionally, the symbol can
                        be defined to be an integer value.
/[no]dll[:filename]    Specifies that the program should be linked as a
                        dynamic-link (DLL) file.
/[no]error_limit:size  Specifies the maximum number of error-level or
                        fatal-level compiler errors allowed.
/[no]exe[:filename]    Specifies the name to be used for the built program
                        (.EXE) or dynamic-link (.DLL) library.
/extfor:ext            Specifies file extensions to be processed as Fortran
                        source programs.
/[no]extend_source[:size]
Determines the column that ends the statement field of each source line in a fixed-format file. /Extend_source
                        ends the source in column 132.
                        Size is 72, 80, 132.
/f66 Allows extensions that enhance FORTRAN-66 compatibility. /[no]f77rtl Specifies that the Fortran 77 specific run-time support
                        should be used.
/fast                  Generates most-optimized code.
/[no]fixed Interprets Fortran source files in the specified form.
/[no]fltconsistency    Specifies that improved floating-point consistency
                        should be used.
                        INTEL only.
/[no]fpconstant        Extends the precision of single precision constants
                        assigned to double precision variables to double
                        precision.
/fpe:option            Specifies behavior on floating-point exceptions.
                        Option is 0, 3.
/[no]fpscomp[:keyword] Specifies the level of compatibility to adhere to
                        with Fortran PowerStation.
Keywords are all, none, [no]filesfromcmd, [no]general,
                        [no]ioformat, [no]libs, [no]logicals, [no]symbols.
/[no]free Interprets Fortran source files in the specified form.
/granularity:keyword   Ensures that data can be accessed from different
                        threads.
                        Keyword is byte, longword, quadword.
                        ALPHA only.
/iface:keyword         Specifies the calling conventions to be used.
                        Keywords are [no]mixed_str_len_arg and one of cref,
                        default, stdref.
/[no]include:dir Defines the directories in which the compiler searches
                        for INCLUDE files.
/[no]inline[:keyword]  Allow user-control over inlining.
                        Keyword is all, none, manual, size, speed.
/[no]intconstant       Use Compaq Fortran 77 semantics, rather than Compaq
                        Fortran 90, to determine kind of integer constants.
/integer_size:size     Specifies the default size of integer and logical
                        variables.
                        Size on INTEL is 16, 32.
                        Size on ALPHA is 16, 32, 64.
/[no]libdir:keyword Controls the library names that should be emitted into
                        the object file.
                        Keywords are all, none, [no]automatic, [no]user.
/libs[:keyword] Determines the default libraries to be linked against.
            Keyword is dll, qwin, qwins, static.
/[no]list[:filename]   Creates a listing file.
/[no]machine_code      Includes a machine-language representation of the
                        compiled code if a listing is generated.
/[no]map[:filename]    Specifies that a link map file should be generated.
/math_library:keyword  Specifies the math library routines to use.
                        Keyword on ALPHA is accurate, check, fast.
                        Keyword on INTEL is check, fast.
/[no]module[:path]     Specifies path where mod files should be placed and
                        first location to look for mod files.
/names:keyword Specifies how source code identifiers and external names
                        are interpreted.
                        Keyword is as_is, lowercase, uppercase.
/[no]object[:filename] Specifies the name of the object file.
/[no]optimize[:keyword]
                       Specifies the optimization level.
                        Keyword is 0, 1, 2, 3, 4, 5
/[no]pad_source Specifies that fixed form source records are padded out
                        to the statement field width with blanks.
/[no]pdbfile[:filename]
Specifies that any debug related information should be
                        generated to a program database file.
/[no]pipeline          Enables software pipelining optimization.
                        ALPHA only.
/real_size:size        Specifies the size of REAL and COMPLEX declarations,
                        constants, functions, and intrinsics.
                        Size is 32, 64.
/[no]recursive         Compiles all procedures for possible recursive
                        execution.
/[no]reentrancy:keyword
                       Specifies whether the threaded, reentrant run-time
                        support should be used.
                        Keyword is none, threaded.
/rounding_mode:keyword Specifies how to round results of calculations.
Keyword is chopped, dynamic, minus_infinity, nearest.
                        ALPHA only.
/[no]show:keyword      Includes information in a listing.
                        Keywords are [no]code, [no]include, [no]map.
/source:filename Specifies that the file indicated should be processed
                        as a Fortran source file.
/stand:keyword         Specifies level of conformance with ANSI standard to
                        check for.
                        Keyword is f90, f95, none.
/[no]static Causes all local variables to be statically allocated.
/[no]synchronous_exceptions
                       Associates an exception with the instruction that
                        causes it.
                        ALPHA only.
/[no]syntax_only       Checks syntax only.
/[no]threads Specifies whether or not multi-threaded libraries should
                        be linked against.
/[no]traceback Specifies whether the compiler generates PC correlation data used to display a symbolic traceback rather than
                        a hexidecimal traceback at runtime failure.
/[no]transform_loops   Specifies that the loop transformation specific
                        array optimizations be performed.
/tune:keyword          Selects processor-specific instruction tuning.
On ALPHA, keyword is generic, host, ev4, ev5, ev56, ev6
                        On Intel, keyword is generic, host, p5, p6
/unroll:count          Specifies how may times loops are unrolled.
/[no]vms Causes the run-time system to provide certain functions
                        like VAX FORTRAN.
/[no]warn:keyword      Specifies the level of warning messages issued.
                        Keywords are [no]alignments, [no]argument_checking,
                        [no]declarations, [no]errors, [no]fileopt,
                        [no]general, [no]stderrors, [no]truncated_source,
                        [no]uncalled, [no]uninitialized, [no]usage.
                        Keyword [no]granularity ALPHA only.
/nowarn                Suppresses all warning messages.
/winapp                Specifies building windows application and links
                        against required libraries.

Miscellaneous Options
/compile_only          Does not invoke the linker.
/extlnk:ext Specifies file extensions to be processed by the linker.
/fpp:"options"         Specifies options to be passed, as-is, to the
                        preprocessor.  Type the command "FPP /HELP" for
                        information on preprocessor options.
/help,/?               Displays information about the f90 command.
/keep                  Does not remove intermediate files.
/[no]link Precedes all linker options, which are passed, as-is, to the linker. If [no] is specified, does not invoke
                        the linker.
/[no]logo              Suppresses the copyright notice displayed when the
                        compiler starts.
/[no]watch:keyword     Determines the status information to be displayed.
                        Keywords are all, none, [no]cmd, [no]source.
/what Displays the version numbers of the compiler and command
                        driver and their file names.

Preprocessor Options
/comments Outputs C-style comments to the explicit output file.
/define:symbol         Defines symbol to the fpp preprocessor.
/extfpp:ext            Specifies file extensions to be preprocessed.
/include:dir           Defines the directories in which fpp searches for
                        #include files.
/preprocess_only       Does not output line control information.
/undefine:symbol       Removes any initial definition of symbol.

Many of the options supported by the Powerstation V4 compiler are supported
by the Compaq Visual Fortran compiler.
Specific f90 Driver Default Options
-nofpconstants -optimize:4 -altparam


_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to