Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Undefined symbols for architecture i386 for _OBJC_CLASS_$_QBRTCClient #793

Closed
NelepovDmitry opened this issue Apr 25, 2017 · 9 comments
Closed
Labels

Comments

@NelepovDmitry
Copy link

NelepovDmitry commented Apr 25, 2017

Hi, i have problem with adding WebRTC library to my project. Here description of problem:

I create empty project.
Create pod file

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'

target :'TestQuickBlox' do
pod 'Quickblox-WebRTC', '~> 2.4.1'
pod 'QuickBlox'
end

After that, i open workspace and add code in app delegate

#import "AppDelegate.h"

#import <SystemConfiguration/SystemConfiguration.h>
#import <MobileCoreServices/MobileCoreServices.h>
#import <Quickblox/Quickblox.h>
#import <QuickbloxWebRTC/QuickbloxWebRTC.h>

@interface AppDelegate ()

@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    [QBSettings setAccountKey:@"dBvfn72y1NaQBhhb6f2s"];
    [QBSettings setApplicationID:48324];
    [QBSettings setAuthKey:@"2wV9z25P5stJ4WF"];
    [QBSettings setAuthSecret:@"jshyVqQcFYjY6OX"];
    [QBSettings setLogLevel:QBLogLevelDebug];
    [QBSettings enableXMPPLogging];
    
    [QBRTCClient initializeRTC];
    
    return YES;
}

Then i try run on simulator and i got error:

ld: warning: ignoring file /Users/nelepovds/Dev/Tests/TestQuickBlox/Pods/Quickblox-WebRTC/QuickbloxWebRTC.framework/QuickbloxWebRTC, missing required architecture i386 in file /Users/nelepovds/Dev/Tests/TestQuickBlox/Pods/Quickblox-WebRTC/QuickbloxWebRTC.framework/QuickbloxWebRTC (3 slices)
Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_QBRTCClient", referenced from:
      objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

iOS SDK 8.0

@ghost
Copy link

ghost commented Apr 25, 2017

@NelepovDmitry,
Please take a look at this issue.

@NelepovDmitry
Copy link
Author

Please give a description how to remove i386 when run on simulator, please.

@Raikerian
Copy link

@NelepovDmitry just don't use old iPhone 4 simulator, and unless you have i386 arch in your project settings you should be fine.

@ghost ghost added the question label Apr 26, 2017
@NelepovDmitry
Copy link
Author

@Raikerian i don't use old iphone 4 simulator.
i use
XCode 8.3.2
Simulator 5S 10.3
MacOS Sierra
And CPU Core i5
Also i check project build settings and not found any words with i386.
Valid architectures: arm64 armv7 armv7s

@ghost
Copy link

ghost commented Apr 27, 2017

@NelepovDmitry Could you please attach a sample project with the reproducible issue?

@NelepovDmitry
Copy link
Author

@VitaliyGuru yes, here link
TestQuickBlox

It's full source with pods.

@ghost
Copy link

ghost commented Apr 28, 2017

Hi @NelepovDmitry

  1. Could you please add use_frameworks! in your Podfile
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!

target :'TestQuickBlox' do
pod 'Quickblox-WebRTC', '~> 2.4.1'
pod 'QuickBlox'
end
  1. run pod update
  2. clean the build folder for TestQuickBlox. Shift+Alt+Command+K

@ghost
Copy link

ghost commented Apr 28, 2017

Result:
screenshot 2017-04-28 14 36 26

@NelepovDmitry
Copy link
Author

@pro100andrey thank you all work fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants
@NelepovDmitry @Raikerian and others