Skip to content
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

Mac arm64 Automated Binaries #1093

Open
evertoncolling opened this issue Feb 10, 2024 · 7 comments
Open

Mac arm64 Automated Binaries #1093

evertoncolling opened this issue Feb 10, 2024 · 7 comments
Assignees
Milestone

Comments

@evertoncolling
Copy link

Is your feature request related to a problem? Please describe.
Currently, Mac users who wish to test Nelson must build it from source. This process is time-consuming and poses a barrier to entry for users not familiar with building software from source, potentially limiting the testing and adoption of Nelson on the Mac platform.

Describe the solution you'd like
Automated builds specifically for Mac arm64 architecture. This would make Nelson more accessible to a wider audience.

Describe alternatives you've considered
N/A

Additional context
I successfully built Nelson in my Mac M1 Pro several months ago, which allowed me to test its features. However, with each new release, repeating this manual build process requires significant time and effort.

@Nelson-numerical-software
Copy link
Collaborator

Hi,

At the moment, my access to MacOS devices is restricted. I can perform CI builds, and I utilize MacOS when feasible.
I'm need to look into .dmg packaging through the cmake process, aiming to include all dependencies within the packages.

I anticipate proper MacOS support for version 2.0.
You can find more details in the roadmap:

- Native package development/support for macOS, Fedora, Arch, etc.,

I will start this packaging next month for v1.3 ;)

(contributions and feedback are welcome)

@Nelson-numerical-software
Copy link
Collaborator

Nelson-numerical-software commented Feb 26, 2024

https://www.kitware.com/creating-mac-os-x-packages-with-cmake/
https://cmake.org/cmake/help/v3.5/module/CPackDMG.html

macos packaging is a hell compared to debian or windows.
It will require some scripts to automatize this task (embed dependencies ...)
I will be begin in v1.3 but it will take more time to have a stable version.
Only arm target and sonoma will be supported

@Nelson-numerical-software
Copy link
Collaborator

Here the plan.
Not perfect but step by step
1] update cmakefiles to easily package (v1.3)
2] expose build as .tar.gz (v1.3)
3] creates brew formula (v1.4)
4] expose brew formula (v1.4)
5] packaging as .dmg (v2.0)
a real dmg package to be published/codesigning require a apple developper account 99$/year

stay tuned :)

@Nelson-numerical-software
Copy link
Collaborator

libffi was not correctly detected with brew formula (my fault ...) it will report packaging in brew to 1.4
build macos exposed as result:
https://github.com/nelson-lang/nelson/actions/runs/8493025349/artifacts/1371828902

@Nelson-numerical-software
Copy link
Collaborator

CMake Error at CMake/FfiConfig.cmake:20 (message):
  Brew reported an error:

  .

  Please resolve this error.
Call Stack (most recent call first):
  CMakeLists.txt:231 (include)

brew install nelson.rb fails again with 1.4 - boring - ...

@Nelson-numerical-software
Copy link
Collaborator

Nelson-numerical-software commented Jun 30, 2024

postponed (sorry), no more access to an physical mac arm64

@Nelson-numerical-software
Copy link
Collaborator

Nelson-numerical-software commented Nov 1, 2024

build using micromamba on macos was documented here: https://github.com/nelson-lang/nelson/blob/master/BUILDING_Macos.md
I will try to create a nelson feedstock

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants