libftdi Archives

Subject: libftdi on Mac: calling library runs in C++ console app, breaks in Cocoa app

From: Adam Preble <preble@xxxxxxxxx>
To: libftdi@xxxxxxxxxxxxxxxxxxxxxxx
Date: Sat, 30 May 2009 11:11:30 -0400
Hello,

I am working on a library that uses libftdi 0.16 (and libusb 0.1.12) to communicate with a FT245RL.  All of my work is taking place on a Mac (Intel, 10.5.6) but we're keeping the library code portable.  I've written a C++ console app that uses the library and everything works great there.

The problems arose when I started trying to call the library from a Cocoa app.  My library can still enumerate all of the devices and open one, but when it calls to write to the device via ftdi_write_data() it returns 0 bytes written.  

I've used Xcode to step down through the code, all the way into the libusb bulk write code but haven't been able to observe the actual problem.  Sometimes Xcode/gdb will print out the following while stepping over the write call: 

Program received signal:  “EXC_BAD_ACCESS”.

Cannot access memory at address 0x6f697377

Cannot access memory at address 0x6f697377


The problem is 100% reproducible and I've verified that the buffer I'm sending to be written is fine.  

Is there some sort of incompatibility between libftdi/libusb and Cocoa, or is it possible that I'm linking the wrong libraries?  I had to add -lstdc++ to my Cocoa app due to C++ that's internal to my library. 

Thanks for any pointers,

Adam



libftdi - see http://www.intra2net.com/en/developer/libftdi for details.
To unsubscribe send a mail to libftdi+unsubscribe@xxxxxxxxxxxxxxxxxxxxxxx


Current Thread