studio para pagina oficial mac gratis for descargar build compiler-errors osx-lion portaudio

build - para - vlc mac gratis



Construcción de Portaudio en OSX 10.7.5 con SDK10.6 o 10.7 falla (3)

Todavía tengo problemas para construir la biblioteca de Portaudio en mi sistema, que es OSX 10.7.5 con Xcode 4.3.2, tengo instaladas las herramientas de línea de comandos y tengo SDK10.6 y SDK10.7 bajo

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/

En breve describo (también para otros que se encuentran con el mismo problema) lo que he hecho hasta ahora (siguiendo diferentes soluciones que he encontrado en la web).

1) Descargué "Portaudio" / pa_stable_v19_20111121.tgz (última versión estable) desde:

www.portaudio.com/download.html

2) Leí las instrucciones para construir Portaudio aquí:

www.portaudio.com/docs/v19-doxydocs/compile_mac_coreaudio.html

e intenté compilar desde una ventana de Terminal con el comando sugerido:

./configure && make

Esto resultó (no tan sorprendentemente) en muchos errores que terminan en:

llvm-gcc-4.2: error al intentar ejecutar ''/usr/bin/../llvm-gcc-4.2/bin/powerpc-apple-darwin11-llvm-gcc-4.2'': execvp: No existe tal archivo o directorio lipo: puede ''t abrir archivo de entrada: /var/folders/1_/xkp08ky561jg02zjjrpsxg940000gn/T//ccPxCTrJ.out (Ningún archivo o directorio) hacer: * [src / hostapi / coreaudio / pa_mac_core.lo] Error 1

Esto sucede porque "ppc" ya no es compatible desde OSX 10.5. Además, la carpeta "Desarrollador" no existe en OSX 10.7 y todo lo que estaba en la carpeta Desarrollador se ha movido a

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/

3) Descargué un parche (mac_configure_patch.txt) para arreglar "configure" desde:

https://www.assembla.com/spaces/portaudio/tickets/216#/activity/ticket :

y lo copió al directorio de Portaudio y lo aplicó escribiendo en Terminal:

$ patch <mac_configure_patch.txt

Un mensaje de confirmación dijo:

parcheando archivo configure.in

Entonces todo parece estar bien. Pero todavía Portaudio está tratando de construir para "ppc".

4) Ahora configuro ARCHFLAGS, CFLAGS, LDFLAGS para construir solo para la arquitectura i386 de la siguiente manera (deshabilitando la compilación universal):

$ MACOSX_DEPLOYMENT_TARGET = "10.7" ARCHFLAGS = "- arch i386" CFLAGS = "- O2 -g -Wall -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk -arch i386 -mmacosx-version-min = 10.7 "LDFLAGS =" - isysroot / Aplicaciones / Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sd -arch i386 -mmacosx-version -min = 10.7 "./configure --disable-mac-universal

5) Además encontré que:

A): "#include AudioToolbox.h" en ".include / pa_mac_core.h" se debe DESCOMMENTAR

B): que "-wError" de "Makefile" (no Makefile.in) debería eliminarse.

atendiendo a: http://www.fluxforge.com/blog/building-portaudio-under-os-x-107-lion

6) Ahora intento construir (usando: "sudo make"), la compilación comienza pero falla con:

ld: framework not found CoreAudio

collect2: ld devolvió 1 estado de salida

make: * [lib / libportaudio.la] Error 1

7) Así que trato de apuntar al framework usando "-F / System / Library / Frameworks -framework CoreAudio"

lo que lleva al siguiente comando de Terminal:

$ MACOSX_DEPLOYMENT_TARGET = "10.7" ARCHFLAGS = "- arch i386" CFLAGS = "- O2 -g -Wall -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk -arch i386 -mmacosx-version-min = 10.7 "LDFLAGS =" - isysroot / Aplicaciones / Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sd -arch i386 -mmacosx-version -min = 10.7 -F / System / Library / Frameworks -framework CoreAudio "./configure --disable-mac-universal

