views:

484

answers:

3

I'm trying to build an application using the Canon EDSDK 2.8. I created a new Cocoa Application project in Xcode, and imported the headers and framework files. When I try to build and run (without writing any code), I get two warnings that say the frameworks are missing x86_64 architecture files. If I try and import the "EDSDK.h" header file, I end up with about 100 miscellaneous errors.

I've tried changing the architecture to i386, however when I try and build and run, I get a debugger error that says "Cannot access memory at address 0x0".

The odd thing is that I can get the example applications bundled with the SDK to compile and run without issues,

Anyone have any ideas as to why this is happening?

A: 

In order to be able to compile the project, you have to set the framework search paths in the xcode target's property window and also the header search paths in the xcode project's property window. have a look at the sample projects provided by canon.

The EDSDK currently is not 64-Bit compatible. If you want to write a 64-Bit app, you have to include the EDSDK in a 32-Bit helper application and implement communication between the app and the helper app.

hope this helps.

EDSDKCoder
I have everything linked up fine, its just that I get a bunch of compiler errors from EDSDK.h.
Scott Langendyk
I've been attempting this again. I copied the target settings exactly but whenever I build and run I get a debugger error that says it can't access memory at location 0x0.
Scott Langendyk
A: 

Update, looks like I figured it out. Apparently under the target, you need to add a build phase which copies the EDSDK.framework to the Framework directory of the target.

Scott Langendyk
A: 

I recently answered a similar question at www.canonsdk.com. Take a look under the Mac section. And while you're at it, please post some info on how to get callbacks working for a simple C command line app :)

Matt