ImportError: [...].so: undefined symbol: PyUnicodeUCS4_AsEncodedString
Solution: supprimer les eggs concernés et les recompiler
En effet il semble bien sur le UCS de mon nouveau python est différent de l'ancien.
Les eggs précompilés (contenant des fichiers *.so) doivent être supprimés puis ré-installés/compilés en relançant le buildout (par exemple).
Exemple de commande permettant de trouver les eggs concernés:
find /home/<your-user>/.buildout/eggs/ -name '*.so' | sed -re "s:(.*/eggs/[^/]*).*:\1:g" | sort -u
Comment connaître le UCS utilisé ?
python -c "import sys; print(sys.maxunicode<66000) and 'UCS2' or 'UCS4'"
Qu'est-ce que sys.maxunicode ? Je cite: """An integer giving the largest supported code point for a Unicode character. The value of this depends on the configuration option that specifies whether Unicode characters are stored as UCS-2 or UCS-4.""" (cf. http://docs.python.org/py3k/library/sys.html#sys.maxunicode)
