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

Revision of ISIS on ARM Macs doc #123

Merged
merged 3 commits into from
Nov 15, 2024

Conversation

jrcain-usgs
Copy link
Contributor

Licensing

This project is mostly composed of free and unencumbered software released into the public domain, and we are unlikely to accept contributions that are not also released into the public domain. Somewhere near the top of each file should have these words:

This work is free and unencumbered software released into the public domain. In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain.

  • I dedicate any and all copyright interest in this software to the public domain. I make this dedication for the benefit of the public at large and to the detriment of my heirs and successors. I intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law.

Related to issue #122 but I don't think it completely resolves it.


There are at least two ways to develop ISIS on the M1. The current ISIS configuration can be built on the M1 in the Rosetta Translation Environment using the x86_i386 Intel-based instruction set. Building ISIS natively using the x86_64 ARM instruction set is not yet possible. The instructions to set up both environments is provided here, but the x86_i386 is recommended until all the required dependencies are available in the ARM environment.
There two ways to develop ISIS on Apple Silicon. ISIS can be built on ARM Macs with Rosetta Translation, using the x86 instruction set. Building ISIS natively for ARM on Apple Silicon is not as reliable. The instructions for both ways are provided here, but for now, the x86 environment is recommended, and ARM builds are considered experimental.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think leaving "no yet possible" is fine, it is something that will be worked on soon.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it is possible now (unless I've been doing it wrong, all my ISIS builds on my ARM Mac have been ARM builds). I still say x86 is recommended, and ARM is experimental, but I wonder how long we'll keep it that way.

@@ -89,36 +98,19 @@ Building the ARM version of ISIS is easier than the Intel version because there
5. Configure ISIS
* `conda env create -n IsisArmDev -f environment.yml`
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

has this actually worked, I would assume there are missing dependencies not on ARM yet. e.g. Bullet.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The conda environment seemed to work for me. I have the side-by-side setup described here, and I can make a Conda env/Build ISIS from the ARM side. It doesn't always work perfectly, but I think it's possible now, hence why I took out the "not yet possible" earlier and changed it to "less reliable".

Copy link
Collaborator

@Kelvinrr Kelvinrr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adam had a chance to test these docs out with his new Mac, only one comment in line.

@@ -71,9 +67,22 @@ Prior to attempting these steps, duplication of the Terminal app (or application

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

on line 70, delete that ninja install line since it's just kinda there.

@Kelvinrr Kelvinrr merged commit 08f6849 into DOI-USGS:main Nov 15, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants