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

Fixes for Neurodamus and Mac instructions #841

Merged
merged 4 commits into from
Jul 30, 2020
Merged

Conversation

ferdonline
Copy link

@ferdonline ferdonline commented Jun 18, 2020

Neurodamus, when building in mac suffered from two issues:

This PR

  • the hardcoded Python version was removed and instructions how to use BlueBrain spack with Mac were added.
  • the dependency was changed to "link", (doesn't help) - in the future we should remove the dependency altogether and use submodule

Neurodamus, when building in mac suffered from two issues:
 - always assume a brew Python
 - link to neurodamus-core with "run" dependency, which made
   it load modules and have variables overwritten. See
   #757 (comment)

To fix these issues, the dependency was changed to "link",
the hardcoded Python version was removed and instructions how to
use BlueBrain spack with Mac were added.
@ferdonline ferdonline marked this pull request as draft June 18, 2020 11:03
README.md Outdated
Comment on lines 212 to 226
## Building software in MAC

<details>
<summary>
Install software in MAC. Use BREW as a source of binary packages
</summary>

In MAC the build process is very similar to Ubuntu. To avoid building
the whole stack from source we can likewise use a package manager.
For that end we have successfully used Brew. We also provide a skeleton
packages.yaml that you should review and adapt to your needs.

Before starting, please install brew and the required packages.
If you require Python please install a version dowloaded from
Python.org, as several issues have been found with "brewed" Python
Copy link
Member

Choose a reason for hiding this comment

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

Thanks for getting this started! I'm thinking we could probably move this section up underneath the Ubuntu ones?

Suggested change
## Building software in MAC
<details>
<summary>
Install software in MAC. Use BREW as a source of binary packages
</summary>
In MAC the build process is very similar to Ubuntu. To avoid building
the whole stack from source we can likewise use a package manager.
For that end we have successfully used Brew. We also provide a skeleton
packages.yaml that you should review and adapt to your needs.
Before starting, please install brew and the required packages.
If you require Python please install a version dowloaded from
Python.org, as several issues have been found with "brewed" Python
## Building software on OS X
<details>
<summary>
Install software on OS X, using Homebrew for binary packages
</summary>
On OS X the build process is very similar to Ubuntu. To avoid building
the whole stack from source we can likewise use another package manager to provide precompiled binaries.
To that end we have successfully used Homebrew. We also provide a skeleton
`packages.yaml` that you should review and adapt to your needs.
Before starting, please install brew and the required packages.
If you require Python please install a version dowloaded from
Python.org, as several issues have been found with Homebrew's Python

Which packages are required? Also, rather than downloading an external Python, Spack could just build it…

Choose a reason for hiding this comment

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

Which packages are required? Also, rather than downloading an external Python, Spack could just build it…

Not a bad idea, if we nail all its dependencies beforehand, takes ~6 mins to build. @ferdonline what do you say about adopting this strategy? Brew's Python is also causing issues with wheels as far as you were pointing out.

Copy link
Author

Choose a reason for hiding this comment

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

The issue is not the build time, even though is not negligible. The issue is that it will probably end up with the same issues as brew Python... Python from Python.org are the standard ones, build with well tested settings and env vars for retro versions compatibility. I think it should be the default. Mac users only have to download and install, not like the linux world.

@@ -0,0 +1,111 @@
packages:

Choose a reason for hiding this comment

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

This can come in handy in a future update of our spack :

Choose a reason for hiding this comment

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

Copy link
Member

Choose a reason for hiding this comment

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

Not in our tree yet :(

ferdonline and others added 3 commits June 18, 2020 13:55
Co-authored-by: Matthias Wolf <[email protected]>
Spack will also autoload link dependencies
@ferdonline ferdonline marked this pull request as ready for review July 14, 2020 22:09
@ferdonline ferdonline requested a review from matz-e July 14, 2020 22:09
@ferdonline ferdonline changed the title Neurodamus link dependency and Mac instructions Fixes for Neurodamus and Mac instructions Jul 15, 2020
@ferdonline ferdonline merged commit a8fafd1 into develop Jul 30, 2020
@ferdonline ferdonline deleted the improv/neurodamus_mac branch July 30, 2020 08:39
ohm314 pushed a commit that referenced this pull request Sep 4, 2020
Neurodamus link dependency and Mac instructions

Neurodamus, when building in mac suffered always assumed a brew Python
Updated README.md for Mac usage

Co-authored-by: Matthias Wolf <[email protected]>
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.

3 participants