Giter Club home page Giter Club logo

Comments (14)

nodnarb avatar nodnarb commented on August 22, 2024

It appears you are trying to build for the simulator. Try building to a device instead.

from sphero-ios-sdk.

stefankendall avatar stefankendall commented on August 22, 2024

That wasn't the issue.
screen shot 2013-10-08 at 8 40 56 pm

from sphero-ios-sdk.

stefankendall avatar stefankendall commented on August 22, 2024

And if it was the case that you couldn't build for the simulator, that would wreck any hope of automated testing. Which would suck.

from sphero-ios-sdk.

 avatar commented on August 22, 2024

I just downloaded the SDK as well, and get the same errors as above screenshot.
Using latest XCode 5 / iOS 7.
Tried building for device with no changes made to the Sphero Application Template and errors out. Looks like something to do with the frameworks.

Any fixes?

UPDATE
Looks like if you set the 'Deployment Target' in the project settings to something lower than 7.0, it will build.
So basically the SDK needs to be updated to use the newer iOS 7 Frameworks. Can we get an official update for this in the near future?

UPDATE 2
Ok so fixed the build issue by adding this framework to the project: libstdc++.6.dylib
Project builds for Deployment Target of 7.0 (iOS 7), but there is a problem with the storyboards now.

UPDATE 3
Ok, so finally got it working. After you add the above framework, just delete the two storyboards (make sure you move to trash) then create new ones. Add a view controller, set the class as the default 'ViewController' class that has all the Sphero code already. Then you are good to go and can run in iOS 7!

Still hoping Orbotix comes out with an updated iOS 7 Sphero Application Template though...

from sphero-ios-sdk.

vves avatar vves commented on August 22, 2024

Hi James,

We are able to reproduce the issues and fixes. Our next release of the SDK will include a valid Xcode 5 / iOS7 App Template. Thank you!

from sphero-ios-sdk.

 avatar commented on August 22, 2024

Awesome! Thanks for looking into the matter and updating the template. Hopefully my fixes helped...

from sphero-ios-sdk.

bmalbuck avatar bmalbuck commented on August 22, 2024

Take a look at a simple project I am putting together for a local meetup group. I tried out-of-box project template with Xcode5 and iOS 7 but it took too much hacking to get it to work so I don't recommend using the template until it gets updated.

In the meantime, use my project as a baseline (link bellow) or start from scratch and follow the manual method for integrating the Sphero libs. Here are a few other things you will have to do in order to get it linked if you start from scratch.

Build Settings

  1. Valid Architectures : if present remove arm64 (Sphero libs don't support arm 64 bit, yet)
  2. Other linker flags: -ObjC -all_load -lstdc++ -lsqlite3
  3. C++ Language Dialect: GNU++11
  4. C++ Standard Library: libstdc++ (GNU C++ std lib) (don't use LLVM compiler)

You may also need to rename your main.m to main.mm (Obj-C++) to get it to link.

If still having issues, use my project to compare.

https://github.com/bmalbuck/CocoaheadsSphero

from sphero-ios-sdk.

vves avatar vves commented on August 22, 2024

Just updated the repo to (v1.6 b1146):

Support for XCode 5 & iOS7

SDK is compatible with Xcode5 and iOS versions 5 through 7 with native support for armv7 and armv7s. The QuickStart App template has been removed from this release since XCode 5 is not compatible. Please use the following information to manually setup your project.

Projects using this SDK should:
  • In Project Info
    • Target iOS7
  • In Build Settings
    • Architecures - Standard Architectures (armv7, armv7s)
    • Valid Architectures - armv7 armv7s (remove arm64)
      • arm64 cannot be supported with iOS5 support - removal of iOS5 support and support for arm64 will be delivered as another download.
    • Other Linker Flags - add -lstdc++
  • Add required Frameworks
    • RobotKit.framework
    • CoreMotion.framework
    • libsqlite3.0.dylib
    • ExternalAccessory.framework
  • In yourAppName-Info.plist
    • Add "Supported External Accessories Protocol"
      • Value = com.orbotix.robotprotocol

SDK Connection Usage

In the App Delegate - call 'connectToRobot'

#import <RobotKit/RobotKit.h>

...

-(void)connectToRobot 
{   
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(handleRobotOnline:) name:RKDeviceConnectionOnlineNotification object:nil];
    if ([[RKRobotProvider sharedRobotProvider] isRobotUnderControl]) 
    {
        [[RKRobotProvider sharedRobotProvider] openRobotConnection];
    }else
    {
        [[RKRobotProvider sharedRobotProvider] controlConnectedRobot];
    }
}

/** notification that Robot is Online and ready for use */
-(void) handleRobotOnline:(NSNotification*) n
{
    RKRobot *robot = [n.userInfo objectForKey:@"robot"];
    NSLog(@"Connected %@", robot);
}

...

from sphero-ios-sdk.

ArchitRai avatar ArchitRai commented on August 22, 2024

What about arm64 ?
please update

from sphero-ios-sdk.

sodastsai avatar sodastsai commented on August 22, 2024

arm64 support is in the beta branch

from sphero-ios-sdk.

ArchitRai avatar ArchitRai commented on August 22, 2024

thanks i am trying it. :-)

from sphero-ios-sdk.

ArchitRai avatar ArchitRai commented on August 22, 2024

this beta Branch also not working if deployment target is ios7 or ios 8 .
same error
"std::basic_string<char, std::char_traits, std::allocator >::~basic_string()", referenced from:
__GLOBAL__I_a in RobotKit(RKAchievementManager.o)
"std::string::reserve(unsigned long)", referenced from:
std::basic_string<char, std::char_traits, std::allocator > std::operator+<char, std::char_traits, std::allocator >(char const*, std::basic_string<char, std::char_traits, std::allocator > const&) in RobotKit(RKAchievementManager.o)
"std::string::_Rep::_S_empty_rep_storage", referenced from:

from sphero-ios-sdk.

sodastsai avatar sodastsai commented on August 22, 2024

http://docs-beta.gosphero.com/getting-started/

Did you link your app with libstdc++?

from sphero-ios-sdk.

ArchitRai avatar ArchitRai commented on August 22, 2024

thanks for link, i have link my app with libstdc++, -lstdc++ ,-lsqlite3 ,-ObjC
error occurred
no such file or directory: 'libstdc++'

from sphero-ios-sdk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.