On Tue, Feb 22, 2011 at 10:47 AM, Carlos Eduardo Mello <carloseme...@gmail.com> wrote: > > I have a configuration file which is used by an internal library in my app's > data model engine. The engine was written in c++ and needs this file for > loading the app's documents correctly. Theis file never changes and > shouldn't have to be seen or open by the user. Its contents are the same > for any document files oppened by the user. > > During debugging I place the file next to the executable in Build->Debug and > the library opens it with using c++ streams with just the file name. > However, when I compilethe app as release, and place the configuration file > next to the executable, it fails to find the file.
It's not a Debug/Release difference. The difference is how you're launching your app - the current working directory is different when you launch the app from Finder, from Xcode, and using the "open" command-line tool. > I imagine I have to deal > with application bundle api, but the thing is I can't add any cocoa code to > this library, as it needs remain cross-platform. Does this library allow you to specify the full path to its config file, instead of just its name, when you initialize the library? If so, you could keep the platform-specific code outside of the library itself. Alternatively, you could use NSBundle methods to find the location of your executable, then chdir() to that directory before initializing the library. sherm-- -- Cocoa programming in Perl: http://camelbones.sourceforge.net _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com