Platform: All Problem Details: OS Version: any Product Version: any Date: 22-Sep-97 Q. Where can I find IMSL documentation. A. The documentation for the IMSL libraries (7 volume set) may be purchased separately, or you can find it on line at: http://www.vni.com/products/imsl/alphabetized_functions.html |
Platform: Macintosh Problem Details: OS Version: Any Product Version: Fortran77 Date: 24-Sep-97 Q. Does FORTRAN 77 support the -r8 flag? A. Use the -N113 compiler option. The -N2 option forces all intrinsic functions to be performed in DOUBLE PRECISION. |
Platform: Macintosh Problem Details: OS Version: any Product Version: any Date: 02-Oct-97 Q. I have a file which "uses" a precompiled by module containing a function used by the main file. When I try to compile the main it says there is an unresolved reference. A. Your module contains executable code. Precompiling it created both a module file and an object file. Present the object file to the linker and the reference will be resolved. If you're compiling from the command line, simply add the object file on the compiler invocation line. |
Platform: Macintosh Problem Details: OS Version: any Product Version: any Date: 22-Oct-97 Q. Apparently the compiler considers the variable NORMX as integer even though I explicitly typed it as: real normx Please fix the compilers and send me the patch. A. There is no need to provide a patch for the compiler. The FORTRAN 77 compiler is case sensitive. You can use either of the two following options to disable case sensitivity: -f fold to lower case (User Guide pp. 5-17, 6-1, I-1) -N109 fold to upper case (User Guide pp. 5-17, I-2) Caution: The use of either option will make it impossible to communicate directly with the Macintosh API. |
Platform: Macintosh Problem Details: OS Version: any Product Version: any Date: 03-Dec-97 Q. How do I allocate memory to a FORTRAN program? A. How you specify the size of the memory partition of a FORTRAN program depends on whether the program is designed to run as an MPW tool or a Macintosh desktop application. If it is to run within MPW as a tool, then the only memory available to it is that allocated to MPW itself. In other words, the program and its memory requirement must fit entirely within MPW. Use Get Info on the MPW Shell icon to increase the size of MPW parition. If the program is designed as a stand-alone Macintosh desktop application, then its memory allocation is specified by using Get Info on the program's icon. |
Platform: Macintosh Problem Details: OS Version: any Product Version: any Date: 05-Feb-98 Q. I am trying to compile a program using MPW and when I run the compiler or linker and I receive this message: "not enough room in heap zone (OS error -108)" I have plenty of memory on my system, why doesn't MPW use it? A. MPW must have all of the memory it will use preallocated to it. The default allocation is 16 MB. To increase it (and we recommend 32 MB), first exit MPW. Then, open the MPW folder and click the mouse button once on the MPW Shell icon. (You want to select it, but not open it). Choose "Get Info" from the "File" menu which will open a dialog box, allowing you to change MPW's memory allocation. |
Platform: All Problem Details: OS Version: Any Product Version: Pro Fortran 6.0 and later Date: 04-Sep-98 Q. How can I modify the default behavior of the Absoft runtime library? A. Starting with Absoft Pro Fortran 6.0 and Absoft Fortran SDK 4.5, the runtime library checks for an environment variable named ABSOFT_RT_FLAGS on entry to the first I/O statement in a program. The following switches can be specified using this variable: -defaultcarriage: Causes the units preconnected to standard output to interperet carriage control characters as if they had been connected with ACTION='PRINT'. -fileprompt: Causes the library to prompt the user for a filename when it implicitly opens a file as the result of I/O to an unconnected unit number. By default, the library creates a filename based on the unit number. -vaxnames: Causes the library to use 'vax style' names (FORnnn.DAT) when creating a filename as the result of I/O to an unconnected unit number. -unixnames: Causes the library to use 'unix style' names (fort.nnn) when creating a filename as the result of I/O to an unconnected unit number. -bigendian: Causes the library to interpret all unformatted files using big endian byte ordering. -littleendian: Causes the library to interpret all unformatted files using little endian byte ordering. -noleadzero: Causes the library to surpress the printing of leading zeroes when processing an Fw.d edit descriptor. This only affects the limited number of cases where the ANSI standard makes printing of a leading zero implementation defined. -reclen32: Causes the library to interpret the value specified for RECL= in an OPEN statement as 32-bit words instead of bytes. Note: the leading minus sign is required for each switch and multiple switches must be separated by one or more spaces. |
Platform: Macintosh Problem Details: OS Version: any Product Version: any Date: 23-Dec-1998 Q. After upgrading my MacOS I have noticed that the F90 compiler can not report compile-time errors. Instead I get a message like this: "cft90 INTERNAL: Cannot retrieve message 3 from the message system" Something must be set-up improperly. Any advice? A. There are two files which contain error messages: tmod and cf90. These files are maintained in {SystemFolder}Preferences:Absoft so if you replace your Mac OS these files will not exist. If you no longer have these files, you must reinstall your Absoft product in order for your f90 compiler to display error messages. |
Platform: Macintosh Problem Details: OS Version: any Product Version: Pro Fortran v6.0 Date: 06-Jan-1999 Q. I am trying to use LAPACK that is part of Pro FORTRAN 6.0. I tried using f77_lapack_scdz.o and received link errors. In this folder are numerous object files and I am not sure which I should link against. Is there any way of knowing which to use? A. The f77_lapack_scdz.o and f90_lapack_scdz.o files are object files produced when compiling the module files found in LaPackMods. The files that should be used in this case are the lapack77_* files. As a guide to what the files are here is a breakdown of the files, and how you know to link against them. You first have: blas_* lapack77_* lapack90_* These correspond to which type you are using: Blas , lapack for f77, or lapack for f90. There are then five types, aux, s, c, d, z. Here is what each means: aux: some auxiliary files for that type s: single precision d: double precision c: single complex z: double complex The f90 libraries are simply glue to the f77 code. If you are using f90 first link against the all inclusive lapack90_scdz library. Then you will need to link against the f77 library that you need. For example, if you are using a double complex subroutine, you will have to link against the lapack77_z library. The reason that the f77 libraries are not all inclusive is that the resulting library would be large. Since the f90 libraries are just glue code, they are much smaller with a smaller resulting library. |
Platform: Macintosh Problem Details: OS Version: any Product Version: Pro Fortran v6.0 Date: 14-Jan-1999 Q. When I double-click on a source file, rather than launching MPW, I get a Macintosh O/S error message claiming: "The application program MRWE.o could not be opened, because it might be damaged or not work on this type of computer" or: "This version of MPW is not compatible with the current version of system software. Please Upgrade to the latest MPW". Opening the MPW Shell seems to work fine. A. Certain combinations of application extensions and virus scanners prevent the Absoft linker from setting the final type and creator of MRWE applications leaving an object file icon rather than an application. The "Problem with application type" FAQ describes this and the work-around. In Pro Fortran V6.0,we applied the work-around to the release file set. The work-around involves changing the type of MRWE.o to APPL (application) from XCOF (object file). It seems that the Macintosh assumes that MRWE.o and not the MPW shell is the application that should be launched when you double-click on a document. You need to change the creator type of MRWE.o to 'MRWE' to solve the problem: 1. Set your directory to "HD:MPW:Libraries:AbsoftLibraries" 2. In the MPW shell, execute the command "SetFile -c MRWE MRWE.o 3. Exit MPW and rebuild your desktop. |
Platform: All Problem Details: OS Version: any Product Version: any Date: 14-Jan-1999 Q. Does Absoft Fortran pass the lengths of strings like most Unix Fortran compilers I've used? A. Yes, string lengths are passed as extra arguments (by value) at the end of the formal argument list: C:\Absoft60>type main.c #include <string.h> void Fcode(char *, int, double *, int); int main() { char string[13] = {"hello, world"}; int i = 1; double d = 2.0; Fcode(string, i, &d, strlen(string)); return 0; } C:\Absoft60>acc -c -A main.c Absoft C/C++ Compiler 1.3, Copyright (c) 1994-1997, Absoft Corp. C:\Absoft60>type fcode.f subroutine Fcode(string, i, d) character*(*) string integer i value i double precision d print *, string, i, d, len(string) end C:\Absoft60>f77 -o main.exe main.obj fcode.f FORTRAN 77 Compiler 4.5, Copyright (c) 1987 - 1998, Absoft Corp. C:\Absoft60>main hello, world 1 2.00000000000000 12 C:\Absoft60> |
Platform: Macintosh Problem Details: OS Version: any Product Version: Pro Fortran v6.0 Date: 19-Jan-1999 Q. How much disk space does Pro Fortran 6.0 require? A. Installation requires 180 MB. After installation, you can free up approximately 120 MB by deleting the 'F90Includes' folder if you will not be needing Fortran 90 module and interface block definitions for the Macintosh tool box. (The 'F90Includes' folder is inside the 'Interfaces' folder of the 'MPW' folder.) Pro Fortran 6.0 and MPW disk usage summary: MPW folder: AbsoftTools 8.3 MB Examples 6.2 MB Interfaces 144.6 MB Libraries 7.0 MB Tools 6.6 MB Interfaces folder: ACCIncludes 1.8 MB CIncludes 13.5 MB F90Includes 118.9 MB FIncludes 7.9 MB |
Platform: Macintosh Problem Details: OS Version: any Product Version: Pro Fortran v6.0 Date: 01-Feb-1999 Q. I tried to compile the SuperPlot-Lite examples, but the include file and library appears to be missing. A. They were accidently left off the CD-ROM. You can download them from here: http://www.absoft.com/download/os9mac6.0downloads.html |
Platform: Macintosh Problem Details: OS Version: any Product Version: any Date: 03-Feb-1999 Q. Is there a way to read an ASCII tab character, CHAR(9), from a file? A. In Pro Fortran 5.0, tabs read from formatted files are expanded modulo 8. In Pro Fortran 6.0 and later tabs read from formatted files are expanded modulo TAB where TAB is an MPW environment variable. If TAB is not set, tabs are expanded modulo 8. If TAB is set to 0, the tab is passed unmolested to the application. There is no way in either version to affect the expansion of tabs in an MRWE application unless you are using version 6.2 or later. |
Platform: Macintosh Problem Details: OS Version: any Product Version: Pro Fortran v6.0 Date: 15-Feb-1999 Q. If I use "Create BuildCommands..." from the Tools menu of the MPW Shell, to create a makefile for building a program on the Power Macintosh, any '.o' files I add using the "Library File(s)..." button do not appear in my makefile. What am I doing wrong? A. Nothing, the portion of the script for handling Power Macintosh object files is incorrect. Replace line 277 of the file "AbsoftTools:ACM" with the following, where the special Macintosh Character, "greater than or equal to", (or ASCII character 179), which is created by holding the down the option key while pressing the '>' key, is represented here by a '@' symbol. Set extra_ppc {extra_ppc} "`files -f {extra_objects} -t 'AAF '`" @Dev:Null Optionally, you could download a copy of the ACM file which already contains this modification from the Absoft ftp site. |
Platform: Macintosh Problem Details: OS Version: any Product Version: Pro Fortran v6.0 Date: 08-Mar-1999 Q. How do I turn off text colorization in MPW? A. Edit the file "MPW:Startup Items:UserStartup*Absoft" and insert the following line anywhere in the file: Set -e AllowColorizing 0 Save your changes and restart MPW. |
Platform: Macintosh Problem Details: OS Version: any Product Version: Pro Fortran v6.0 Date: 21-Apr-1999 Q. When compiling a program that uses the MIG graphics library, either by checking the "Uses graphics" box in the Compiler Commando interface or by adding the library directly to a build or command line, I get following error: # link error: undefined symbol - .ldtox80 # first ref in - HD:MPW:Libraries:AbsoftLibraries:mig.o A. Just before Pro Fortran was released, the MIG library was enhanced and updated by the provider. As a result, it needs one additional library when it is linked to your application. This is the Apple library: "{SharedLibraries}"MathLib Add this library to your command line or makefile. If you are using the Compiler Commando interface, use the "Library File(s)..." button and then navigate to ":MPW:Libraries:SharedLibraries". |
Platform: Macintosh Problem Details: OS Version: any Product Version: ACC v1.3 Date: 07-May-99 Q. (double) LONG_MIN returns 2147483648.000000 and not -2147483648.000000 as it should. Is there a fix for this? A. This will be fixed in the next version. In the meantime, open the file "limits.h" in the C include folder and change the definition of LONG_MIN as follows: /*#define LONG_MIN (-2147483648L)*/ #define LONG_MIN (-2147483647L - 1L) |
Platform: Macintosh Problem Details: OS Version: any Product Version: any Date: 01-Jun-1999 Q. How do I use the Macintosh Toolbox API? A. Using the Macintosh Toolbox API is beyond the scope of Absoft technical support. For more information on the Macintosh Toolbox API see Inside Macintosh - Macintosh Toolbox Essentials by Apple Computer, Inc. http://www.apple.com/developer/ |
Platform: Macintosh Problem Details: OS Version: Any Product Version: Any Date: 16-Jul-1999 Q. I am trying to write a large array as one record and when using the -N3 compiler option I get this run time error: ? FORTRAN Runtime Error: ? Buffer allocation failed ? WRITE(UNIT=3,... A. The -N3 option instructs the compiler to read/write unformatted sequential access files with record length information embedded in the record. This places a 32-bit integer at the beginning and the end of each record which allows the runtime library to skip and backspace these records. Without the length information that would be impossible. However, your write statements try to write this entire array as one record. With the -N3 option we have to allocate enough memory in one contiguous chunk to create this record so that the length information can be inserted at the beginning and the end. The allocation of this buffer is what failed. When the -N3 option is not specified, I/O transfers are performed using much smaller (4096 byte) buffers since the data is pure binary with no record length information. If you receive this error on the Macintosh, then increase the memory application size. |
Platform: Macintosh Problem Details: OS Version: any Product Version: any Date: 22-Jul-1999 Q. When I make changes to my makefile such as new compiler options, my application does not rebuild unless I delete the old object files manually. A. Make the makefile a dependency of your target by deleting the "#" character in line four in the makefile. |
Platform: Macintosh Problem Details: OS Version: Mac Product Version: any Date: 05-Aug-1999 Q. I try to open the MPW shell and I get these messages: Command project menu was not found Execution of Startup terminated Or, I do a set command from the MPW Worksheet and I get the message: ### MPW Shell- 's must occur in pairs. A. Some probable causes for this behavior is caused by including spaces, apostrophes or dashes in the name of your hard drive or path names and trying to work in MPW. Instead of a dash, use an underscore. For example: HD_A |
Platform: Macintosh Problem Details: OS Version: OS-9 Product Version: any Date: 20-Oct-1999 Q. I just upgraded to Mac OS version 9 and when I exit the MPW shell I get this error message: "The application "MPW Shell has unexpectedly quit, because an update to this software is required for compatibility with the improved Mac OS file system. You should save your work in other open applications and restart the computer." A. The Shell supplied with MPW V3.4.3 and V3.4.4 is not compatible with the StdClib built into Mac OS-9. For more information, please refer to this Apple Computer web page: http://developer.apple.com/macos/macos9.html The MPW Shell version 3.5 is required for Mac OS-9. You can download it from this Apple FTP site: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/MPW/ And download the file: MPW_Shell.sit.hqx And put the new MPW shell in the MPW folder that is installed with Absoft Pro Fortran. You should also update the StdClib shared library supplied in the MPW:Libraries:SharedLibraries folder. Go to: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/Interfaces&Libraries/ And download the files: RuntimeLibraries.sit.hqx Libraries.sit.hqx In RuntimeLibraries, in the folder Power Macintosh Additions, Mac OS 7.6 or later, you will find the StdClib that should go into: MPW:Libraries:SharedLibraries And in Libraries, PPCLibraries you will find the files: StdCRuntime.o PPCStdClib.o Put them in MPW:Libraries:PPCLibraries You must also increase the MPW partition size and the stack. You must also increase the MPW partition size and the stack. The partition should be at least 16 MB and preferably 32 MB. Use Get Info on the MPW Shell icon to set it. Use the MPW Shell command SetShellSize to set the stack size: SetShellSize -s 4096k |
Platform: All Problem Details: OS Version: Any Product Version: Any Date: 17-Dec-1999 Q. I get the error message: "adjustable array is not a dummy argument" A. The most common cause of this is: subroutine some_name(a,b,n) real A(N), B(N) The FORTRAN 77 compiler is case sensitive by default. The easiest way to solve this type of problem is use a case folding option: -f or -N109. |
Platform: Macintosh Problem Details: OS Version: Any Product Version: Any Date: 20-Dec-1999 Q. I have a problem printing from the MPW editor to my EPSON printers. My new Epson connected to my Mac won't print any MPW shell documents like program listings, active window files, etc. The message it sends is "essential print resource missing" or the number of copies to be printed appears to be a random number of both signs. When it pops up as a negative number only one copy is printed. Normally it comes up as thousands of copies and the printing must be forced to stop. The MPW shell works fine with other printers like Laser Writers and HP printers. A. EPSON printers need the print dialog box in order to control the number of copies printed. Type this command in the MPW worksheet and hit enter: Set PrintOptions "-h -dialog" index |
Platform: Macintosh Problem Details: OS Version: any Product Version: ProFortran 6.0 Date: 04-Feb-2000 Q. I'm trying to use the -N9 option (Frequent Command-Period checks) with my C program, but it doesn't seem to work. A. For C programs, it is necessary to call the "mrwe_install_timer()" at the beginning of your main function. For example: int main() { void mrwe_install_timer(); mrwe_install_timer(); Note: If your are using ProFortran 6.0 or earlier, you must also specify this option: -N103, which can only be done in a makefile or from the command line. |
Platform: Macintosh Problem Details: OS Version: Any Product Version: Pro Fortran v6.0 Date: 16-Jul-1999 Q. I can't get the VMS (or UNIX) libraries to link. A. The libraries contain three entry points for each function. One in all upper case, one in all upper case with a trailing underscore and one in all lower case with a trailing underscore: DATE DATE_ date_ Be sure that your spelling matches one of these. use the fold to upper case compiler option (-N109) to simplify using them with the Fortran 90 compiler as well as the FORTRAN 77 compiler. To specify the library simply add it as source file on the compiler invocation line (it is a source file to the linker). They are in "MPW:Libraries:AbsoftLibraries" as "vmslib.o" and "unixlib.o". You can use the shell variable "{AbsoftLibraries}" to specify the path from the MPW shell. For example: test.f: character*40 argument n = IARGC() do i=1,n call GETARG(i,argument) print *,trim(argument) end do end f77 -tool test.f {AbsoftLibraries}unixlib.o |
Platform: Macintosh Problem Details: OS Version: Any Product Version: Any Date: 25-Aug-00 Q. My program compiles fine, but every time I re-compile it I must increase the memory to the application to run it. Is there any way to automatically set the memory for my application? A. Create a makefile and add this line to the end of the # Linkage rule section: setprefs -sizemin 1000 -sizepref 1000 "{TargetName}" This will set the memory to 1000 K of memory every time you run your makefile. |
Platform: All Problem Details: OS Version: Any Product Version: Any Date: 22-Sep-00 Q. Is there an F90 compiler option that will force the compiler to consider the byte ordering of all unformatted files to either big or little endian? A. Use the F90 open statement specifier: convert ={"big_endian"|"little_endian"} For example: Open(10,file="filename",form="unformatted",convert="big_endian") Or, use the ABSOFT_RT_FLAGS as described in the technical FAQ on using the ABSOFT_RT_FLAGS environment variable which can be found here: mac60tfaq.html#anchor0058 |
Platform: Macintosh Problem Details: OS Version: any Product Version: any Date: 06-Oct-00 Q. I'm having problems using the IMSL functions. The linker reports unresolved references for any function I try to use. A. You must include the IMSL library: Windows: imsl.lib Macintosh: "{AbsoftLibraries}"imsl.lib Linux: libimsl.a as an argument to the linker. On Windows and Macintosh, the libraries have been compiled with the fold to lower case option (-f) enabled. On Linux, they have been compiled with the fold to upper case option (-N109) enabled. It will be necessary either to: a) use a compiler case folding option b) spell the library names in the correct case c) use a linker alias file (not available on Linux) index |