---
name: "Tcl_PutEnv"
section: "3"
platform: "linux"
package: "tcl"
version: "8.6.16-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/Tcl_PutEnv"
---

# Tcl\_PutEnv(3)

procedures to manipulate the environment

```

```

## NAME

Tcl\_PutEnv - procedures to manipulate the environment

## SYNOPSIS

```
#include <tcl.h>

int
Tcl_PutEnv(assignment)
```

## ARGUMENTS

- const char *\*assignment* (in)

  Info about environment variable in the format “*NAME***=***value*”. The *assignment* argument is in the system encoding.

  ```

  ```

## DESCRIPTION

**Tcl\_PutEnv** sets an environment variable. The information is passed in a single string of the form “*NAME***=***value*”. This procedure is intended to be a stand-in for the UNIX **putenv** system call. All Tcl-based applications using **putenv** should redefine it to **Tcl\_PutEnv** so that they will interface properly to the Tcl runtime.

## SEE ALSO

[env(n)](/env/n.md)

## KEYWORDS

environment, variable
