Administrative functions > Will this job run on my computer? > Temporary space required during a run (UNIX)
 
Temporary space required during a run (UNIX)
The C compiler which converts the files that the Quantum compiler creates into an executable program needs space in which to create temporary files. It creates these files in the system’s temporary directory, /tmp.
Often, although user file systems are large, the /tmp directory may be on a smaller partition so there is the possibility that the size of the temporary files will exceed the amount of space in /tmp. (This can happen even on small jobs if your job is running when large data files are being sorted or there are other programs running that create large files in /tmp.)
To solve this problem, take the following steps:
1 Run quantumx -c runfile (to keep the temporary files).
2 Run the load phase by hand, naming a directory other than /tmp for the C compiler to use for its temporary files. This means that the standard compilation commands need to change from:
cc -c editQ.c
For example, to:
cc -c -temp=dirname editQ.c
If you put the following lines in a file called cctemp in your project directory, you can run the compilation by using the UNIX source command. This example places the temporary files in the project directory:
cc -c -temp=. editQ.c
cc -c -temp=. tabsQ.c
cc -c -temp=. tabsQ1.c
cc -c -temp=. axesQ.c
cc -c -temp=. varset.c
cc -temp=. editQ.o tabsQ.o tabsQ1.o axesQ.o varset.o \
/usr/qtime/qt/v6.0/lib/libzz1.a
If you are using a version of Quantum other than v6.0, type the version number in place of v6.0.
To run the file, type:
source cctemp
3 If the manual compilation works, you can then use Quantum’s -r option to read the data, as in:
quantum -r datafile
Note If you use this method, you must ensure that each step has worked successfully before going on to the next step.
This method works for all users, but if your system administrator is available, you could ask them to make a symbolic link between the /tmp directory and another directory. You should then be able to rerun your job in the usual way.
See also
Will this job run on my computer?