I am looking at trying to update an old open source project to run on macOS Catalina and later. The old app targets 32 bit. (An additional complication for me is that it is written in C++, but that’s another matter.)
Obviously, a forum response won’t be able to tell me how to convert this project. But if some kind soul could set me on the right path, that would be more than I have now.
Searches online turn up plenty of roadmaps and tutorials for converting Windows projects. Sadly, there doesn’t’ seem to be much for macOS. Maybe I’m just not looking in the right place.
At this point, I haven’t even unravelled what parts of the C++ code calls Apple APIs and what depends on C++ frameworks.
Thanks for any and all help, even if it is to point out that the naivete of my question suggests I can’t handle this kind of project.
What you describe is exactly what I did, and that’s what drove me to seek a shepherd in my quest to update this app. When I opened the project in Xcode, I saw more red and more errors than I have ever seen before. Ugh. Where to start…!
My hope was that someone had documented a process to chip away at this kind of problem.
Complicating matters is the fact that this is not my code base. While it appears fairly well organized, it is still foreign territory for me.
As I said, I’m aware that no one will be able to talk me through this in a forum post. But there has to be some article somewhere that documents how to tackle something like this. I was surprised that I didn’t see anything on raywenderlich.com.
Maybe it really is just a matter of rewriting this thing piece by piece, starting with any old error and hacking at it until it clears.
The FretPetX project uses the Carbon framework for the GUI, which does not have 64-bit support.
This project is going to be difficult to make a 64-bit version. You’re going to have build the user interface with Cocoa and Objective-C while using the existing C++ code in the rest of the app. If you do a search online for Objective-C++, you’ll learn how to mix C++ and Objective-C code in a Cocoa app. The big thing you must do is give your files the extension .mm.