THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 12/01/2005 at 10:11, xxxxxxxx wrote:
Cinema 4D Version: 8.012
Platform: Mac OSX ;
Language(s) : C++ ;
Well, this just sucks...
I cannot, in no way, afford to purchase C4D for MacOS. Nor is it possible to get R8.0 for MacOS unless I find someone selling it on eBay or something.
So, I purchased CodeWarrior 9 for Mac with MacOSX and Classic targets. I installed the Mac C4D R9 demo as a testing bed for my plugin. I moved my source code over from PC to Mac. The important part: the R8.012 SDK was moved over from PC to Mac (in my user folder, not the C4D demo location).
Loading the API LIB project in CW causes it to ask to update the project. I've decided not to (same errors either way). I do a Make and all of these errors occur. Being my first venture into Mac programming, I have no clue what the cause is. I have a guess: EOLs maybe? But that is about it. If anyone has a working MacOS version of the R8.012 C++ SDK, I'd appreciate it rather than spending the next six months figuring out what the problems are. I mean, it took me some time to actually FIX the 8.012 SDK in the first place to make it work in Windows (changing EOLs, fixing CODING ERRORS - yes, you guys made mistakes - , and so on).
I don't even know what the upgrade scheme is for Mac (does it run parallel to Windows versions). If 8.207 is a workable SDK in MacOS, let me know.
On 12/01/2005 at 10:43, xxxxxxxx wrote:
The mac versions are parallel. I recommend that you use 8.207 instead of 8.012, since it's a free upgrade. Did you try the R9 SDK just to make sure that CW is working? Did you copy the api and api_lib folders as well?
I can compile my mac versions just fine in the C4D folder on my pc (over the network), so there should be no difference between mac/pc except for the C4D executable. So update your PC C4D to 8.207 and copy it to your mac and see if that works.
On 12/01/2005 at 11:00, xxxxxxxx wrote:
Just tried the 8.207 SDK - 1114 errors, mostly of this type:
Error : illegal character constant
OperatingSystem.h line 248 LV_COLUMN_TEXT = 'txt',
Project: _API_V8.PRJ, Target: _api_v8 (Final), Source File: c4d_basedocument.cpp
This SDK, like the other, is copied over from my Windows installs (I have 8.012, 8.207, 8.503, and 9.012 installed under Windows). A cursory look at the C++ SDK Downloads shows that there is no way to get a Mac version (let alone Windows version for these older SDKs). I didn't just copy the _api folders, I copied the entire Resource folder!
Plus, the SDK stuff is not in a C4D folder (which is the R9 demo). I'm compiling the lib and plugin separate from C4D - is there anything outside of the Resource folder required to compile the SDK and plugins?
You should know that I'm writing it using 8.012 (maybe 8.2 on Mac) to support 8.0 and above. Heck, I've got greebies breathing down my neck to support 7.3 (uh uh) and, yes, even 6 CE (yeah, right). So, using the R9 demo (that's DEMO) SDK is really out of the question to support 8.0-8.5 users, now isn't it...
On 12/01/2005 at 11:09, xxxxxxxx wrote:
Yes, the C4D R9 api compiles with only the delete() errors (as expected from reading the forum).
So, there is obviously a difference between the Windows and MacOS SDK versions. How do I get around this? Where do I get a demo version of 8.2 for MacOS? As I said, there is no possible way that I can purchase C4D for Mac - right now checks are bouncing because my bills (mortgage, insurance, etc.) are outstripping my income. I spent the past three months deliberating on purchasing CW and only did so with the success of the plugin beta, a $100 price reduction, and some duct tape applied to my wallet.
On 12/01/2005 at 12:35, xxxxxxxx wrote:
The reason it's silly to support 8.012 is because 8.207 is a free update.
The error you cited sounds like CW9 complains about 'txt'. It probably only likes 'x', 'yy' and 'zzzz' character constants. That means you'd get the same thing if you got the mac version of C4D R8. The fix, as has been done in the C4D R9 SDK, is to add a \0, i.e. write '\0txt' instead. (Unless there's a flag in CW9 to support the legacy 'ccc' construct as CW8 did.)
Often the number of errors reported by the compiler is largely irrelevant; it's either zero or greater than zero, in which case fixing the first one might fix the other thousands as well. So my guess would be that there aren't that many places that need fixing to make the R8 SDK compatible with CW9. You could always compare with the R9 SDK to see how the compiler changes have been worked around there. Please tell me if you need more help with any particular compiler issue.
On 12/01/2005 at 12:56, xxxxxxxx wrote:
Yes, I agree, but I have the full 8.012 SDK, fixed and working. I never even used the 8.2 SDK as I updated to 8.5 and used that by the time I was back using the SDK. It is always difficult to work with unknowns - as can be seen by my exhuberant Mac programming experience (= 0).
Why wasn't this corrected instead of left to the developer to fix? How do I fix all of these? I don't have anything but a mostly base MacOS system. Again, I can't afford any more software (not even BBEdit which I used to own).
No, the number of errors is either 0, some, or so many that one must consider what the fundamental causes are beyond mistakes and bad coding. The latter is my situation. And I shouldn't be in that situation compiling Maxon's SDK with Maxon's PRJ using Maxon's suggested Compiler (CW8 isn't on Metrowerk's list of available options). Hopefully there are less than 1114 changes to be made and the compiler is throwing up repetitive errors from includes - of this I am not certain yet.
On 12/01/2005 at 14:28, xxxxxxxx wrote:
The suggested compiler for the R8 SDK is/was CW8. If you want to use CW9 you'll unfortunately have to manually update the R8 SDK so that CW9 accepts it. The R9 SDK seems to be updated so that CW9 supports it. (Btw, you could ask Metrowerks if there's a compiler flag for CW9 to make it support the code that CW8 accepted.)
You couild fix the API using your favorite PC editor. As I mentioned it isn't even necessary to have any code on the Mac, if you connect to the PC via a network. (In fact, I believe there even exists a PC version of CW that can compile Mac plugins.)
On 12/01/2005 at 15:10, xxxxxxxx wrote:
Well, I cursorily looked at the Project options and didn't see anything remotely like a CW8 support setting. When opening these CW8 projects, CW9 won't even let them in without 'updating' the project to use within it. So, I'll go the fix-it route. Wasn't too many '\0's to add and following advice about 'delete()' et al seemed to work.
I keep all of my PCs isolated on the network to avoid cascading virus infection (one of these days, one is going to get in before NAV knows it exists) or hacker heaven - it's the closest I can get to 'not being on the internet at all' while still having an always-on connection for my servers. Instead they all have secured wireless cards to a hub to the internet. For copies, I use a 250GB external firewire drive or a 128MB USB tdrive - Panther NTFS support is extremely pleasing. So it's either an always on cabled ethernet (it takes Windows an eternity to connect machines) or a rather quick plug and copy.
I had considered that version of CW, but it has all targets (MacOSX, Classic, and Windows) at a cost of: $749. Really cannot afford the version that was just purchased.
Now the real fun begins: porting my plugin code. zlib looks to be the most frustrating as the MacOS port is neither 'official' nor up-to-date.