【问题标题】:XCode 7 : linker command failed with exit code 1 (use -v to see invocation)XCode 7:链接器命令失败,退出代码为 1(使用 -v 查看调用)
【发布时间】:2016-02-16 06:49:02
【问题描述】:

Ld /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Products/Debug-iphonesimulator/UsingSegue.app/UsingSegue normal i386
    cd "/Users/Abhinav/Desktop/Fist Project/UsingSegue"
    export IPHONEOS_DEPLOYMENT_TARGET=9.2
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
-arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.2.sdk
-L/Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Products/Debug-iphonesimulator
-F/Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Products/Debug-iphonesimulator
-filelist /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Intermediates/UsingSegue.build/Debug-iphonesimulator/UsingSegue.build/Objects-normal/i386/UsingSegue.LinkFileList
-Xlinker -rpath -Xlinker @executable_path/Frameworks -mios-simulator-version-min=9.2 -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -dependency_info -Xlinker /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Intermediates/UsingSegue.build/Debug-iphonesimulator/UsingSegue.build/Objects-normal/i386/UsingSegue_dependency_info.dat
-o /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Products/Debug-iphonesimulator/UsingSegue.app/UsingSegue

duplicate symbol _OBJC_IVAR_$_NextViewController._NextArray in:
    /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Intermediates/UsingSegue.build/Debug-iphonesimulator/UsingSegue.build/Objects-normal/i386/ViewController.o
    /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Intermediates/UsingSegue.build/Debug-iphonesimulator/UsingSegue.build/Objects-normal/i386/NextViewController.o duplicate symbol _OBJC_CLASS_$_NextViewController in:
    /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Intermediates/UsingSegue.build/Debug-iphonesimulator/UsingSegue.build/Objects-normal/i386/ViewController.o
    /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Intermediates/UsingSegue.build/Debug-iphonesimulator/UsingSegue.build/Objects-normal/i386/NextViewController.o duplicate symbol _OBJC_METACLASS_$_NextViewController in:
    /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Intermediates/UsingSegue.build/Debug-iphonesimulator/UsingSegue.build/Objects-normal/i386/ViewController.o
    /Users/Abhinav/Library/Developer/Xcode/DerivedData/UsingSegue-bujjpyciairreubqxbgfqixpwbiv/Build/Intermediates/UsingSegue.build/Debug-iphonesimulator/UsingSegue.build/Objects-normal/i386/NextViewController.o ld: 3 duplicate symbols for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation)

我检查了我的编译源,那里没有重复,但我仍然收到此错误。 我是IOS新手,请帮忙。 我正在尝试在视图控制器中创建数组,然后使用 segues 将其传递给另一个视图控制器。

ViewController.m:

-(IBAction)click:(id)sender
    {
    self.ArrayInput = [[NSMutableArray alloc]init];
    [self.ArrayInput addObject:@[_firstname.text]];
    [self.ArrayInput addObject:@[_lastname.text]];
    [self.ArrayInput addObject:@[_Email.text]];

NextViewController * nextcontroller = (NextViewController *)[self.storyboard     instantiateViewControllerWithIdentifier:@"NextViewController"];
[self.navigationController pushViewController:nextcontroller animated:YES];

}

然后在 ViewController.m 中使用 segue:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
NextViewController * NextVC = (NextViewController *)segue.destinationViewController;
NextVC.NextArray = [NSMutableArray arrayWithArray:self.ArrayInput];

}

NextViewController.m:

 - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:    (NSIndexPath *)indexPath
    {
        myTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"myTableViewCell" forIndexPath:indexPath];
        cell.Data.text = [self.NextArray objectAtIndex:indexPath.row];

    return cell;

}

【问题讨论】:

    标签: ios objective-c iphone xcode uitableview


    【解决方案1】:

    这个错误经常发生是不小心导入了.m文件而不是.h

    步骤:

    1. 检查目标设置中的构建阶段。
    2. 检查任何文件是否存在两次或一次。
    3. 如果文件存在两次删除一个。

    【讨论】:

    • 再次检查了我的代码.. 在 NextViewController.m 中声明了 nsmutablearray ... 必须在 NextViewController.h 中创建数组并将 NextViewController.h 文件包含在 ViewController.m 中。解决了我的问题。 ..谢谢..
    【解决方案2】:

    再次检查了我的代码.. 在 NextViewController.m 中声明了 nsmutablearray... 必须在 NextViewController.h 中创建数组并在 ViewController.m 中包含 NextViewController.h 文件.. 解决了我的问题.. 谢谢。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-03
      • 1970-01-01
      • 2016-01-04
      • 2023-03-28
      • 2018-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多