我試過接收圖像,解碼並保存在Documents文件中,但是在修改Uikit對不同版本的Iphone的限制之後,我遇到了與Core Services庫和Uikit兼容的問題。我還有其他問題:gcc-4.2退出代碼1失敗iphone
GCC-4.2失敗,退出代碼1個iphone
在錯誤行右擊後選擇「打開這些最新成果作爲記錄文本文件」:
Build WSStub of project WSStub with configuration Debug
Ld build/Debug/WSStub normal i386
cd /Users/********/Desktop/WSStub
setenv MACOSX_DEPLOYMENT_TARGET 10.5
/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Developer/SDKs/MacOSX10.5.sdk -L/Users/********/Desktop/WSStub/build/Debug -F/Users/********/Desktop/WSStub/build/Debug -F/Users/********/Desktop/WSStub -filelist /Users/********/Desktop/WSStub/build/WSStub.build/Debug/WSStub.build/Objects-normal/i386/WSStub.LinkFileList -mmacosx-version-min=10.5 -framework Foundation -framework CoreServices -framework UIKit -framework CoreGraphics -o /Users/********/Desktop/WSStub/build/Debug/WSStub
ld: warning: in /Users/********/Desktop/WSStub/UIKit.framework/UIKit, missing required architecture i386 in file
ld: warning: in /Users/********/Desktop/WSStub/CoreGraphics.framework/CoreGraphics, missing required architecture i386 in file
ld: duplicate symbol _UIEdgeInsetsMake in /Users/********/Desktop/WSStub/build/WSStub.build/Debug/WSStub.build/Objects-normal/i386/main.o and /Users/********/Desktop/WSStub/build/WSStub.build/Debug/WSStub.build/Objects-normal/i386/EnvioImagen.o
collect2: ld returned 1 exit status
Command /Developer/usr/bin/gcc-4.2 failed with exit code 1
我不能解決這個問題.....
的main.m
...
Envio * envio = [[Envio alloc] init];
[envio setMethod:method];
NSDictionary * imagen = [[NSDictionary alloc] initWithDictionary:[envio resultValue]];
NSString *im = [[NSString alloc] initWithString: [imagen valueForKey:@"return"]];
NSData * imagenDecode = [envio base64DataFromString:im];
[envio save:imagenDecode];
...
EnvioImagen.m
#import "EnvioImagen.h"
@implementation Envio
- (void) setMethod:(NSString*)myMethod
{...}
- (void) setInvocation:(NSString*)invoc
{...}
- (void) setSoap:(NSString*)mySoap
{...}
- (void) setNameSpace:(NSString*)myNamespace
{...}
- (NSDictionary*) resultValue
{...}
- (WSMethodInvocationRef) genCreateInvocationRef
{...}
+ (NSData *)base64DataFromString: (NSString *)string
{.....}
+ (void)save: (NSData *)data
{
UIImage *im = [[UIImage alloc]initWithData:data];
NSData *datai = UIImagePNGRepresentation(im);
NSFileManager *fileManager = [NSFileManager defaultManager];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *directory = [paths objectAtIndex:0];
NSString *fullPath = [directory stringByAppendingPathComponent:@"david.png"];
[fileManager createFileAtPath:fullPath contents:datai attributes:nil];
}
@end;
@implementation EnvioImagen
+ (id) Envio:(CFTypeRef) parameters
{
id result = NULL;
Envio* invocation = [[Envio alloc] init];
result = [[invocation resultValue] retain];
[invocation release];
return result;
}
@end
好的,我該如何選擇Iphone SDK? – David
@大衛:說實話,我不確定。 SDK有一個構建設置。改變這一點可能就足夠了。 – JeremyP