dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #18786
Re: Dolfin + Python: instant.recompile error
Whoops.
======================= *snip* =======================
import os
from distutils.core import setup, Extension
name = 'form_f55a0ed732d467a819b8cacd060d86f2b9674887'
swig_cmd =r'swig -python
-I/var/tmp/paludis/sci-mathematics-ufc-1.4.1/image/usr/include
-I/usr/lib64/python2.6/site-packages/instant/swig -c++ -I. -O
form_f55a0ed732d467a819b8cacd060d86f2b9674887.i'
os.system(swig_cmd)
sources = ['form_f55a0ed732d467a819b8cacd060d86f2b9674887_wrap.cxx']
setup(name = 'form_f55a0ed732d467a819b8cacd060d86f2b9674887',
ext_modules = [Extension('_' +
'form_f55a0ed732d467a819b8cacd060d86f2b9674887',
sources,
include_dirs=['/var/tmp/paludis/sci-mathematics-ufc-1.4.1/image/usr/include',
'/usr/include'],
library_dirs=[],
libraries=[] , extra_compile_args=['-O0'] )])
======================= *snap* =======================
On Wed, Jul 21, 2010 at 7:43 AM, Nico Schlömer <nico.schloemer@xxxxxxxxx> wrote:
>> Further, you should look in the
>> setup.py file.
>>
>> The swig_cmd shows you the include files passed to swig (with -I).
>
> Alright, this appears to be the problem. The contents of setup,py read
>
> ======================= *snip* =======================
>
> ======================= *snap* =======================
>
> where /var/tmp/paluds/[...] is the folder in which -- during the
> installation process -- the compilation takes place. After that, the
> generated files are actually moved to /usr/[...]. It seems that I'll
> need to tell UFC to include /usr/include/ rather than /var/tmp/[...].
>
> Is the setup.py gererated by DOLFIN or UFC? Any idea how to fix this anyway?
>
> Cheers,
> Nico
>
>
>
> On Wed, Jul 21, 2010 at 6:02 AM, Kent Andre <kent-and@xxxxxxxxx> wrote:
>>
>> Sorry, didn't see your remark on ufc later in the mail.
>> If you go to the directory
>>
>> /tmp/tmpaR40ea2010-7-20-23-30_instant/
>>
>> And have a look in the *.i file there, you will see
>> that the ufc.i file is included as:
>>
>> %}
>> %import "swig/ufc.i"
>> %pythoncode %{
>> '''
>> %}
>>
>> which means that swig needs to know where ufc.i is.
>> Further, you should look in the
>> setup.py file.
>>
>> The swig_cmd shows you the include files passed to swig (with -I).
>>
>> Somehow dolfin does not know about the ufc.i file, it seems.
>>
>> Kent
>>
>> On Tue, 2010-07-20 at 23:39 -0400, Nico Schlömer wrote:
>>> Hi all,
>>>
>>> I'm taking first steps with Dolfin here, and the first thing I did I
>>> create/update the necessary build files for Gentoo
>>> <https://bugs.gentoo.org/show_bug.cgi?id=131729>. :)
>>> Everything seems to work out alright, at least the demos show somewhat
>>> reasonable results.
>>> This is with one exception: I couldn't get the Python interface to run
>>> yet. The individual tests/demos for all the dependent libraries work
>>> out, but for, e.g., dolfin-0.9.8/demo/fem/simple/python I would get
>>> the error message
>>>
>>> ================================= *snip* =================================
>>> Calling FFC just-in-time (JIT) compiler, this may take some time.
>>> In instant.recompile: The module did not compile, see
>>> '/tmp/tmpaR40ea2010-7-20-23-30_instant/form_f55a0ed732d467a819b8cacd060d86f2b9674887/compile.log'
>>> Traceback (most recent call last):
>>> File "demo.py", line 21, in <module>
>>> V = FunctionSpace(mesh, "CG", 1)
>>> File "/usr/lib64/python2.6/site-packages/dolfin/function/functionspace.py",
>>> line 230, in __init__
>>> FunctionSpaceBase.__init__(self, mesh, element)
>>> File "/usr/lib64/python2.6/site-packages/dolfin/function/functionspace.py",
>>> line 44, in __init__
>>> ufc_element, ufc_dofmap = jit(self._ufl_element)
>>> File "/usr/lib64/python2.6/site-packages/dolfin/compilemodules/jit.py",
>>> line 44, in mpi_jit
>>> return local_jit(*args, **kwargs)
>>> File "/usr/lib64/python2.6/site-packages/dolfin/compilemodules/jit.py",
>>> line 103, in jit
>>> return jit_compile(form, parameters=p, common_cell=common_cell)
>>> File "/usr/lib64/python2.6/site-packages/ffc/jitcompiler.py", line 56, in jit
>>> return jit_element(object, parameters)
>>> File "/usr/lib64/python2.6/site-packages/ffc/jitcompiler.py", line
>>> 135, in jit_element
>>> (compiled_form, module, form_data) = jit_form(form, parameters)
>>> File "/usr/lib64/python2.6/site-packages/ffc/jitcompiler.py", line
>>> 107, in jit_form
>>> cache_dir = cache_dir)
>>> File "/usr/lib64/python2.6/site-packages/ufc_utils/build.py", line
>>> 63, in build_ufc_module
>>> **kwargs)
>>> File "/usr/lib64/python2.6/site-packages/instant/build.py", line
>>> 474, in build_module
>>> recompile(modulename, module_path, setup_name, new_compilation_checksum)
>>> File "/usr/lib64/python2.6/site-packages/instant/build.py", line
>>> 100, in recompile
>>> "compile, see '%s'" % compile_log_filename)
>>> File "/usr/lib64/python2.6/site-packages/instant/output.py", line
>>> 49, in instant_error
>>> raise RuntimeError(text)
>>> RuntimeError: In instant.recompile: The module did not compile, see
>>> '/tmp/tmpaR40ea2010-7-20-23-30_instant/form_f55a0ed732d467a819b8cacd060d86f2b9674887/compile.log'
>>> ================================= *snap* =================================
>>>
>>> The compile.log says
>>>
>>> ================================= *snip* =================================
>>> form_f55a0ed732d467a819b8cacd060d86f2b9674887.i:31: Error: Unable to
>>> find 'swig/ufc.i'
>>> running build_ext
>>> building '_form_f55a0ed732d467a819b8cacd060d86f2b9674887' extension
>>> creating build
>>> creating build/temp.linux-x86_64-2.6
>>> g++ -fPIC -I/var/tmp/paludis/sci-mathematics-ufc-1.4.1/image/usr/include
>>> -I/usr/include -I/usr/include/python2.6 -c
>>> form_f55a0ed732d467a819b8cacd060d86f2b9674887_wrap.cxx -o
>>> build/temp.linux-x86_64-2.6/form_f55a0ed732d467a819b8cacd060d86f2b9674887_wrap.o
>>> -O0
>>> g++: form_f55a0ed732d467a819b8cacd060d86f2b9674887_wrap.cxx: No such
>>> file or directory
>>> g++: no input files
>>> error: command 'g++' failed with exit status 1
>>> ================================= *snap* =================================
>>>
>>> The corresponding C++ demo in dolfin-0.9.8/demo/fem/simple/cpp works
>>> fine. I assume there's something wrong with the installation, but I
>>> have no idea what it could be. Also, the fact that it can't find the
>>> file swig.ufc.i is a bit weird as this one is located at
>>> /usr/include/swig/ufc.i in my system, i.e., a very standard path.
>>> Hints, anyone?
>>>
>>> Cheers,
>>> Nico
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~dolfin
>>> Post to : dolfin@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~dolfin
>>> More help : https://help.launchpad.net/ListHelp
>>
>>
>>
>
Follow ups
References