que parece solucionar el problema del framework CoreAudio pero da como resultado otro error que dice:

ld: biblioteca no encontrada para -lSistema

collect2: ld devolvió 1 estado de salida

make: * [lib / libportaudio.la] Error 1

Ahora estoy estancado en este punto. ¿Alguien experimentó los mismos problemas al tratar de construir Portaudio en OSX 10.7 usando SDK10.6 o SDK10.7? ¿Alguien encontró una solución a cómo construir Portaudio desde la Terminal? ¡Estoy muy agradecido por cualquier pista! ¡Gracias por adelantado!


Prueba el último svn. Si eso no funciona desde el principio, es posible que tengas que ensuciar con algunas de las banderas.

por ejemplo, en configure.in:

  • cambiar -Werror a -Wall
  • agregue -Wo-deprecated (no debería necesitar esto, pero por las dudas)

entonces corre

./configure --disable-mac-universal

y hacer como de costumbre.


OK, finalmente resolví el problema. Espero que la solución ayude a otros también. Me olvidé de agregar también la ruta al framework CoreAudio a CFLAGS. Aquí está el comando final de configuración / compilación para construir portaudio en OSX 10.7.5 usando SDK10.7 para la arquitectura i386 y x86_64:

Abra una ventana de Terminal en el directorio de Portaudio y escriba:

MACOSX_DEPLOYMENT_TARGET = "10.7" ARCHFLAGS = "- arch i386" CFLAGS = "- O2 -g -Wall -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk - arch i386 -mmacosx-version-min = 10.7 -F / System / Library / Frameworks -framework CoreAudio "LDFLAGS =" - isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10. 7.sdk -arch i386 -mmacosx-version-min = 10.7 -F / System / Library / Frameworks -framework CoreAudio "./configure --disable-mac-universal

Si esto ha finalizado, debe editar Makefile y cambiar la mención de -Werror to- -Wall .

Entonces:

hacer

Voila. Ahí tienes tu "libportaudio.la" en el directorio portaudio / lib. Ahora puede escribir

sudo make install

(se te pedirá que confirmes con tu contraseña)

para poner la biblioteca en el directorio del sistema.

¡Finalmente puedes perder el tiempo con Portaudio! ¡Que te diviertas!


Intenté tus instrucciones en Mac OSX Mountain Lion (10.8), y estaba progresando mucho en la compilación, pero luego estaba fallando con:

In file included from ./test/patest_sine_channelmaps.c:53: ./include/pa_mac_core.h:100:1: error: unknown type name ''AudioDeviceID'' AudioDeviceID PaMacCore_GetStreamInputDevice( PaStream* s ); ^ ./include/pa_mac_core.h:109:1: error: unknown type name ''AudioDeviceID'' AudioDeviceID PaMacCore_GetStreamOutputDevice( PaStream* s ); ^ 2 errors generated. make: *** [bin/patest_sine_channelmaps] Error 1

Sin embargo, me di cuenta de que simplemente puedes usar Homebrew (apt-like packet manager para OSX) y hará el trabajo sucio como un hechizo. Encuentra binarios y encabezados en el directorio de instalación especificado :)

$ brew install portaudio Warning: It appears you have MacPorts or Fink installed. Software installed with other package managers causes known problems for Homebrew. If a formula fails to build, uninstall MacPorts/Fink and try again. ==> Downloading http://www.portaudio.com/archives/pa_stable_v19_20111121.tgz ######################################################################## 100.0% ==> Downloading patches ######################################################################## 100.0% ==> Patching patching file include/pa_mac_core.h ==> ./configure --prefix=/usr/local/Cellar/portaudio/19.20111121 --enable-mac-un ==> make install /usr/local/Cellar/portaudio/19.20111121: 8 files, 316K, built in 20 seconds