FLAC/export.h: export symbols
FLAC C API

## Macros

#define | FLAC_API
#define | FLAC_API_VERSION_CURRENT 14
#define | FLAC_API_VERSION_REVISION 0
#define | FLAC_API_VERSION_AGE 0

## Variables

int | FLAC_API_SUPPORTS_OGG_FLAC

## Detailed Description

This module contains #defines and symbols for exporting function calls, and providing version information and compiled-in features.

If you are compiling for Windows (with Visual Studio or MinGW for example) and will link to the static library (libFLAC++.lib) you should define FLAC__NO_DLL in your project to make sure the symbols are exported properly.

## Macro Definition Documentation

## FLAC_API

#define FLAC_API

This #define is used internally in libFLAC and its headers to make sure the correct symbols are exported when working with shared libraries. On Windows, this #define is set to __declspec(dllexport) when compiling libFLAC into a library and to __declspec(dllimport) when the headers are used to link to that DLL. On non-Windows systems it is used to set symbol visibility.

Because of this, the define FLAC__NO_DLL must be defined when linking to libFLAC statically or linking will fail.

## FLAC_API_VERSION_CURRENT

#define FLAC_API_VERSION_CURRENT 14

These #defines will mirror the libtool-based library version number, see http://www.gnu.org/software/libtool/manual/libtool.html#Libtool-versioning

## FLAC_API_VERSION_REVISION

#define FLAC_API_VERSION_REVISION 0

see above

## FLAC_API_VERSION_AGE

#define FLAC_API_VERSION_AGE 0

see above

## Variable Documentation

## FLAC_API_SUPPORTS_OGG_FLAC

int FLAC_API_SUPPORTS_OGG_FLAC

extern

`1` if the library has been compiled with support for Ogg FLAC, else `0`.

Copyright (c) 2000-2009 Josh Coalson Copyright (c) 2011-2025 Xiph.Org Foundation