Closed GoogleCodeExporter closed 9 years ago
the problem here is pymel uses a few standard python libraries - hashlib, in
this case - which don't work on certain combinations of linux distributions /
maya
To check if this is the case, fire up mayapy, and just do:
import hashlib
OR
import _md5
Generally, if these don't work it's because maya was compiled with a version of
some library - usually libcrypto.so or libssl.so - that differs than the
version on your linux distro.
When you try to import hashlib or _md5, it should print out some sort of error
message saying which version of which library it failed to find. You then need
to find a compatible version of libcrypto / libssl, and throw it in maya's lib
dir.
In one case, maya wanted libssl.so.6 and libcrypto.so.6, so I found an old
fedora 8 rpm (searched http://rpm.pbone.net/ to find
archive.fedoraproject.org/fedora/linux/releases/8/Fedora/x86_64/os/Packages/open
ssl-0.9.8b-17.fc8.x86_64.rpm). Then I extracted that rpm with
rpm2cpio openssl-0.9.8b-17.fc8.x86_64.rpm | cpio -idmv
...and placed those 2 files in maya's /lib directory. Alternatively, you can
try making a symlink from the version of libssl/libcrypto to the version maya's
looking for (if you're sure the versions are compatible).
To help alleviate such issues in the future, I recently made a commit which
moves the import of hashlib in pymel.api.plugins inside of the function which
needs it; this way, pymel as a whole should still work even if hashlib isn't...
you just won't be able to use some of pymel's plugin api functions.
Original comment by elron...@gmail.com
on 22 Jun 2012 at 1:08
My workaround here:
1) I noticed that libcrypto.so.6 and libssl.so.6 already exist in
~maya2013/lib. They are symbolics to ~maya2013/support/openssl
2) hashlib still can't get _md5 imported. After digging into
~maya2013/lib/python26.zip, I noticed that what we really need is _hashlib
instead of _md5.
3) try import _hashlib and you will noticed that what's missing is
libcrypto.so.10 and libssl.so.10
4) go to ~maya2013/lib, and do symbolic link to ~maya2013/support/ with .10
naming.
cd ~maya2013/lib
ln -sf ../support/openssl/libcrypto.so.6 libcrypto.so.10
ln -sf ../support/openssl/libssl.so.6 libssl.so.10
Original comment by drake.guan
on 31 Aug 2012 at 3:15
Marking as fixed due to the changes in 8c00e04582fc7d58cd5f5c4d81e3158893598323
Original comment by elron...@gmail.com
on 17 Sep 2012 at 4:57
Original issue reported on code.google.com by
jdb.wal...@gmail.com
on 19 Apr 2012 at 4:04