-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update MacOS support #382
Update MacOS support #382
Conversation
Do we have access to a version 6.0 macos branch? |
Yes, these changes are based on the current head (5690d7f) of kubilus1/main branch and add on top of that changes from the original macOS branch + some additional changes I needed to make it run. You can clone my fork from https://github.com/SFAntti/autoortho/ and try it out. It is working on my M1 MacBook Pro running Ventura 13.5.2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tried applying changes in this PR against current main and can confirm these changes allowed AO to run on Apple Silicon macs! aside from that python crash which zacklipton found workaround by forcing an older build target for tcl-tk so it used an older call. It is working on my M2 macStudio running Ventura 13.5.2.
@kubilus1 , any chance for merging these to your branch? It would be easier to keep them up-to-date there. I'm happy to volunteer for macOS arm testing for future releases (with some time constraints). |
@SFAntti hello im a mac user using macbook pro m1, and ive downloaded your clone of auto ortho, i have managed to open the application however whenever I try to run the program, im always stuck on a step “aoimage/aoimage.dylib” if anyone can help me it’ll be much much appreciated 😭🙏🏻 ive been dealing with this for the past two weeks and not much progress. also do you have discord etc to contact you directly? |
What do you mean by being stuck in “aoimage/aoimage.dylib” ? Do you have a screenshot? |
@SFAntti do you have discord where i can message you directly please? |
@neymarjr410 , I don't have a discord. Looks like there is an issue loading the If it still fails after this I'd try recompiling the aoimage.dylib:
|
hi @SFAntti how exactly do i run the command "make -f makefile.osx" in terminal, also do you have any idea save changes and exit after editing tcl-tk through brew on terminal? also, do you have a email i can message directly instead of commenting here, so we can save up a bit of time, sorry to be bothering you as ive been trying to make AO work for the past month already but no signs of success, other than getting the UI working. |
@neymarjr410 , In general I don't think you'd need to run the makefile unless you need to completely recompile the aoimage.dylib library. Currently the one in my fork is only compiled for arm64, so if you were running on Intel Mac it would not work. However, sounds like you are on arm. So, the earlier error looks like it can't find the dynamically linked libturbojpeg in various locations in your filesystem: Did you install For example (first make sure the directory Hope this helps. |
hi @SFAntti i did install jpeg-turbo around an hour ago, but now i dont know why im struggling to find the path to it, i think its because i quitted terminal after finishing all the commands just now, also im on arm64 m1. do you have to redo all the commands ie install turbo jpeg-turbo, brew edit tcl-tk, pip install etc everytime you start AO? because im not sure if i need to redo all the commands in terminal before starting AO every time. |
Thanks for the awesome work for Mac support. Circling back around to this now. I think the real trick is the ispc lib build. Do you know if it's possible to build a lib that would work for arm and x86? Otherwise I'll want to figure out a way to choose both depending on the running system. |
I don't really use Mac and only really have an old x86 macbook, so can't build or test ARM stuff. At least not at the moment. I'm also not really the best person to ask about how to make things work on mac or not. I do hope to have an all in one bin like the Linux ver at some point though. |
I haven't looked into ispc lib much. I'll take another look if I can find one. Also, in my PR the |
Ah yeah you are right, both require compilation. I think I already setup libispc_texcomp.dylib for both archs:
If aoimage.dylib was also cross arch, I think this would be pretty close to ready to wrap up. Prior iterations of nuitka, which is what packages the bins had issues creating working macos bins, but I'm trying newer versions to see if that's resolved. |
@kubilus1 , you are right, the I'll give that a try and will update the PR with cross compiled x86 & arm64 |
@SFAntti hi bro can you help me out please, i came across this issue while trying to run AO Wrote config file: /Users/School/.autoortho |
@neymarjr410 I'm sorry, but I'm not sure what is the problem in your case. Perhaps something is not working with macFUSE. There was a step you had to give permission to macFUSE kernel extension in Mac. Did you need to do something like that? |
Updated with arm64 + x86 aoimage.dylib. |
@kubilus1 , So, I tried running again with the When X-Plane starts to load sceneries and the first call to
I wonder if it's something odd with arm64 and the python ctype mapping. How did you build the library, or where did you get it from? Anyway, using ISPC does work, so perhaps we could try to solve the stb as a separate change. |
Yeah i wouldn't worry much about STB since it's an older DDS compression mechanism that's worse the ISPC in most ways. |
I think there is a bit of divergence between this and the original macos branch I started. I'll look into straightening out the merges ... |
Ok, thank you! If needed I can help validate locally. |
hi @SFAntti yeah i gave permission in privacy & security, and which rebooted my mac, but it still says whenever i try to run AO |
Based on the changes from macos branch (#195), but updated against the latest changes in main.
I could not get STB working, so just supporting ISPC (like the original PR). Setting dds compressor to something else than
ispc
now fails a diagnostics check on Mac.