optimizers / homebrew-fenics

Building FEniCS on OSX with Homebrew and Pip.
GNU General Public License v3.0
3 stars 4 forks source link

Re: [fenics-support] Homebrew formula for Dolfin & co. on OSX #13

Open dpo opened 8 years ago

dpo commented 8 years ago

Transferred from https://groups.google.com/forum/#!topic/fenics-support/gVDxmv6LSlw. From Anders Logg.

Great initiative! I've tried it and here's my feedback.

  1. I'm on Mac OS X 10.10.5.
  2. I needed to enter my github username + password at the beginning. Shouldn't be necessary? Use anonymous pull instead of via https?
  3. Fails to build petsc4py:

    /usr/local/bin/mpicc -fPIC -Wall -Wwrite-strings -Wno-strict-aliasing -Wno-un\ known-pragmas -O -fno-strict-aliasing -fno-common -dynamic -I/usr/local/include\ -I/usr/local/opt/sqlite/include -I/Applications/Xcode.app/Contents/Developer/P\ latforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Framewor\ ks/Tk.framework/Versions/8.5/Headers -DNDEBUG -g -fwrapv -O3 -Wall -DPETSC_DIR=\ /usr/local/opt/petsc/real -I/usr/local/Cellar/open-mpi/1.10.2/include -I/usr/lo\ cal/opt/hwloc/include -I/usr/local/opt/fftw/include -I/usr/local/opt/hdf5/inclu\ de -I/usr/local/opt/netcdf/include -I/usr/local/opt/metis/include -I/usr/local/\ opt/parmetis/include -I/usr/local/opt/superlu_dist/include/superlu_dist -I/usr/\ local/Cellar/superlu43/4.3_1/include/superlu -I/usr/local/opt/sundials/include \ -I/usr/local/opt/suite-sparse/include -I/usr/local/opt/mumps/libexec/include -I\ /usr/local/opt/hypre/include -I/usr/local/Cellar/petsc/3.6.3_2/real/include -Is\ rc/include -I/usr/local/Cellar/python/2.7.9/Frameworks/Python.framework/Version\ s/2.7/include/python2.7 -c src/PETSc.c -o build/temp.macosx-10.10-x86_64-2.7/sr\ c/PETSc.o In file included from src/PETSc.c:3: In file included from src/petsc4py.PETSc.c:258: src/include/petsc4py/numpy.h:11:10: fatal error: 'numpy/arrayobject.h' file n\ ot found

    include "numpy/arrayobject.h"

        ^

    1 error generated. error: command '/usr/local/bin/mpicc' failed with exit status 1

  4. Fails to build VTK:

==> Downloading http://www.vtk.org/files/release/7.0/VTK-7.0.0.tar.gz

100,0%

==> cmake -DCMAKE_C_FLAGS_RELEASE=-DNDEBUG -DCMAKE_CXX_FLAGS_RELEASE=-DNDEBUG -\ D ==> make ==> make install Traceback (most recent call last): File "", line 1, in AttributeError: 'module' object has no attribute 'getusersitepackages' Traceback (most recent call last): File "", line 1, in AttributeError: 'module' object has no attribute 'getusersitepackages'

  1. How much of this can be automated? Can it be reduced from what is currently 15 lines to 1 line?
  2. Can there be multiple packages/formulas like:

    fenics-deps (all dependencies needed for installing/developing FEniCS) fenics (latest stable version, depending on fenics-deps) fenics-dev (latest version from master branch)

dpo commented 8 years ago
  1. Should be supported.
  2. Not sure why that happens. I never have to do that when I brew tap.
  3. petsc4py isn't finding numpy. I presume you're in a virtualenv at this point. Is numpy on your PYTHONPATH?
  4. I'm guessing vtk did build and that there's a PYTHONPATH issue. Let's see brew gist-logs vtk.

I'm not sure about automation yet. It seems there are still details to iron out.

You can install all deps with brew install --only-dependencies dolfin. The default, brew install dolfin installs the stable release. The master branch can be installed with brew install dolfin --HEAD. See man brew for more information.