-
-
Notifications
You must be signed in to change notification settings - Fork 519
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
FR: M1 support #1327
Comments
I don' know how to compile for it. I don't have a mac either. |
On my M1 Superslicer sometimes crashed, but most times it would hang forever when attempting to slice. I followed the instructions from https://github.com/supermerill/SuperSlicer/blob/master/.github/workflows/ccpp_mac.yml to build from source as a workaround, and happy to report all working no issues. The only thing I changed in the instructions was the target osx version. |
If you want to share your natively compiled release i can add it to the release page. |
@boardthatpowder what version CMAKE_OSX_DEPLOYMENT_TARGET do you use for compiling in m1 native? |
Just use the latest version 11.5.2, works perfectly fine. |
Hi, I having trouble on building because of a dependency error of QT5Core, can you share you compile? Thanks! |
Thank you! It works smooth and perfectly! |
This gives me an error when launching that the file is damaged (the app, not the zip or the dmg). I re-downloaded it and had the same issue (MacBook Pro M1, MacOS 12.0.1). |
This was compiled on MacOS 11.52 iirc, that might be the problem. |
Run this in terminal:
|
That worked, thanks! |
Here is version 2.3.57.6 compiled for arm MacOS (11.6). https://www.dropbox.com/sh/34syqj6e7c20mz6/AAA097uOTzWH7Ih8kqJkgtxWa?dl=0 |
Has anyone tried to build for MacOS 12.x?? I just got a 14" MBP M1Pro. I'm currently running SS with the normal Mac build and it seems fine but I'm curious if there would be advantages to installing the native code? TIA |
The ones I built in the comment above yours should work just fine. |
This should be in the release notes for 2.3.57.7. |
I tried the builds, but they show as corrupt for me #2055 |
Look at my comment. You have to run the terminal command when switching from INTEL to APPLE Silicon version. |
Sorry for the delay, finally got around to downloading the latest Stable (Sanjay Ver) and today's nightly. After running the |
@jallen810 It does indeed work after running that command. Are you sure you are installing it to you application folder and running that version after you run the command? Keep in mind that if the image is still mounted finder will try and launch the one in the image instead of the one in your application folder if you search for it in spotlight. |
M1 2020 MBP Monterey clean install, downloaded DMG, app dumped in Applications, xattr command on app, right click open and all good. Make sure you haven't done "keep both" when copied across and xattr is pointing at the app copy you are trying to run, also it's copied locally and not run from DMG. |
I figured it out. I'm a dumb dumb, I have several versions installed and I post-script the name as "SuperSlicer.ARM12.20.21" so I had to adjust the terminal command to match... now it works fine. Thanks guys |
Attempted to run Mac Mini M1 on macOS 12.1 $ xattr -cr /Applications/SuperSlicer.app
$ open /Applications/SuperSlicer.app
The application cannot be opened for an unexpected reason, error=Error Domain=NSOSStatusErrorDomain Code=-10827 "kLSNoExecutableErr: The executable is missing" UserInfo={_LSLine=3829, _LSFunction=_LSOpenStuffCallLocal} |
I don't know. I can only debug when building from intel cpu. Someone with an arm one can debug? |
Not sure what your issue might be but it does build and run fine on arm based macs. You can find a working arm build here https://www.dropbox.com/sh/34syqj6e7c20mz6/AAA097uOTzWH7Ih8kqJkgtxWa?dl=0 You may need to run through each build command manually to see where the error may be. |
Thanks for that, will try it slowly when I have time--I grabbed the prebuilt one and it runs much smoother and faster! Is there any CI/CD provider that supports Apple Silicone yet? Or maybe we need to chip in to get @supermerill an M1! |
Is this something that can be incorporated into the build process? (I'm assuming this project uses some kind of build pipeline?) |
Apple silicone :p I know of several but it is likely better if we see if the existing CI/CD service used (assuming there is one) supports it. I worked with Microsoft AppCenter to build iOS applications - possibly a service we can research into |
HI here is a little part of the build log for 2.4:
and here is the one from 2.3.57:
I searched, and the iconv lib is still here. But it's not found or useable anymore. Maybe because the boost version has changed... Pusa is now outputting a "universal" dmg. Do you know how to compile one? |
I looked at how Prusa does this and I can't find any information about how they build those binaries. The easiest option would be to build both the M1 and x86 binaries and glue them together at the end of the build using As far as the build problems above, this does sound familiar. What branch are you testing on? |
I'm testing on |
I did manage to build this for arm, with no libiconv issues. I did run into a separate issue, I get an error when linking the final binary saying that Are you building for arm or x86? I'll try an x86 cross compile in a bit. I don't have an x86 mac anymore, but probably will in a few days. |
It's a cross-compile, yes. Using the macos-11 github VM. For the slic3r problem, maybe an error on my side, forgetting to rename it. |
Ok, that makes sense. I've reproduced it locally doing a cross-compile. I do remember seeing something like this when I was doing the initial work, so hopefully looking into it will remind me of the previous issue. |
I haven't determined why, but it appears that only the linkflags are being passed into b2 when configuring boost, and the cflags variants are being left out:
the cflags/cxxflags should have |
The problem is this block: SuperSlicer/deps/Boost/Boost.cmake Lines 111 to 120 in 6ba0a33
Because @@ -109,14 +109,14 @@ if (IS_CROSS_COMPILE AND APPLE)
endif ()
set(_boost_flags "")
-if (UNIX)
- set(_boost_flags "cflags=-fPIC;cxxflags=-fPIC")
-elseif(APPLE)
+if(APPLE)
set(_boost_flags
"cflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET};"
"cxxflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET};"
"mflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET};"
"mmflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET}")
+elseif (UNIX)
+ set(_boost_flags "cflags=-fPIC;cxxflags=-fPIC")
endif()
set(_build_cmd ${_build_cmd} That gets boost to cross compiling properly, but I'm still seeing other libraries like libjpeg that look to also be failing due to missing arch flags. I haven't had time to look into that. |
It looks like the latest builds (nightly included) are still intel only.
|
I had a crack at doing a build for Apple Silicon/ARM but ended up with so many errors I couldn't get it to work 🥲, if anyone has a build of the latest version please share it and I'll do some testing. |
I was able to build 2.5.59.2 on my M1 MacBook Pro without issue, what are you getting hung up on? What does "brew doctor" say? |
@thatguychad interesting - I must be doing something wrong then 🤔. There's a lot of problems but I don't want to hijack this thread - I see this repo has discussions enabled so I might start a thread there although I see someone has done a build and uploaded it already which I must just use - #3692 |
Feature Request: M1 AppleSilicone aka ARM support, PrusaSlicer does that from v2.3.1 so should be piece of cake, maybe?! Thanks.
The text was updated successfully, but these errors were encountered: