lib

A lib declaration groups C functions and types that belong to a library.

@[Link("pcre")]
lib LibPCRE
end

Although not enforced by the compiler, a lib's name usually starts with Lib.

Attributes are used to pass flags to the linker to find external libraries:

  • @[Link("pcre")] will pass -lpcre to the linker, but the compiler will first try to use pkg-config.
  • @[Link(ldflags: "...")] will pass those flags directly to the linker, without modification. For example: @[Link(ldflags: "-lpcre")]. A common technique is to use backticks to execute commands: @[Link(ldflags: "`pkg-config libpcre --libs`")].
  • @[Link(framework: "Cocoa")] will pass -framework Cocoa to the linker (only useful in Mac OS X).

Attributes can be omitted if the library is implicitly linked, as in the case of libc.

results matching ""

    No results matching ""