Error when Building FEniCS from source

434 views
Skip to first unread message

Ray Zhang

unread,
Jan 18, 2018, 5:44:01 PM1/18/18
to fenics-support
When I tried to build the FEniCS in Ubuntu 16.04 from source, I followed the step as follows as shown in the official site:
However, the cd ffc     && pip3 install . command give me an error like 

" Could not find a version that satisfies the requirement fenics-fiat<2018.2,>=2018.1.0.dev0 (from fenics-ffc===2018.1.0.dev0) (from versions: 2017.1.0.post1, 2017.2.0)
No matching distribution found for fenics-fiat<2018.2,>=2018.1.0.dev0 (from fenics-ffc===2018.1.0.dev0)"

However, "fenics_fiat-2018.1.0.dev0.egg-info" already exists in the path of the python (~/.local/lib/python3.5/site-packages).
 Could any friends help me figure out why it went wrong? I am using pip 8.1.1 in python 3.5.


cd fiat    && pip3 install .
cd instant && pip3 install .
cd dijitso && pip3 install .
cd ufl     && pip3 install .
cd ffc     && pip3 install .
cd dolfin  && mkdir build && cd build && cmake .. && make install
cd mshr    && mkdir build && cd build && cmake .. && make install

Ray Zhang

unread,
Jan 21, 2018, 4:56:24 PM1/21/18
to fenics-support
When compile ffc using pip3 with option -v, I do find where went wrong since it tries to find the required numpy, fiat online, where numpy online is the suitable version but the fiat only is 2017.1.0 2017.2.0, which is not required. 

Here comes the problem, how to force the pip3 to find the pre-installed fiat in a designated directory?

Best
Message has been deleted

William Wilson

unread,
Mar 7, 2018, 12:12:20 PM3/7/18
to fenics-support

I am getting the same error. I am installing fenics into a specified directory using --prefix and the ffc install cannot find the fiat distribution that is in the --prefix designated directory.

Collecting fenics-fiat<2018.2,>=2018.1.0.dev0 (from fenics-ffc==2018.1.0.dev0)
  Could not find a version that satisfies the requirement fenics-fiat<2018.2,>=2018.1.0.dev0 (from fenics-ffc==2018.1.0.dev0) (from versions: 2017.1.0.post1, 2017.2.0)
No matching distribution found for fenics-fiat<2018.2,>=2018.1.0.dev0 (from fenics-ffc==2018.1.0.dev0)

Jan Blechta

unread,
Mar 7, 2018, 12:42:44 PM3/7/18
to William Wilson, fenics-support
Do you know a way how to reproduce the problem? It works fine for me:

$ docker run -ti --rm python pip3 install --user fenics
[...]
Successfully installed fenics-2017.2.0 fenics-dijitso-2017.2.0 fenics-ffc-2017.2.0 fenics-fiat-2017.2.0 fenics-instant-2017.2.0 fenics-ufl-2017.2.0 mpmath-1.0.0 numpy-1.14.1 six-1.11.0 sympy-1.1.1

Jan

William Wilson

unread,
Mar 7, 2018, 1:01:59 PM3/7/18
to fenics-support
This is not running it in a docker container but building from source on a cluster, in my case.

William Wilson

unread,
Mar 7, 2018, 1:03:58 PM3/7/18
to fenics-support
The command that I am using is as per their directions but with a different prefix on a Red Hat 7 system:

pip3 install --prefix=/packages/fenics/ .

Jan Blechta

unread,
Mar 7, 2018, 1:07:25 PM3/7/18
to William Wilson, fenics-support
On Wed, 7 Mar 2018 10:01:59 -0800 (PST)
William Wilson <gwy...@gmail.com> wrote:

> This is not running it in a docker container but building from source
> on a cluster, in my case.

I understand. Docker is used to demonstrate that Pip and FFC work. Do
you have a minimal working example?

Jan

Jan Blechta

unread,
Mar 7, 2018, 1:41:41 PM3/7/18
to William Wilson, fenics-support
That works for me:

docker run -ti --rm python bash -c '
mkdir -p $HOME/local && export PYTHONPATH=$HOME/local/lib/python3.6/site-packages:$PYTHONPATH
git clone https://bitbucket.org/fenics-project/fiat
git clone https://bitbucket.org/fenics-project/ufl
git clone https://bitbucket.org/fenics-project/dijitso
git clone https://bitbucket.org/fenics-project/ffc
cd fiat && pip3 install --prefix="$HOME/local" . && cd ../
cd ufl && pip3 install --prefix="$HOME/local" . && cd ../
cd dijitso && pip3 install --prefix="$HOME/local" . && cd ../
cd ffc && pip3 install --prefix="$HOME/local" . && cd ../
python3 -c"import ffc"
'

Just drop the first and the last line of the script above (and adjust
Python version in the site dir) to do it locally. Does that work?

Jan


On Wed, 7 Mar 2018 10:03:58 -0800 (PST)

William Wilson

unread,
Mar 7, 2018, 6:55:27 PM3/7/18
to fenics-support
I changed my model and removed the need for the --prefix and things are working much better. Now the install for dolfin is complaining about the eigen3 libraries. Trying to figure out where to get those.
Reply all
Reply to author
Forward
0 new messages