Hi,

I just did a git pull from [1]. I was getting the following build error (see (1) below) using the "distutils" method. It seems to be due to missing paths to sfepy/fem/extmods/* in sfepy/linalg/extmods, so I followed the example of sfepy/terms/extmods to put in the missing paths. This is available from [2] (it's on the master branch, should I have made a new branch for this?). It's a pretty quick fix to get the build to work, so I wouldn't be surprised if I'm overlooking something. :)

After putting in the fix, I'm getting a test failure in tests/test_permutations.py (see (2)). I figure I missed something else in the distutils configuration. The "make" build method works before and after the fix.

I know sfepy/linalg is new, so probably everything isn't in place for distutils building yet, but I thought I could at least help get the build working again. :)

Thanks!
Logan


[1] git://git.sympy.org/sfepy.git
[2] git://github.com/logansorenson/electrostatic_structural_test.git

(1)
logan@quantumdot:~/phoenix/projects/sfepy$ python setup.py build_ext --inplace                                                                               
['sfepy', '/home/logan/phoenix/projects/sfepy/sfepy', '/home/logan/phoenix/projects/sfepy', '/home/logan/phoenix/projects/sfepy', '/usr/lib/python2.5/site-packages/numpydoc-0.2-py2.5.egg', '/usr/lib/python2.5/site-packages/scikits.umfpack-5.1.0-py2.5-linux-i686.egg', '/usr/lib/python2.5', '/usr/lib/python2.5/plat-linux2', '/usr/lib/python2.5/lib-tk', '/usr/lib/python2.5/lib-dynload', '/usr/local/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages/Numeric', '/usr/lib/python2.5/site-packages/PIL', '/usr/lib/python2.5/site-packages/gst-0.10', '/usr/lib/pymodules/python2.5', '/usr/lib/pymodules/python2.5/gtk-2.0', '/usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode']                                                              
non-existing path in 'sfepy/linalg/extmods': 'common_python.c'                                                                                                                                     
non-existing path in 'sfepy/linalg/extmods': 'array.i'                                                                                                                                             
non-existing path in 'sfepy/linalg/extmods': 'common.i'                                                                                                                                            

<snip>

building extension "sfepy.linalg.extmods._rcm" sources
swig: sfepy/linalg/extmods/rcm.i
swig -python -Isfepy/linalg/extmods -o sfepy/linalg/extmods/rcm_wrap.c -outdir sfepy/linalg/extmods sfepy/linalg/extmods/rcm.i
sfepy/linalg/extmods/rcm.i:9: Error: Unable to find 'types.h'
sfepy/linalg/extmods/rcm.i:11: Error: Unable to find 'common.i'
sfepy/linalg/extmods/rcm.i:12: Error: Unable to find 'array.i'
error: command 'swig' failed with exit status 1

(2)
tests/test_permutations.py                                                                                                                                                                         
---   test_rcm: failed!

logan@quantumdot:~/phoenix/projects/sfepy$ ./runTests.py --debug tests/test_permutations.py
<<< directory: tests, test files: 1
<<< tests/test_permutations.py
sfepy: left over: ['__builtins__', '_filename', '__file__', 'TestCommon', '__name__', 'assert_', '__doc__', 'op']
>>> test instance prepared (1 test(s))
>>> <type 'exceptions.ImportError'>
Traceback (most recent call last):
  File "./runTests.py", line 226, in <module>
    main()
  File "./runTests.py", line 217, in main
    run_tests(stats, dirname, [filename])
  File "./runTests.py", line 148, in run_tests
    n_fail, n_total, test_time = run_test( conf_name, options )
  File "./runTests.py", line 111, in run_test
    ok, n_fail, n_total = test.run( options.debug )
  File "/home/logan/phoenix/projects/sfepy/sfepy/base/testing.py", line 38, in run
    ret = test_method()
  File "tests/test_permutations.py", line 11, in test_rcm
    from sfepy.linalg import rcm, permute_in_place, save_sparse_txt
  File "/home/logan/phoenix/projects/sfepy/sfepy/linalg/__init__.py", line 1, in <module>
    from extmods.rcm import rcm, permute_in_place
  File "/home/logan/phoenix/projects/sfepy/sfepy/linalg/extmods/rcm.py", line 28, in <module>
    import _rcm
ImportError: /home/logan/phoenix/projects/sfepy/sfepy/linalg/extmods/_rcm.so: undefined symbol: g_error