#warning Strings.h is not available on Mac OS X

dhjdhjdhj's icon

When I build a basic example using the SDK for 6.0.4 and using the latest xcode with 10.7, I get the error mentioned.

Sure enough the file Strings.h contains simply that warning directive.

The question is where in the Max SDK is this header being pulled in?

Zachary Seldess's icon

Just updated to Xcode 4.4 and now getting this same warning in the 5.1.7 SDK on 10.7. Anything to be worrying about?

best,
Zachary

BenCello's icon

Up !

I'm having the same problem now…
It appeared when upgrading my laptop to Mountain Lion ie. with XCode 4.5 and MacOSX10.7 or MacOSX10.8 SDK and both Max5 and Max6 SDKs.

Any idea ?

Cheers

Peter Castine's icon

Strings.h is a Carbon interface, and Apple hasn't supported Carbon for quite a while. The header files generating the warning date from 2009 (or earlier), so this isn't exactly a new problem.

I have copies of Strings.h from 2002 that do nothing but #include . That header file still exists in the CarbonCore.Framework as recently (ahem) as 2009. So, if you're using any of the calls, you might try replacing the with in the relative #include directive[s]. OTOH, most of the stuff in TextUtils.h has been deprecated since at least OS X 10.4, so you might want to see if you can build after ditching the offending #include directive entirely. I'm not sure what in the Max/MSP ext_* headers would actually require {Strings|TextUtils}.h.

Why don't you try deleting the #include and see if you can compile. If there are 'function undefined' errors, then you'll need to track down where the function is defined in current frameworks. If at all.

pukulsesuatu's icon

same problem with Me, I am try to compile example max 6 sdk on Xcode 4.5 but igot error message on max window console " 2013-02-14 14:51:06.472 Max[520:507] Cannot find executable for CFBundle 0x10e7fd0 (not loaded)" I am using os x 10.7.5 . any body know to solve the problem? thanks

pukulsesuatu's icon

of course this related after I run sample code on Xcode message is #warning Strings.h is not available on Mac OS X and then I try put a file .mxo from products folder on Xcode to msp external folder and then on max console I got error message on max window console " 2013-02-14 14:51:06.472 Max[520:507] Cannot find executable for CFBundle 0x10e7fd0 (not loaded)"

Peter Castine's icon

Yeah, well, if XCode can't build a complete external (regardless of the reason why it can't complete the build… Strings.h not available is only one of thousands of possible reasons)… anyway, if the build is incomplete and you put the partial .mxo into your search path, and the .mxo doesn't have an executable, then Max isn't going to be able to run the executable.

How to solve the problem you ask about? Get XCode to build.

Now, if you want advice on how to get XCode to build your executable, start a new thread and maybe we can follow up there. I have already addressed the original query, about four posts up.

nick rothwell | project cassiel's icon

I followed up on this in another thread... There are problems caused by old (3.x) Xcode installations in /Developer; the maxmspsdk.xcconfig file still refers to this path. Remove this, or the old Xcode, and the builds seem to be clean.

Timothy Place's icon

In the latest (Max 6.1.1) SDK the paths in /Developer are no longer referenced.

nick rothwell | project cassiel's icon

I'm pretty sure that line is still in maxmspsdk.xcconfig in the 6.1.1 SDK (although the PRODUCT_VERSION is 6.1.0) and that's enough to mess up the builds if there's an Xcode 3.x installed in /Developer.

Timothy Place's icon

I stand corrected. I was looking at the SDKROOT rather than the HEADER_SEARCH_PATHS. Thanks for catching that.

BenCello's icon

Hi all,

I follow up the Strings.h problem…
You can clear this warning by removing (indeed) the /Developer/Headers/FlatCarbon path in the HEADER_SEARCH_PATHS config option.
However, if you do this, your externals won't load correctly on Mac OS 10.5 and you will get an error like unable to load executable bundle… in the Max window.

So either you get the Strings.h warning and you can run on Mac OS 10.5. Or you don't have the warning but you exclude Mac OS 10.5 users…

Am I correct? Has someone also arrived to the same conclusion? Or could someone check that point?

Thanks