---
name: "gp2c"
section: "1"
platform: "linux"
package: "pari-gp2c"
version: "0.0.14-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/gp2c"
---

# gp2c(1)

The GP to C compiler

## NAME

GP2C - The GP to C compiler

## DESCRIPTION

gp2c \[-ghfltvydWSTGV\] \[-i N\] \[-o \<file\>\] \[-p \<prefix\>\] \[file.gp\]

gp2c is a program that translate GP code to C code that use the libpari library. It tries to generate code looking like the PARI source code.

### user option:

**-o** \<file\> : Place output in file \<file\>.

**-g** : Generate automatic garbage collection code.

**-iN**: Set indentation level to N spaces (default 2).

**-W** : Output warning about types and global variables usage.

**-C** : Generate range checking code.

**-L** : Generate #line directive for better C compiler messages.

**-p** \<prefix\>: Prefix user-defined symbol by \<prefix\> to avoid conflict.

**-s** \<suffix\>: Add suffix \<suffix\> to GP install names of functions.

**-S**: Assume strict declarations for functions.

### query options:

**-h** : This help.

**-f** : Dump information about functions to stderr.

**-l** : Output the list of functions known to the compiler.

**-t** : Output the table of types known to the compiler.

**-v** : Output version information and exit.

### debugging options:

**-d** : Increase debugging level.

**-y** : Switch parser to debug mode.

**-T** : Output syntactic tree in treetool format.

**-TT** : Output syntactic tree in VCG/GRL format.

**-G** : Generate GP code in place of C code. Don't smile.

**-V** : Do not clean up variables.

file.gp: file to be processed, default to stdin. The generated C code is output to stdout unless option **-o** is used.

See the script *gp2c-run* for an automated compilation process.

## COPYING

Copyright 2000-2018 The PARI Group

GP2C is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions.  There is absolutely no warranty for GP2C.

## AUTHOR

Bill Allombert \<Bill.Allombert@math.u-bordeaux.fr\>

## SEE ALSO

*[gp2c-run(1)](/gp2c-run/1.md),* *[gp2c-dbg(1)](/gp2c-dbg/1.md),* *[gp(1)](/gp/1.md),* *[gcc(1)](/gcc/1.md)*
