Troubleshooting (METRo)

133pages on
this wiki
Add New Page
Talk0 Share

Error in the execution of metro --selftest Edit

After writting

python metro --selftest

the following error message is produced RuntimeWarning: Python C API version mismatch for module arrayfns: This Python has API version 1011, module arrayfns has version 1012.
import arrayfns RuntimeWarning: Python C API version mismatch for module _numpy: This Python has API version 1011, module _numpy has version 1012.
 import arrayfnsTraceback (most recent call last):
 File "metro", line 14, in ?
  import metro_logger
 File "", line 6, in ?
  import metro_config
 File "", line 5, in ?
  import metro_config_validation
 File "", line 8, in ?
  import metro_date
 File "", line 7, in ?
  import W3CDate
ImportError: No module named W3CDate

Resolution Edit

This is because it is the old version of python that is loaded.

You must change the first line of the file metro. Replace

#!/usr/bin/env python



or by any other path where the required python version is installed.

When an upgrade of python is needed to have the version 2.3, the binary is copied in the directory


But, when the command "python" is written in command line, it is the old binary in


that is loaded, even if the environment variable


had the right value and that the command

which python

returns the correct path.

python is unable to find the libxml2 library Edit

The execution of code

./metro --selftest

give the following error:

* Initialising METRo
   * Auto configure METRo XML library 
[!!] Fatal error! No METRo XML library can be use.
   METRo need one of the following XML library installed on the system.
   Supported library:python-libxml2

Resolution Edit

The libxml2-python library is not installed in the right directory.

If you got this error, you surely did an upgrade of python in order to run METRo. But, when you install the libxml2-python library as specified in the installation procedure, you must use the right version of python. As an example, suppose that the binary of python 2.3 is installed in the /usr/local/bin directory, you must install the libxml2-python with the following command:

/usr/local/bin/python install

The version of libxml2-python corresponding to the version of the libxml2 installed on the computer does not exists Edit

In the installation procedure, we ask to execute the command:

ls /usr/lib | grep

and to install the version corresponding to libxml2 for the .so file. For specific versions of libxml2, the corresponding libxml2-python bindings does not always exists. For example, the following version does not exists:

  • 2.5.9
  • 2.5.10
  • 2.4.27

Resolution Edit

Install the package of the next version. If the version on the computer is 2.5.10, install the libxml2-python 2.5.11 .

There is a lot of "NewNode: something : 0x81b8148" on the standard output Edit

When executing METRo, there is a lot (more than 3000) of message beginning by NewNode:. Even if the execution of METRo seems succesful, this message is written.

Resolution Edit

It is a printf left in one particular version of libxml2.

This message is a debug printf that has been left in a release of libxml2. It has been observed in libxml2 version 2.6.17.

This does not implies that METRo does an error. There is not much to do except, maybe, change the version of libxml2 if you really, really want to get rid of it. The author would suggest to get use to see it.

More information can be found here:

When I want to compile, is not found whereas is installed Edit

This problem occurs under Ubuntu 8.10. You have to be root to be able so solve it.


  • First of all, link with in /usr/local/lib :
ln -s /usr/lib/ /usr/local/lib/
  • then use ldconfig:
  • As as root use 'locate', update the database:

Logo ec
This page is part of the documentation of the METRo software. Back to the table of content.

Ad blocker interference detected!

Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.