Сборка GMP для iOS

Мне нужно использовать GMP в программе для iphone, над которой я работаю , но не знаю, с чего начать. Я знаю, что мне нужно создать версию для устройства и версию для симулятора, но это все, что я знаю. Я пытался осмотреться, но ничего не нашел.

Кто-нибудь здесь успешно создал GMP для iphone , который поможет мне в этом процессе?

Я видел Построение GMP для iOS , но у меня это не работает. Я думал, что успешно построил его с помощью:

./ 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

Затем выполните установку.

В / usr / local / lib у меня есть libgmp.a . Но когда я перетаскиваю в xcode , когда я иду на компиляцию, он сообщает мне:

игнорирование файла /Users/daniel/Desktop/libgmp.a, файл был создан для архива, который не является связываемой архитектурой (armv7) (Я по какой-то причине уронил свой рабочий стол, а затем перетащил в свой проект xcode)

Это сводит меня с ума. Кто-нибудь может помочь? Имейте в виду, что я полный новичок, использующий эти инструменты.

Если мне помогут, и я справлюсь.Как мне превратить его в фреймворк, который будет работать на симуляторе armv6 , armv7 и (i386) ?

Заранее спасибо.

Дэн

ОБНОВЛЕНИЕ: Если у кого-то еще есть проблема, вот как я ее решил.

  1. Сначала выполните кросс-компиляцию GMP 3 раза, установив для архитектуры armv6. armv7 и i386 соответственно. При сборке версий arm добавьте флаг -DNO_ASM в CPPFLAGS.

  2. Найдите LIPO три файла .a вместе

  3. Импортируйте файл .a в XCode с помощью gmp.g и gmpgxx.h.

  4. Готово

6
задан Community 23 May 2017 в 12:00
поделиться