Vra

Ek probeer om saam te stel ZeroMQ C bindend in staat te wees om dit te gebruik op iPhone, hier is my instel opsies:

./configure --host=arm-apple-darwin --enable-static=yes --enable-shared=no CC=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/arm-apple-darwin10-gcc-4.2.1 CFLAGS="-pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -fmessage-length=0 -fvisibility=hidden -miphoneos-version-min=3.1.2 -gdwarf-2 -mthumb -I/Library/iPhone/include -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.0.sdk -mdynamic-no-pic" CPP=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/cpp AR=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/ar AS=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/as LIBTOOL=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool STRIP=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/strip RANLIB=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/ranlib

Dit is eintlik instel van en stel fyn, maar toe ek dit toe te voeg tot Xcode raamwerke artikel, kry ek waarsku:. ld: warning: in /path/to/app/libzmq.a, file was built for unsupported file format which is not the architecture being linked (armv7) en 'n baie simbool nie gevind foute

As ek die huidige aktiewe argitektuur van armv6 verander na ARMv7, waarskuwing boodskap sal dit verander na armv6. Wat doen ek verkeerd?

Dankie, Dan

Was dit nuttig?

Oplossing

Dit klink asof jy die bou van 'n universele armv6 / ARMv7 binêre vir die iPhone (dit is die standaard, so dit maak sin). Dit beteken dat jy nodig het om 'n universele biblioteek te bou om skakel teen. Bou beide biblioteke, en gebruik dan lipo om die twee.

kombineer

Byvoorbeeld, die bou van die armv6 een en plaas dit op armv6/libfoo.a, en die ARMv7 een by armv7/libfoo.a. Dan loop

lipo -arch armv6 armv6/libfoo.a -arch armv7 armv7/libfoo.a -output libfoo.a -create

om die universele biblioteek libfoo.a skep.

Ander wenke

Gegewe die waarskuwing boodskap van ld, my raaiskoot is dat jy nie die biblioteek saam te stel vir die korrekte platform. En die lig van wat jy gebruik configure, my raaiskoot is jy probeer om die biblioteek buite Xcode stel en dan bring dit in Xcode later om dit te skakel in.

Miskien kan jy probeer hardloop instel na die opstel van jou kop, maar doen die werklike samestelling stap in Xcode?

Daar is baie van verwante vrae hier op SO oor die samestelling van derde-party (eksterne) C of C ++ biblioteke vir gebruik in iPhone projekte.

skep statiese biblioteek vir iPhone

bedeesd: hulp nodig het die opstel van hierdie biblioteek vir die iPhone

Gelisensieer onder: CC-BY-SA met toeskrywing
Nie verbonde aan StackOverflow
scroll top