gcc core-audio macos-carbon

Vinculación contra frameworks de Apple con gcc



core-audio macos-carbon (1)

He creado algunas funciones de contenedor que encapsulan el trabajo con CoreAudio, y el objetivo es crear una biblioteca de C que pueda usar con algunas herramientas de C ++ de la línea de comandos. Hasta ahora las cosas están funcionando bien. Tomé un proyecto de muestra, lo modifiqué, y se compila y ejecuta en XCode. Me gustaría omitir XCode por completo y construir la biblioteca con gcc y un Makefile.

¿Cómo puedo enlazar contra un Apple Framework? ¿Los Frameworks son bibliotecas compartidas que podría incluir en las opciones -l y -L en gcc?


Aquí hay un ejemplo:

gcc -framework CoreServices -o test test.c

De la página man de gcc de Apple (i686-apple-darwin10-gcc-4.2.1):

In addition to the options listed below, Apple''s GCC also accepts and passes nearly all of the options defined by the linker ld and by the library tool libtool. Common options include -framework, -dynamic, -bundle, -flat_namespace, and so forth. See the ld and libtool man pages for further details.

Y a partir de la página man de ld:

-framework name[,suffix] This option tells the linker to search for `name.frame- work/name'' the framework search path. If the optional suffix is specified the framework is first searched for the name with the suffix and then without (e.g. look for `name.frame- work/name_suffix'' first, if not there try `name.frame- work/name'').