Figure 8-1 Creating an ESQL/C Executable Program from a Non-ASCII Source Program
The esql command can automatically call the ESQL/C filter, esqlmf, to process non-ASCII characters. When you set the following environment variables, you tell esql how to invoke esqlmf:
1
0
Converts all non-ASCII characters, in literal strings and comments, to octal constants.
Converts non-ASCII characters in literal strings, but not comments, to octal constants.
2
Converts non-ASCII characters in literal strings to octal constants to ensure that all the bytes in the non-ASCII characters have the eighth bit set.
3
Does not invoke esqlmf.
1. Converts the embedded-language statements (source.ec) to C-language source code (source.c) with the ESQL/C preprocessor
2. Filters non-ASCII characters in the preprocessed file (source.c) with the ESQL/C filter, esqlmf (if the ESQLMF environment variable is 1)
3. Compiles the filtered C source file (source.c) with the C compiler to create an object file (source.o)
4. Links the object file with the ESQL/C libraries and your own libraries to create an executable program
If you do not set CC8BITLEVEL, esql converts non-ASCII characters in literal strings and comments. You can modify the value of CC8BITLEVEL to reflect the capabilities of your C compiler. For more information on CC8BITLEVEL, see page 2-5.