I forgot to mention that in the directory where I run ipython, there is
a ffc_form_......h file created. Here it is:
// This code conforms with the UFC specification version 2.3.0
// and was automatically generated by FFC version 1.3.0.
//
// This code was generated with the following parameters:
//
// cache_dir: ''
// convert_exceptions_to_warnings: False
// cpp_optimize: True
// cpp_optimize_flags: '-O2'
// epsilon: 1e-14
// error_control: False
// form_postfix: False
// format: 'ufc'
// log_level: 25
// log_prefix: ''
// name: 'ffc'
// no-evaluate_basis_derivatives: True
// optimize: False
// output_dir: '.'
// precision: 15
// quadrature_degree: -1
// quadrature_rule: 'auto'
// representation: 'auto'
// restrict_keyword: ''
// split: False
#ifndef __FFC_FORM_FCA4B6FFB2FC6E2E2DE21F0BD1C9DE03EA2F593C_H
#define __FFC_FORM_FCA4B6FFB2FC6E2E2DE21F0BD1C9DE03EA2F593C_H
#include <cmath>
#include <stdexcept>
#include <fstream>
#include <ufc.h>
/// This class defines the interface for a finite element.
class
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_finite_element_0:
public ufc::finite_element
{
public:
/// Constructor
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_finite_element_0() :
ufc::finite_element()
{
// Do nothing
}
/// Destructor
virtual
~ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_finite_element_0()
{
// Do nothing
}
/// Return a string identifying the finite element
virtual const char* signature() const
{
return "FiniteElement('Lagrange', Domain(Cell('triangle', 2),
'triangle_multiverse', 2, 2), 1, None)";
}
/// Return the cell shape
virtual ufc::shape cell_shape() const
{
return ufc::triangle;
}
/// Return the topological dimension of the cell shape
virtual std::size_t topological_dimension() const
{
return 2;
}
/// Return the geometric dimension of the cell shape
virtual std::size_t geometric_dimension() const
{
return 2;
}
/// Return the dimension of the finite element function space
virtual std::size_t space_dimension() const
{
return 3;
}
/// Return the rank of the value space
virtual std::size_t value_rank() const
{
return 0;
}
/// Return the dimension of the value space for axis i
virtual std::size_t value_dimension(std::size_t i) const
{
return 1;
}
/// Evaluate basis function i at given point x in cell
virtual void evaluate_basis(std::size_t i,
double* values,
const double* x,
const double* vertex_coordinates,
int cell_orientation) const
{
// Compute Jacobian
double J[4];
compute_jacobian_triangle_2d(J, vertex_coordinates);
// Compute Jacobian inverse and determinant
double K[4];
double detJ;
compute_jacobian_inverse_triangle_2d(K, detJ, J);
// Compute constants
const double C0 = vertex_coordinates[2] + vertex_coordinates[4];
const double C1 = vertex_coordinates[3] + vertex_coordinates[5];
// Get coordinates and map to the reference (FIAT) element
double X = (J[1]*(C1 - 2.0*x[1]) + J[3]*(2.0*x[0] - C0)) / detJ;
double Y = (J[0]*(2.0*x[1] - C1) + J[2]*(C0 - 2.0*x[0])) / detJ;
// Reset values
*values = 0.0;
switch (i)
{
case 0:
{
// Array of basisvalues
double basisvalues[3] = {0.0, 0.0, 0.0};
// Declare helper variables
double tmp0 = (1.0 + Y + 2.0*X)/2.0;
// Compute basisvalues
basisvalues[0] = 1.0;
basisvalues[1] = tmp0;
basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
basisvalues[0] *= std::sqrt(0.5);
basisvalues[2] *= std::sqrt(1.0);
basisvalues[1] *= std::sqrt(3.0);
// Table(s) of coefficients
static const double coefficients0[3] = \
{0.471404520791032, -0.288675134594813, -0.166666666666667};
// Compute value(s)
for (unsigned int r = 0; r < 3; r++)
{
*values += coefficients0[r]*basisvalues[r];
}// end loop over 'r'
break;
}
case 1:
{
// Array of basisvalues
double basisvalues[3] = {0.0, 0.0, 0.0};
// Declare helper variables
double tmp0 = (1.0 + Y + 2.0*X)/2.0;
// Compute basisvalues
basisvalues[0] = 1.0;
basisvalues[1] = tmp0;
basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
basisvalues[0] *= std::sqrt(0.5);
basisvalues[2] *= std::sqrt(1.0);
basisvalues[1] *= std::sqrt(3.0);
// Table(s) of coefficients
static const double coefficients0[3] = \
{0.471404520791032, 0.288675134594813, -0.166666666666667};
// Compute value(s)
for (unsigned int r = 0; r < 3; r++)
{
*values += coefficients0[r]*basisvalues[r];
}// end loop over 'r'
break;
}
case 2:
{
// Array of basisvalues
double basisvalues[3] = {0.0, 0.0, 0.0};
// Declare helper variables
double tmp0 = (1.0 + Y + 2.0*X)/2.0;
// Compute basisvalues
basisvalues[0] = 1.0;
basisvalues[1] = tmp0;
basisvalues[2] = basisvalues[0]*(0.5 + 1.5*Y);
basisvalues[0] *= std::sqrt(0.5);
basisvalues[2] *= std::sqrt(1.0);
basisvalues[1] *= std::sqrt(3.0);
// Table(s) of coefficients
static const double coefficients0[3] = \
{0.471404520791032, 0.0, 0.333333333333333};
// Compute value(s)
for (unsigned int r = 0; r < 3; r++)
{
*values += coefficients0[r]*basisvalues[r];
}// end loop over 'r'
break;
}
}
}
/// Evaluate all basis functions at given point x in cell
virtual void evaluate_basis_all(double* values,
const double* x,
const double* vertex_coordinates,
int cell_orientation) const
{
// Helper variable to hold values of a single dof.
double dof_values = 0.0;
// Loop dofs and call evaluate_basis
for (unsigned int r = 0; r < 3; r++)
{
evaluate_basis(r, &dof_values, x, vertex_coordinates,
cell_orientation);
values[r] = dof_values;
}// end loop over 'r'
}
/// Evaluate order n derivatives of basis function i at given point x
in cell
virtual void evaluate_basis_derivatives(std::size_t i,
std::size_t n,
double* values,
const double* x,
const double* vertex_coordinates,
int cell_orientation) const
{
throw std::runtime_error("// Function evaluate_basis_derivatives not
generated (compiled with -fno-evaluate_basis_derivatives)");
}
/// Evaluate order n derivatives of all basis functions at given
point x in cell
virtual void evaluate_basis_derivatives_all(std::size_t n,
double* values,
const double* x,
const double*
vertex_coordinates,
int cell_orientation) const
{
// Call evaluate_basis_all if order of derivatives is equal to zero.
if (n == 0)
{
evaluate_basis_all(values, x, vertex_coordinates, cell_orientation);
return ;
}
// Compute number of derivatives.
unsigned int num_derivatives = 1;
for (unsigned int r = 0; r < n; r++)
{
num_derivatives *= 2;
}// end loop over 'r'
// Set values equal to zero.
for (unsigned int r = 0; r < 3; r++)
{
for (unsigned int s = 0; s < num_derivatives; s++)
{
values[r*num_derivatives + s] = 0.0;
}// end loop over 's'
}// end loop over 'r'
// If order of derivatives is greater than the maximum polynomial
degree, return zeros.
if (n > 1)
{
return ;
}
// Helper variable to hold values of a single dof.
double dof_values[2];
for (unsigned int r = 0; r < 2; r++)
{
dof_values[r] = 0.0;
}// end loop over 'r'
// Loop dofs and call evaluate_basis_derivatives.
for (unsigned int r = 0; r < 3; r++)
{
evaluate_basis_derivatives(r, n, dof_values, x,
vertex_coordinates, cell_orientation);
for (unsigned int s = 0; s < num_derivatives; s++)
{
values[r*num_derivatives + s] = dof_values[s];
}// end loop over 's'
}// end loop over 'r'
}
/// Evaluate linear functional for dof i on the function f
virtual double evaluate_dof(std::size_t i,
const ufc::function& f,
const double* vertex_coordinates,
int cell_orientation,
const ufc::cell& c) const
{
// Declare variables for result of evaluation
double vals[1];
// Declare variable for physical coordinates
double y[2];
switch (i)
{
case 0:
{
y[0] = vertex_coordinates[0];
y[1] = vertex_coordinates[1];
f.evaluate(vals, y, c);
return vals[0];
break;
}
case 1:
{
y[0] = vertex_coordinates[2];
y[1] = vertex_coordinates[3];
f.evaluate(vals, y, c);
return vals[0];
break;
}
case 2:
{
y[0] = vertex_coordinates[4];
y[1] = vertex_coordinates[5];
f.evaluate(vals, y, c);
return vals[0];
break;
}
}
return 0.0;
}
/// Evaluate linear functionals for all dofs on the function f
virtual void evaluate_dofs(double* values,
const ufc::function& f,
const double* vertex_coordinates,
int cell_orientation,
const ufc::cell& c) const
{
// Declare variables for result of evaluation
double vals[1];
// Declare variable for physical coordinates
double y[2];
y[0] = vertex_coordinates[0];
y[1] = vertex_coordinates[1];
f.evaluate(vals, y, c);
values[0] = vals[0];
y[0] = vertex_coordinates[2];
y[1] = vertex_coordinates[3];
f.evaluate(vals, y, c);
values[1] = vals[0];
y[0] = vertex_coordinates[4];
y[1] = vertex_coordinates[5];
f.evaluate(vals, y, c);
values[2] = vals[0];
}
/// Interpolate vertex values from dof values
virtual void interpolate_vertex_values(double* vertex_values,
const double* dof_values,
const double* vertex_coordinates,
int cell_orientation,
const ufc::cell& c) const
{
// Evaluate function and change variables
vertex_values[0] = dof_values[0];
vertex_values[1] = dof_values[1];
vertex_values[2] = dof_values[2];
}
/// Map coordinate xhat from reference cell to coordinate x in cell
virtual void map_from_reference_cell(double* x,
const double* xhat,
const ufc::cell& c) const
{
throw std::runtime_error("map_from_reference_cell not yet
implemented.");
}
/// Map from coordinate x in cell to coordinate xhat in reference cell
virtual void map_to_reference_cell(double* xhat,
const double* x,
const ufc::cell& c) const
{
throw std::runtime_error("map_to_reference_cell not yet implemented.");
}
/// Return the number of sub elements (for a mixed element)
virtual std::size_t num_sub_elements() const
{
return 0;
}
/// Create a new finite element for sub element i (for a mixed element)
virtual ufc::finite_element* create_sub_element(std::size_t i) const
{
return 0;
}
/// Create a new class instance
virtual ufc::finite_element* create() const
{
return new
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_finite_element_0();
}
};
/// This class defines the interface for a local-to-global mapping of
/// degrees of freedom (dofs).
class ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_dofmap_0: public
ufc::dofmap
{
public:
/// Constructor
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_dofmap_0() :
ufc::dofmap()
{
// Do nothing
}
/// Destructor
virtual ~ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_dofmap_0()
{
// Do nothing
}
/// Return a string identifying the dofmap
virtual const char* signature() const
{
return "FFC dofmap for FiniteElement('Lagrange',
Domain(Cell('triangle', 2), 'triangle_multiverse', 2, 2), 1, None)";
}
/// Return true iff mesh entities of topological dimension d are needed
virtual bool needs_mesh_entities(std::size_t d) const
{
switch (d)
{
case 0:
{
return true;
break;
}
case 1:
{
return false;
break;
}
case 2:
{
return false;
break;
}
}
return false;
}
/// Return the topological dimension of the associated cell shape
virtual std::size_t topological_dimension() const
{
return 2;
}
/// Return the geometric dimension of the associated cell shape
virtual std::size_t geometric_dimension() const
{
return 2;
}
/// Return the dimension of the global finite element function space
virtual std::size_t global_dimension(const std::vector<std::size_t>&
num_global_entities) const
{
return num_global_entities[0];
}
/// Return the dimension of the local finite element function space
for a cell
virtual std::size_t local_dimension() const
{
return 3;
}
/// Return the number of dofs on each cell facet
virtual std::size_t num_facet_dofs() const
{
return 2;
}
/// Return the number of dofs associated with each cell entity of
dimension d
virtual std::size_t num_entity_dofs(std::size_t d) const
{
switch (d)
{
case 0:
{
return 1;
break;
}
case 1:
{
return 0;
break;
}
case 2:
{
return 0;
break;
}
}
return 0;
}
/// Tabulate the local-to-global mapping of dofs on a cell
virtual void tabulate_dofs(std::size_t* dofs,
const std::vector<std::size_t>&
num_global_entities,
const ufc::cell& c) const
{
dofs[0] = c.entity_indices[0][0];
dofs[1] = c.entity_indices[0][1];
dofs[2] = c.entity_indices[0][2];
}
/// Tabulate the local-to-local mapping from facet dofs to cell dofs
virtual void tabulate_facet_dofs(std::size_t* dofs,
std::size_t facet) const
{
switch (facet)
{
case 0:
{
dofs[0] = 1;
dofs[1] = 2;
break;
}
case 1:
{
dofs[0] = 0;
dofs[1] = 2;
break;
}
case 2:
{
dofs[0] = 0;
dofs[1] = 1;
break;
}
}
}
/// Tabulate the local-to-local mapping of dofs on entity (d, i)
virtual void tabulate_entity_dofs(std::size_t* dofs,
std::size_t d, std::size_t i) const
{
if (d > 2)
{
throw std::runtime_error("d is larger than dimension (2)");
}
switch (d)
{
case 0:
{
if (i > 2)
{
throw std::runtime_error("i is larger than number of entities (2)");
}
switch (i)
{
case 0:
{
dofs[0] = 0;
break;
}
case 1:
{
dofs[0] = 1;
break;
}
case 2:
{
dofs[0] = 2;
break;
}
}
break;
}
case 1:
{
break;
}
case 2:
{
break;
}
}
}
/// Tabulate the coordinates of all dofs on a cell
virtual void tabulate_coordinates(double** dof_coordinates,
const double* vertex_coordinates) const
{
dof_coordinates[0][0] = vertex_coordinates[0];
dof_coordinates[0][1] = vertex_coordinates[1];
dof_coordinates[1][0] = vertex_coordinates[2];
dof_coordinates[1][1] = vertex_coordinates[3];
dof_coordinates[2][0] = vertex_coordinates[4];
dof_coordinates[2][1] = vertex_coordinates[5];
}
/// Return the number of sub dofmaps (for a mixed element)
virtual std::size_t num_sub_dofmaps() const
{
return 0;
}
/// Create a new dofmap for sub dofmap i (for a mixed element)
virtual ufc::dofmap* create_sub_dofmap(std::size_t i) const
{
return 0;
}
/// Create a new class instance
virtual ufc::dofmap* create() const
{
return new
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_dofmap_0();
}
};
/// This class defines the interface for the tabulation of the cell
/// tensor corresponding to the local contribution to a form from
/// the integral over a cell.
class
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_cell_integral_0_otherwise:
public ufc::cell_integral
{
public:
/// Constructor
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_cell_integral_0_otherwise()
: ufc::cell_integral()
{
// Do nothing
}
/// Destructor
virtual
~ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_cell_integral_0_otherwise()
{
// Do nothing
}
/// Tabulate the tensor for the contribution from a local cell
virtual void tabulate_tensor(double* A,
const double * const * w,
const double* vertex_coordinates,
int cell_orientation) const
{
// Number of operations (multiply-add pairs) for Jacobian data: 3
// Number of operations (multiply-add pairs) for geometry tensor: 0
// Number of operations (multiply-add pairs) for tensor contraction: 1
// Total number of operations (multiply-add pairs): 4
// Compute Jacobian
double J[4];
compute_jacobian_triangle_2d(J, vertex_coordinates);
// Compute Jacobian inverse and determinant
double K[4];
double detJ;
compute_jacobian_inverse_triangle_2d(K, detJ, J);
// Set scale factor
const double det = std::abs(detJ);
// Compute geometry tensor
const double G0_ = det;
// Compute element tensor
A[0] = 0.166666666666667*G0_;
A[1] = 0.166666666666667*G0_;
A[2] = 0.166666666666667*G0_;
}
};
/// This class defines the interface for the assembly of the global
/// tensor corresponding to a form with r + n arguments, that is, a
/// mapping
///
/// a : V1 x V2 x ... Vr x W1 x W2 x ... x Wn -> R
///
/// with arguments v1, v2, ..., vr, w1, w2, ..., wn. The rank r
/// global tensor A is defined by
///
/// A = a(V1, V2, ..., Vr, w1, w2, ..., wn),
///
/// where each argument Vj represents the application to the
/// sequence of basis functions of Vj and w1, w2, ..., wn are given
/// fixed functions (coefficients).
class ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_form_0: public
ufc::form
{
public:
/// Constructor
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_form_0() : ufc::form()
{
// Do nothing
}
/// Destructor
virtual ~ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_form_0()
{
// Do nothing
}
/// Return a string identifying the form
virtual const char* signature() const
{
return
"a036a0bc5bf460925612e3b0dfa5f15a45df1c27c936b9857779882404f39c7e3dd1b02269e4ee8afb802266c1617a729ffb57d491f5491ee8b43137642b15ea";
}
/// Return the rank of the global tensor (r)
virtual std::size_t rank() const
{
return 1;
}
/// Return the number of coefficients (n)
virtual std::size_t num_coefficients() const
{
return 0;
}
/// Return the number of cell domains
virtual std::size_t num_cell_domains() const
{
return 0;
}
/// Return the number of exterior facet domains
virtual std::size_t num_exterior_facet_domains() const
{
return 0;
}
/// Return the number of interior facet domains
virtual std::size_t num_interior_facet_domains() const
{
return 0;
}
/// Return the number of point domains
virtual std::size_t num_point_domains() const
{
return 0;
}
/// Return whether the form has any cell integrals
virtual bool has_cell_integrals() const
{
return true;
}
/// Return whether the form has any exterior facet integrals
virtual bool has_exterior_facet_integrals() const
{
return false;
}
/// Return whether the form has any interior facet integrals
virtual bool has_interior_facet_integrals() const
{
return false;
}
/// Return whether the form has any point integrals
virtual bool has_point_integrals() const
{
return false;
}
/// Create a new finite element for argument function i
virtual ufc::finite_element* create_finite_element(std::size_t i) const
{
switch (i)
{
case 0:
{
return new
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_finite_element_0();
break;
}
}
return 0;
}
/// Create a new dofmap for argument function i
virtual ufc::dofmap* create_dofmap(std::size_t i) const
{
switch (i)
{
case 0:
{
return new
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_dofmap_0();
break;
}
}
return 0;
}
/// Create a new cell integral on sub domain i
virtual ufc::cell_integral* create_cell_integral(std::size_t i) const
{
return 0;
}
/// Create a new exterior facet integral on sub domain i
virtual ufc::exterior_facet_integral*
create_exterior_facet_integral(std::size_t i) const
{
return 0;
}
/// Create a new interior facet integral on sub domain i
virtual ufc::interior_facet_integral*
create_interior_facet_integral(std::size_t i) const
{
return 0;
}
/// Create a new point integral on sub domain i
virtual ufc::point_integral* create_point_integral(std::size_t i) const
{
return 0;
}
/// Create a new cell integral on everywhere else
virtual ufc::cell_integral* create_default_cell_integral() const
{
return new
ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c_cell_integral_0_otherwise();
}
/// Create a new exterior facet integral on everywhere else
virtual ufc::exterior_facet_integral*
create_default_exterior_facet_integral() const
{
return 0;
}
/// Create a new interior facet integral on everywhere else
virtual ufc::interior_facet_integral*
create_default_interior_facet_integral() const
{
return 0;
}
/// Create a new point integral on everywhere else
virtual ufc::point_integral* create_default_point_integral() const
{
return 0;
}
};
#endif
On 10/23/2014 05:42 AM, Jan Blechta wrote:
On Thu, 23 Oct 2014 01:41:30 -0500
Ben Crestel <[email protected]> wrote:
I installed Fenics on Ubuntu 14.04 via the command line (sudo apt-get
install fenics) w/o adding a specific ppa before (this gives me
dolfin version 1.3.0).
Next I open ipython then type:
from dolfin import *
mesh = UnitSquareMesh(10,10)
V = FunctionSpace(mesh, 'Lagrange', 1)
And I get the following error message:
Calling FFC just-in-time (JIT) compiler, this may take some time.
In instant.recompile: The module did not compile with command 'make
VERBOSE=1', see
'/home/ben/.instant/error/ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c/compile.log'
Everything was working fine a couple of weeks ago. I then tried to
compile Fenics from source. It didn't work completely and I decided
to revert to the initial working state I had. But unsuccessfully....
If you were installing from source
to /usr[/local]/{lib,bin,include,share} (or any other directories in
PATH, LD_LIBRARY_PATH, PYTHONPATH) you may need to clean it up to
prevent clashes with packaged version.
Then follow the instructions here
http://fenicsproject.org/download/ubuntu_details.html#ubuntu-ppa
It's getting really frustrating. I hope someone has an idea on how to
fix that.
Thanks,
Ben
P.S: The file mentioned in the error message is rather long. But here
are the first few lines and the last few lines:
We need first ten twenty lines from first line where 'error' occurs.
Jan
-- The C compiler identification is GNU 4.8.2
-- The CXX compiler identification is GNU 4.8.2
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Found SWIG: /usr/bin/swig2.0 (found version "2.0.11")
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:
DEBUG
.......
/usr/local/include/ufc.h:435:25: note: virtual std::size_t
ufc::form::original_coefficient_position(std::size_t) const
virtual std::size_t original_coefficient_position(std::size_t
i) const = 0;
^
/usr/local/include/ufc.h:456:25: note: virtual std::size_t
ufc::form::num_custom_domains() const
virtual std::size_t num_custom_domains() const = 0;
^
/usr/local/include/ufc.h:471:18: note: virtual bool
ufc::form::has_custom_integrals() const
virtual bool has_custom_integrals() const = 0;
^
/usr/local/include/ufc.h:494:30: note: virtual ufc::custom_integral*
ufc::form::create_custom_integral(std::size_t) const
virtual custom_integral* create_custom_integral(std::size_t i)
const = 0;
^
/usr/local/include/ufc.h:511:30: note: virtual ufc::custom_integral*
ufc::form::create_default_custom_integral() const
virtual custom_integral* create_default_custom_integral() const
= 0; ^
make[2]: ***
[CMakeFiles/_ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c.dir/ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593cPYTHON_wrap.cxx.o]
Error 1
make[2]: Leaving directory
`/tmp/tmpgD2U432014-10-23-01-28_instant_42ab166e7e6f10680af12bbaf5e4acce93ae0c93/ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c'
make[1]: ***
[CMakeFiles/_ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c.dir/all]
Error 2
make[1]: Leaving directory
`/tmp/tmpgD2U432014-10-23-01-28_instant_42ab166e7e6f10680af12bbaf5e4acce93ae0c93/ffc_form_fca4b6ffb2fc6e2e2de21f0bd1c9de03ea2f593c'
make: *** [all] Error 2
_______________________________________________
fenics-support mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics-support
_______________________________________________
fenics-support mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics-support