did not match C++ signature

Issue #388 resolved
Mo Shan created an issue

Hi, I am trying to run the python examples in Ubuntu 16.04 with python 3.6 and boost version 1.58, but I have the following error, is there a fix to this?

File "testScenarioRunner.py", line 22, in test_loop_runner runner = gtsam.ScenarioRunner(gtsam.ScenarioPointer(scenario), params, dt) Boost.Python.ArgumentError: Python argument types in ScenarioRunner.init(ScenarioRunner, ConstantTwistScenario, PreintegrationParams, float) did not match C++ signature: init(_object, gtsam::Scenario const, boost::shared_ptr<gtsam::PreintegrationParams>, double, gtsam::imuBias::ConstantBias)

Comments (9)

  1. Frank Dellaert

    Ah, so, I think you're working with the old python wrapper. That relies on handwritten boost python code, not gtsam.h. We are not going to address any issues there ourselves, as the new cython-based wrapper is vastly more comprehensive. If you feel strongly about it, please figure out the wrapper and fix it in a PR. Otherwise, switch to the cython wrapper, try python ../cython/gtsam/examples/ImuFactorExample2.py. Note ScenarioRunner is unfortunately not yet supported as it uses pointers, might need to be refactored.

  2. Mo Shan reporter

    I see, thanks for the info! I have tried the example, but there is an error, any suggestion?

    Traceback (most recent call last): File "ImuFactorExample2.py", line 16, in <module> import gtsam.utils.plot as gtsam_plot ModuleNotFoundError: No module named 'gtsam.utils'

  3. Log in to comment