Necesito usar GMP
en un programa de iphone en el que estoy trabajando, pero realmente no sé por dónde empezar. Sé que tengo que crear una versión para el dispositivo y una versión para el simulador, pero eso es todo lo que sé. He intentado buscar pero no he podido encontrar mucho.Crear GMP para iOS
¿Alguien aquí ha compilado exitosamente GMP
para iphone
que desearía guiarome en el proceso?
Vi Building GMP for iOS pero no funciona para mí. pensé que había construido con éxito mediante:
./configure CC="/Developer/Platforms/iPhoneOS.platform/Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2" CXX="/Developer/Platforms/iPhoneOS.platform/Developer/usr/llvm-gcc-4.2/bin/llvm-g++-4.2" CPP="/Developer/Platforms/iPhoneOS.platform/Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2 -E" LD="$IOS/usr/bin/ld" CPPFLAGS="-arch armv7 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk -miphoneos-version-min=4.2" AR="$IOS/usr/bin/ar" NM="$IOS/usr/bin/nm" NMEDIT="$IOS/usr/bin/nmedit" LIBTOOL="$IOS/usr/bin/libtool" LIPO="$IOS/usr/bin/lipo" OTOOL="$IOS/usr/bin/otool" RANLIB="$IOS/usr/bin/ranlib" STRIP="$IOS/usr/bin/strip" --disable-shared --enable-static --prefix=$IOS/usr/local --host=none-apple-darwin10
luego hacer la instalación.
En /usr/local/lib
tengo libgmp.a
. Pero cuando me arrastre a que xcode
cuando voy a compilarlo me dice:
ignoring file /Users/daniel/Desktop/libgmp.a, file was built for archive which is not the architecture being linked (armv7)
(me cayó en mi escritorio, por alguna razón, entonces arrastrado a mi proyecto en Xcode)
Esto me está volviendo loco. ¿Alguien puede ayudar? Tenga en cuenta que soy un novato completo con estas herramientas.
Suponiendo que recibo ayuda y puedo hacer que esto funcione. ¿Cómo hago para convertirlo en un marco que funcione en un armv6
, armv7
y simulator(i386)
?
Gracias de antemano.
Dan
ACTUALIZACIÓN: En caso de cualquier otra persona tienen el problema aquí es cómo lo resolví.
Primero compile en cruz GMP 3 veces, configurando las arquitecturas en armv6. armv7 e i386 respectivamente. Al construir las versiones de brazo, agregue la bandera -DNO_ASM a CPPFLAGS.
Búsqueda LIPO los tres archivos .a juntos
archivo .a importación a Xcode con gmp.g y gmpgxx.h.
Done
Lo descubrí. Ahora tengo una biblioteca GMP que funciona y que funciona para el simulador (i386) y los dispositivos (armv6 y armv7). Me pregunto si puedo usar la parte armv6/7 del desarrollo de Android con el NDK. Ahora, escribe un contenedor objetivo C para que funcione bien con NSString. – user1178964
Puede (y debe) publicar una respuesta a su propia pregunta y aceptarla. –