---
name: "tickit_build"
section: "3"
platform: "linux"
package: "libtickit-dev"
version: "0.4.3-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/tickit_build"
---

# tickit\_build(3)

create a new toplevel Tickit instance with arguments

## NAME

tickit\_build - create a new toplevel Tickit instance with arguments

## SYNOPSIS

```
#include <tickit.h>

struct TickitBuilder {
  TickitTerm *tt;
  struct TickitTermBuilder term_builder;
  ...
};

Tickit *tickit_build(const struct TickitBuilder *builder);
```

Link with *-ltickit*.

## DESCRIPTION

**tickit\_build**() creates a new toplevel **Tickit** instance initialised from the various parameters given in the *builder* struct. Note that the above definition for the struct is incomplete; the actual struct definition contains more fields than shown as some are for internal purposes. User code should only attempt to interact with those fields documented here.

If the *tt* field is set, it should contain a **TickitTerm** instance. If left blank, then one will be constructed by passing the nested *term\_builder* structure to [**tickit\_term\_build**(3)](/tickit_term_build/3.md).

## RETURN VALUE

If successful, **tickit\_build**() returns a pointer to the new instance. On failure, **NULL** is returned with *errno* set to indicate the failure.

## SEE ALSO

[**tickit**(7)](/tickit/7.md)
