- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Currently I an trying to build an index file for the project.
Progress! At least now I have rudimentatry build problems.
The directory structure is:
C:\\temp\\adventure\\adventure\\datafiles\\test\\build
The main source for the datais:
C ABUILD- BUILD DUMMY AINDX.DAT FILE FOR ADVENTURE
C
PROGRAM ABUILD
IMPLICIT INTEGER*2 (A-Z)
C
CALL SAVEGM(.FALSE.,I)
stop 'May the Schwartz be with you'
END
C
block data
IMPLICIT INTEGER*2 (A-Z)
COMMON /VERSN/ VMAJ,VMIN,VEDIT
DATA VMAJ/0/,VMIN/0/,VEDIT/0/
end
The eventual object is to create a file of about 63Kb (16 bit standards).
Temporarily this is my build command procedure:
c:\\"Program Files (x86)"\\intel\\composerxe-2011\\bin\\intel64\\ifort.exe /libpath:c:\\"Program Files (x86)"\\intel\\composerXE-2011\\compiler\\lib\\intel64\\ c:\\temp\\adventure\\adventure\\DataFiles\\test\\build\\Abuild.for
Already I have a couple of build problems. I don't think I have my enviroment variables
and build variables right: Above is A.cmd:
The indexed files for adventure have yet to build. Right now all of the activity is occurring in /build. I'm attempting to get A.cmd right. I don't think that libpath is the correct switch to point to the libraries but in this environment I'm not sure.
To be honest for this portion I'd like to do a compile and then a searate link to link abuild.obj with but I don't how to do that yet. The linker and her DLLs are there in /build.
Where do I find compiler errors such as ?
Fortcom: Severe: Invalid argument
Right now, Im recieving errors telling me "file is (86) and the compilation aborted for that reason.
Renee
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
"c:\Program Files (x86)"\intel\composerxe-2011\bin\ifortvars.bat ia32
With the environment set up, change to the directory where you have your program source; then, to compile your file all you have to do is
ifort /c abuild.for
The /c says "compile, don't try to link".
Notes: C:\temp is not a wise choice for a directory in which to place your source files. The normal convention is that it is a place for temporary files, and some utilities periodically scrub that directory and its subdirectories.
If you next write the needed subroutines in, say, subs.for, you then do
ifort /c subs.for
ifort abuild.obj sub.obj
OR
ifort abuild.obj subs.for
For such short command lines, issuing them directly is easier than putting the commands into a batch file and calling up the batch file from the command prompt.
Note that we let the compiler driver ("ifort") call the linker for us. You can call the linker directly but you have to know what Fortran runtime and what system libraries will be needed, perhaps a start-off object as the first scan-item, etc. There is no reason to contend with all that at this point.
Also note that we did not use full pathnames for the compiler and our source file(s). If you keep things simple and straightfoward, you can do every aspect of the program build in one working directory, and you will not need to contend with the issues of the following paragraphs.
Pathnames with embedded blanks are tricky for the beginner. The problem is that the command processor has to know how to split the command line to identify the command to fork and the arguments to pass to the forked command. Arguments are separated by spaces. An argument with blanks clash with that convention: is a specific blank a separator or is it just part of the argument string? Tha's where the quotes come in.
The next wrench-in-the-works is the colon, which is used by IFort to separate sub-options from the main option. As with the blank, there is the question: "is this colon a sub-option separator, or is it part of the argument?" It is because of this conflict that your c:"Program Files (x86)..." suboption for the /libpath option confused the compiler, since the colon is outside the quotes. The compiler driver stumbled when parsing the command line. When that happens, usually the specific error message printed out is incoherent babble. Looking it up in the Intel Fortran manuals is thus a waste of time.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
would set up the 64-bit build environment (both the Intel compiler and the Microsoft tools). If you have an error complaining about an x86 file, it means you have mixed the 32- and 64-bit compilation options.
In order for the 64-bit intel64 compiler to work, the Microsoft C++ X64 must have been installed. In VS2010, X64 components of C++ are included by default when you pick C++ support; in the earlier VS, you must select X64 under C++ yourself.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The "(86)" is just a piece of the incorrectly quoted lib-path-string. Even the X64 compiler happens to be installed under "c:\Program Files (x86)".
I verified this statement by typing her compiler command line with the incorrectly quoted /libpath suboption. I happen to have the compiler installed in the default location. And, Renee, please note that this thread should attest to the importance of quoting compiler error messages in full!
[bash]s:LANG>"c:Program Files (x86)"intelcomposerxe-2011binintel64ifort.exe /libpath:c:"Program Files (x86)"
intelcomposerXE-2011compilerlibintel64 c:tempadventureadventureDataFilestestbuildAbuild.for
Intel Visual Fortran Intel 64 Compiler XE for applications running on Intel 64, Version 12.0.1.070 Bu
ild 20110112
Copyright (C) 1985-2011 Intel Corporation. All rights reserved.
ifort: command line warning #10006: ignoring unknown option '/libpath:c:"Program'
ifort: command line warning #10161: unrecognized source type 'Files'; object file assumed
fortcom: Severe: No such file or directory
... file is '(x86)intelcomposerXE-2011compilerlibintel64 c:tempadventureadventureDataFilestestbuil
dAbuild.for'
compilation aborted for (x86)intelcomposerXE-2011compilerlibintel64 c:tempadventureadventureDataFile
stestbuildAbuild.for (code 1)
[/bash]
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Let me take care of a couple of things while I'm at it. This is a historical preservation of the first game that existed on computers. As such I want to make the most minimal changes possible. As you can see the game was originally done on a DEC machine. I used to be a VMS development engineer for DEC (Digital). I know the value of complete error messages BUT my developmebt machine has the new Explorer on it and this board will not read the new Explorer. Fortunately, I have a laptop that I can move to with the old Explorer on it, but the situation doesn't help getting full pictures of error messages over here. Secondly I do not even know the proceedure for getting compiler output onto this board. DEC's compiler was sold to Intel which is why I'm using it.
I wanted to thank you so much for the help. Does anyone know how use enviroment variables to shorten the command lines? DEC used to have logicals which are probably similar.
Renee
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I know. Actually I would call it an inconsistancy of MS.
Renee
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
By the way, I'll give Adventure to anyone who wants it if I am successful. In the seventies, whether or not you liked Adventure or not, was the measure of a "real programmer". Programmers love playing the game.
Renee
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
There are many ports of that game for current compilers. This one is for OS/X, and the sources given there compile fine on Windows.
Mac OS X and Colossal Cave Adventure
To read help text about setting environment variables (the equivalent of "logicals"), type "help set" at the command line.
To insert program source or output in a post here, use the syntax highlighter tool (yellow pencil icon) from the toolbar.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Bill,
My build is from the ms-dos version and I followed my own advice, and using two .FOR files that I was able to build an empty database of approximately 11kb. I learned much andgotten every thing down but the environment variables. I did as the group sugested and built the database making project with vs. Everything went well except where were the results? The IDE told me that the results were in
c:\users\renee\local\temporary Projects\BuildDB
BuildDB was the name of the project. I looked ans sure enough there it was.
By the way....Temp is a name that I selected years ago for builds. How do I control where VS puts the output?
Renee
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I wanted to thank you. I remember your name. You wereone of myheroes. I used F4P and then became interested in Bliss.
Today's good fortune has served as an encouragement and I've decided to press forward since Intel has supplied the licensing to me for a full cluster kit and give it to the world.
Reneone
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I wanted to thank you. I remember your name and you were one of my heroes and then I got interested in Bliss.
Todays good fortune, has provided the encouragement I need to press forward so I can release Adventure to the world and besides that Intel has suppled me with a full cluster composer kit to do it. Eventually I hope to give away a 32 and 64 bit version.
The world needs to know about Adventure and to play it.
Renee
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If I want.... do I have Intel's permisssion to give that copy away at no charge?
Renee
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Please write to me. My address is rmctwo at gmail.com.
Renee

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page