CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM (http://www.cfd-online.com/Forums/openfoam/)
-   -   pyFoam error (http://www.cfd-online.com/Forums/openfoam/102889-pyfoam-error.html)

cnsidero June 5, 2012 14:48

pyFoam error
 
Oh where oh where art thou Bernhard ...

Having some trouble with pyFoam since upgrading from v0.5.4 to 0.5.7. When I run a pyFoam command, for example pyFoamClearCase.py, I get the following:
Code:

[user@computer case]$ pyFoamClearCase.py
Traceback (most recent call last):
  File "/usr/bin/pyFoamClearCase.py", line 3, in <module>
    from PyFoam.Applications.ClearCase import ClearCase
  File "/usr/lib/python2.6/site-packages/PyFoam/Applications/ClearCase.py", line 6, in <module>
    from PyFoamApplication import PyFoamApplication
  File "/usr/lib/python2.6/site-packages/PyFoam/Applications/PyFoamApplication.py", line 8, in <module>
    from PyFoam.Error import error,warning,FatalErrorPyFoamException
ImportError: cannot import name FatalErrorPyFoamException

I am sure the error is between the keyboard and chair but I'm not sure where to start. I installed it as root. I didn't know how to remove/uninstall v0.5.4 so I installed v0.5.7 over top (perhaps that's the issue). Let me, if/what additional info you need.

gschaider June 5, 2012 17:43

Quote:

Originally Posted by cnsidero (Post 364886)
Oh where oh where art thou Bernard ...

Sounds like a Cohen-brothers movie to me. Given the mortality of the major figures in these movies I'm not too keen to see THAT particular movie ;)

Quote:

Originally Posted by cnsidero (Post 364886)
Having some trouble with pyFoam since upgrading from v0.5.4 to 0.5.7. When I run a pyFoam command, for example pyFoamClearCase.py, I get the following:
Code:

[user@computer case]$ pyFoamClearCase.py
Traceback (most recent call last):
  File "/usr/bin/pyFoamClearCase.py", line 3, in <module>
    from PyFoam.Applications.ClearCase import ClearCase
  File "/usr/lib/python2.6/site-packages/PyFoam/Applications/ClearCase.py", line 6, in <module>
    from PyFoamApplication import PyFoamApplication
  File "/usr/lib/python2.6/site-packages/PyFoam/Applications/PyFoamApplication.py", line 8, in <module>
    from PyFoam.Error import error,warning,FatalErrorPyFoamException
ImportError: cannot import name FatalErrorPyFoamException

I am sure the error is between the keyboard and chair but I'm not sure where to start. I installed it as root. I didn't know how to remove/uninstall v0.5.4 so I installed v0.5.7 over top (perhaps that's the issue). Let me, if/what additional info you need.

Yes. FatalErrorPyFoamException was introduced in 0.5.5 so my guess is that at least PyFoam/Error.py is from the old version. Maybe also libraries from two different places are used. To check from where a library is imported go to the python shell with "python". There do

import PyFoam.Error
print PyFoam.Error

that should be in /usr/lib/python2.6/site-packages/ otherwise the "two-libraries"-theory applies.

Otherwise the cleanest way would be to remove the whole directory /usr/lib/python2.6/site-packages/PyFoam/ and reinstall (also removing /usr/bin/pyFoam* can't be a bad idea ... before reinstalling of course)

One way to avoid such problems in the future is to use the package manager of your distro to install and upgrade pyFoam. "make rpm" and "make dpkg" make packages for the two most popular package managers. For the rpm-variant you don't need additional software. dpkg needs a buch of Debian packaging tools but I don't know which (I don't have a Ubuntu/Debian system)

cnsidero June 6, 2012 08:13

Quote:

Originally Posted by gschaider (Post 364901)
Sounds like a Cohen-brothers movie to me. Given the mortality of the major figures in these movies I'm not too keen to see THAT particular movie ;)

Love Cohen-brothers movies ;-).

Quote:

Yes. FatalErrorPyFoamException was introduced in 0.5.5 so my guess is that at least PyFoam/Error.py is from the old version.
That was probably it.

Quote:

One way to avoid such problems in the future is to use the package manager of your distro to install and upgrade pyFoam. "make rpm" and "make dpkg" make packages for the two most popular package managers. For the rpm-variant you don't need additional software. dpkg needs a buch of Debian packaging tools but I don't know which (I don't have a Ubuntu/Debian system)
There is no makefile in the tarball. This did the trick for building the rpm:
Code:

$>python setup.py bdist_rpm
Once I removed everything and reinstalled, all good. Thanks for the help!

gschaider June 6, 2012 14:46

Quote:

Originally Posted by cnsidero (Post 365023)
Love Cohen-brothers movies ;-).



That was probably it.


There is no makefile in the tarball. This did the trick for building the rpm:
Code:

$>python setup.py bdist_rpm
Once I removed everything and reinstalled, all good. Thanks for the help!

Ah. Yeah. The Makefile is in the SVN repository (http://openfoamwiki.net/index.php/Co...oam#Subversion). From which the tarball was produced with setup.py. Which doesn't include the Makefile. I should look at the tarballs more often ;)


All times are GMT -4. The time now is 05:28.