Having difficulties with interrogate

Hi, I’m a about to use Interrogate and I’ve run into a problem right at the beginning.

In my project in need the collection of nodes that the Pathfinder from Pandai collects and return them to a interface I have connected to Panda3d. But there was no such function, so I decided to hack together a class heavily based on the Pandai source code that would be able to return the nodes.

So after hacking together the class I had to run it through Interrogate so I could call the functions in Python.

I called Interrogate from within the project folder with this command : /interrogate -oc PathFindImpulsion_igate.cxx -od PathFindImpulsion.in -python-native PathFindImpulsion.h -v -promiscuous

Apperantly Interrogate can’t find any libraries.

PS C:\Users\Stebbib\Documents\Visual Studio 2008\Projects\ImpulsionPathfindingInterface\ImpulsionPathfindingInterface> .
/interrogate -oc PathFindImpulsion_igate.cxx -od PathFindImpulsion.in -python-native PathFindImpulsion.h -v -promiscuous

Reading PathFindImpulsion.h
  *** Warning in PathFindImpulsion.h near line 3, column 2:
  Cannot find iostream
  *** Warning in PathFindImpulsion.h near line 4, column 2:
  Cannot find string
  *** Warning in PathFindImpulsion.h near line 5, column 2:
  Cannot find pandaFramework.h
  *** Warning in PathFindImpulsion.h near line 6, column 2:
  Cannot find pandaSystem.h
  *** Warning in PathFindImpulsion.h near line 7, column 2:
  Cannot find meshNode.h
  *** Warning in PathFindImpulsion.h near line 8, column 2:
  Cannot find cmath.h
  *** Warning in PathFindImpulsion.h near line 9, column 2:
  Cannot find lineSegs.h
  *** Warning in PathFindImpulsion.h near line 10, column 2:
  Cannot find textNode.h
  *** Warning in PathFindImpulsion.h near line 11, column 2:
  Cannot find lvecBase3.h
  *** Warning in PathFindImpulsion.h near line 12, column 2:
  Cannot find nodePath.h
  *** Warning in PathFindImpulsion.h near line 14, column 2:
  Cannot find aiPathFinder.h
  *** Warning in PathFindImpulsion.h near line 18, column 1:
  Attempt to use undefined namespace: std
  *** Error in PathFindImpulsion.h near line 26, column 2:
  parse error
Error parsing file: 'PathFindImpulsion.h'

This is my .h file : pastebin.com/gufG32JZ

I think this might be a basic thing, but I have no idea what to do.

Thanks in advance

There isn’t much docs on how to use interrogate separately from the build system aside from a forum post or two, but if you really want to run it stand alone, you should try to mimic how makepanda.py does it. Specifically, look at the function CompileIgate inside makepanda.

Just a casual comparison between the commands formed by CompileIgate and your command suggest that you’re missing the -I switch which specify the include dirs.

Yeah, interrogate requires a lot more arguments than that. In your case, the specific errors are because you failed to add an -S flag to the parser-inc directory and an -I flag pointing to the Panda3D include directory.

Check out the manual page on interrogate, or even better, see how makepanda invokes it.

Thanks for the quick reply, I checked out the make file and I decided I would just add my class with the rest of the Pandai classes and compile from the source files.

That seemed to have worked, but when I try to run my a program in Panda I get this:

ImportError: DLL loader cannot find libpandaphysx.

I got these warnings when I started Compile from the source

WARNING: Could not locate thirdparty package eigen, excluding from build
WARNING: Could not locate thirdparty package awesomium, excluding from build
WARNING: Could not locate thirdparty package wx, excluding from build
WARNING: Could not locate thirdparty package wx, excluding from build
WARNING: Could not locate thirdparty package fltk, excluding from build

But I doubt they have anything to do with it.

It seems that PhysX didn’t compile and come with the installer which I made from the source.By the way I’m running on an W7.

This problem is perhaps in the wrong section of the forum now :Þ

EDIT: Okay so I was able to get it to run by adding libpandaphysx.dll,libpandaphysx.in and libpandaphysx.lib manually, still would be nice to have it in the installer.