---
name: "mescc"
section: "1"
platform: "linux"
package: "mes"
version: "0.24.2-1"
release: "Debian 12 (Bookworm)"
platforms: ["linux"]
url: "https://new.carta.tech/mescc"
---

# mescc(1)

C99 compiler in Scheme for bootstrapping the GNU system

## NAME

mescc - C99 compiler in Scheme for bootstrapping the GNU system

## SYNOPSIS

**mescc** \[*OPTION*\]... *FILE*...

## DESCRIPTION

C99 compiler in Scheme for bootstrapping the GNU system.

## OPTIONS

- **--align**=*SYMBOL*

  align SYMBOL {functions,globals,none} \[functions\]

- **--arch**=*ARCH*

  compile for ARCH \[x86\_64\]

- **--kernel**=*ARCH*

  compile for KERNEL \[linux\]

- **-dumpmachine**

  display the compiler's target machine

- **--base-address**=*ADDRESS*

  use BaseAddress ADDRESS \[0x1000000\]

- **--numbered-arch**

  mescc-tools use numbered arch

- **-D** DEFINE\[=VALUE\]

  define DEFINE \[VALUE=1\]

- **-E**

  preprocess only; do not compile, assemble or link

- **-g**

  add debug info (call stack in GDB)

- **-h**, **--help**

  display this help and exit

- **-I** DIR

  append DIR to include path

- **-L** DIR

  append DIR to library path

- **-l** LIBNAME

  link with LIBNAME

- **-m** BITS

  compile for BITS bits \[32\]

- **-nodefaultlibs**

  do not use libc.o nor libmescc.a when linking

- **-nostartfiles**

  do not use crt1.o when linking

- **-nostdlib**

  do not use crt1.o or libc.o or libmescc.a when linking

- **-o** FILE

  write output to FILE

- **-O** LEVEL

  use optimizing LEVEL

- **-S**

  preprocess and compile only; do not assemble or link

- **--std**=*STANDARD*

  assume that the input sources are for STANDARD

- **-V**,--version

  display version and exit

- **-w**,--write=TYPE

  dump Nyacc AST using TYPE {pretty-print,write}

- **-x** LANGUAGE

  specify LANGUAGE of the following input files

Ignored for GCC compatibility

**-fno-builtin**

**-fno-stack-protector**

**-no-pie**

**-nostdinc**

**-static**

Environment variables:

- MES=BINARY

  run on mes-executable BINARY {mes,guile}

- MES\_DEBUG=LEVEL

  show debug output with verbosity LEVEL {0..5}

- NYACC\_TRACE=1

  show Nyacc progress

## REPORTING BUGS

Report bugs to: bug-mes@gnu.org\
 GNU Mes home page: \<http://gnu.org/software/mes/\>\
 General help using GNU software: \<http://gnu.org/gethelp/\>

## SEE ALSO

The full documentation for **mescc** is maintained as a Texinfo manual.  If the **info** and **mescc** programs are properly installed at your site, the command

-

  **info mescc**

should give you access to the complete manual.
