XcodeEditor icon indicating copy to clipboard operation
XcodeEditor copied to clipboard

addframework failed in xcode7

Open wlevene opened this issue 10 years ago • 11 comments

I updated xcode to xcode7, happened this

static const NSString* SDK_PATH = @"/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk";

  • (NSString*)libzDylibPath { return [SDK_PATH stringByAppendingPathComponent:@"/usr/lib/libz.tbd"]; }

XCFrameworkDefinition* frameworkDefinition = [[XCFrameworkDefinition alloc] initWithFilePath:[XCFrameworkPath libzDylibPath] copyToDestination:NO];

[frameworksGroup addFramework:frameworkDefinition toTargets:[project targets]];

b33cc970-f502-4c8b-b1bb-b0c65d3d465a

here is ok~ but when i build the project, failed for this

fffc1340-e6e8-4e00-89a1-fdc3995c95b2

wlevene avatar Sep 24 '15 03:09 wlevene

linking against *.tbd libraries seems to be an unfinished feature in xcode 7, try adding -lz in the OTHER_LD_FLAGS which will do what you want

cezheng avatar Sep 24 '15 04:09 cezheng

i wish the author will finish link *.tbd libraries feature in xcode 7 soon, ;)

wlevene avatar Sep 24 '15 06:09 wlevene

I guess the tbd issue is not XcodeEditor's problem but a problem of Xcode itself, so I guess this issue should be closed

cezheng avatar Sep 24 '15 06:09 cezheng

the reason is the pbxproj file format is changed, may be need to support it in XcodeEditor

wlevene avatar Sep 24 '15 07:09 wlevene

I don't think so. Even if you manually add the libz.tbd to your project in Xcode, it fails

cezheng avatar Sep 24 '15 07:09 cezheng

i manually add the libz.tbd to my project in Xcode, it is ok
195d1538-56f5-4ff5-8148-de7813b7cbf9

wlevene avatar Sep 24 '15 07:09 wlevene

Oh, maybe *.tbd cannot be used in a static library project. I have a static library project and if I add a tbd file the build just fails

cezheng avatar Sep 24 '15 11:09 cezheng

@cezheng @GangWang Agree we can close this?

jasperblues avatar Nov 21 '15 11:11 jasperblues

I think this problem because XcodeEditor doesn't support .tbd file, I add Dylib = 24 in XcodeSourceFileType.h and @"sourcecode.text-based-dylib-definition" : @(Dylib) in XcodeSourceFileType.m(NSDictionaryWithXCFileReferenceTypes).

At last, I copy a new function from function :- (void)addFramework:(XCFrameworkDefinition *)frameworkDefinition; in XCGourp.m . I change: fileReference = [self makeFileReferenceWithPath:path name:name type:Framework] to fileReference = [self makeFileReferenceWithPath:path name:name type:Dylib]

I'm a new programmer ,and if I was wrong, forgive me .

akame avatar Dec 24 '15 11:12 akame

@akame hahaha~~~~~ thank you! you are right, i follow u step, it works! @jasperblues

wlevene avatar Apr 06 '16 09:04 wlevene

@akame nice! but you also add buidPharse item

forwardto9 avatar Nov 17 '16 07:11 forwardto9