![]() ![]() The C++ linking was definitely an issue for making XCOFF libraries and linking those via mwld to BeOS code (which is what Fred Fish did) but you are probably right about the PEF exes. ld would need to understand linking other PEF libraries to be a drop in replacement. That might mean the extra tools are not needed? I guess we need to see what happens. I don’t know which specific version of gcc off the top of my head (I’d need to boot my Mac to take a look), but it is at least C++17 compatible. I think it is a much more recent version of gcc than anything BeOS used on Intel. I honestly think we could just use the Retro68 compiler once we have finished it. The biggest challenge would be adapting Haiku build system and sources so it can be compiled with Metrowers C++ compiler. If anyone want to jump in, feel free to join the fun. I’ll post more progress as it happens, but this is a passion project and so it will probably be slow going till I can compile more modern real world code. I was surprised the basic app I wrote worked, so there is doubtless more to it I don’t yet know about. BeOS does a lot of extra start-up that seems to be from the MetroWerks codebase… we need to work out if we need any/all of it.But we will need to find a solution for the C++ side of things. the MakeImport works for exported C functions, but there are a few quirks… nothing that can’t be fixed.This will need to be resolved to make standard C compile. we currently don’t execute main(.), we are going to the initial ‘_start()’ function.Hopefully a cross compiler will be able to be made and we will be in a good place to port modern code to BeOS PowerPC. This is significant, as it proves that with work, the full standard C functionality will be possible. Still early days, but today I successfully built a simple command line app that links with libroot.so and can execute puts(.). He has kindly made a BeOS branch and has altered the MakeImport tool to accept BeOS style PEF libraries. I have been working with the author, Wolfgang Thaller of Retro68. So, for at the very least, basic C calls like those in libroot.so it is feasible. So, I knew it would be possible with work to make this all work for BeOS PowerPC becaue I have used the Mac version of the Metrowerks compilers to build BeOS apps before. The compiler will build PEF executables by generating an XCOFF exe that is then converted to PEF with the MakePef tool and can import PEF libraries and link to them through stubs that are created with another tool called “MakeImport”. So - for the last few months I have been meaning to get to this, but finally started to look at it over the last week.įor those that don’t know, Retro68 is a project that brings a modern GCC cross compiler that targets legacy Mac Systems, including PowerPC.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |