macattackjack Posted October 27, 2019 Share Posted October 27, 2019 Just a general question, as Catalina is exclusively 64 bit What I remember from my C++ programing days, is that an app would run a certain set of initialization routines, like mouse, keyboard, screen size, etc, and then the rest of the program would run. The programmer would set the byte size of each variable in the program. Is porting from 32 to 64 a matter of resizing those variables, making sure any calls to system routines have the proper variable size, Object variables are the correct size, etc, and compiling in 64 bit? I am curious, because there is one app that is 32 bit that would solve a lot of problems for me. The kext is 64 bit, so the hardware is controls works with Catalina, but since the app is 32 bit, there's no way to control it directly in Catalina. I can boot into a Mojave system, make the changes, import the pref file from that into Catalina, and the change will be there when I boot back into Catalina. But this is a pain. I am probably one of the first installing Catalina, so at this point the hardware manufacturer is resisting, but if more users complain, they may port the app. I am just curious how difficult this process is. On my end I'm looking at a sizable investment of gear to replace because of one 2.1 mb app. Link to comment https://www.insanelymac.com/forum/topic/340911-32-to-64-bit-app-ports/ Share on other sites More sharing options...
macattackjack Posted October 28, 2019 Author Share Posted October 28, 2019 What I found on this topic from Apple Introduction to 64-Bit Transition Guide This document describes the 64-bit features that are available in OS X v10.4 and v10.5. You should read it to help you determine which of these features to use and how to use them. What Is 64-Bit Computing? For the purposes of this document, 64-bit computing is defined as support for a 64-bit address space—that is, support for concurrent use of more than 4 GB of memory by a single executable program—no more, no less. OS X v10.8 uses a 64-bit kernel and fully supports 64-bit applications. The 64-bit kernel was originally introduced in OS X v10.6 (on some models of Mac hardware), and 64-bit application support was introduced in v10.5. Command-line 64-bit support was introduced in v10.4. Who Should Read This Document? Mac app developers should, at a minimum, read the chapter Should You Recompile Your Software as a 64-Bit Executable?. That chapter will help you determine whether it makes sense for your application to take advantage of 64-bit application support in OS X v10.5 and later. Developers of device drivers and kernel extensions should also read this document. Beginning with v10.6, device drivers and kernel extensions must be compiled with a 64-bit slice to be loadable into a 64-bit kernel. Beginning with v10.8, all kernel device drivers and other extensions must be compiled with a 64-bit slice. Organization of This Document This document is organized into the following chapters: Should You Recompile Your Software as a 64-Bit Executable?—provides helpful guidance about whether you should recompile your application as a 64-bit executable. Major 64-Bit Changes—describes the high-level architectural changes between a 32-bit and 64-bit environment. Making Code 64-Bit Clean—explains the general changes needed to make an application 64-bit clean. Compiling 64-Bit Code—explains how to compile your application as a 64-bit executable. High-Level 64-Bit API Support—summarizes changes to higher level APIs such as Carbon, Cocoa, and QuickTime and includes pointers to more detailed documentation on these changes. Cross-Architecture Plug-in Support—describes ways to support legacy plug-ins across architecture boundaries using helper hosts. Performance Optimization—gives tips for spotting common performance regressions caused by transitioning your code to 64-bit. Kernel Extensions and Drivers—tells how to transition your drivers and other kernel extensions to 64-bit executables. See Also For additional information, see the following documents: Tools & Languages Starting Point includes pointers to documentation that may help you solve 64-bit-related tools issues. 64-Bit Transition Guide for Cocoa and 64-Bit Guide for Carbon Developers provide information about Apple’s 64-bit application APIs. Universal Binary Programming Guidelines, Second Edition provides information about the Intel transition. You should read this document and add native Intel support to your application first, since many of the Intel changes also apply to a 64-bit port. OS X ABI Mach-O File Format Reference provides 64-bit ABI information that is useful if you are writing assembly language code. Xcode 4 Help provides information about using Xcode. You should be familiar with Xcode before you port your application or driver to 64-bit. The gcc, ld, and lipo man pages may also be relevant to you. https://developer.apple.com/library/archive/documentation/Darwin/Conceptual/64bitPorting/intro/intro.html#//apple_ref/doc/uid/TP40001064-CH205-TPXREF101 Link to comment https://www.insanelymac.com/forum/topic/340911-32-to-64-bit-app-ports/#findComment-2695263 Share on other sites More sharing options...
Recommended Posts