Thanks for your reply,

I realize my original post could have been more clear--a majority of the 
errors are these standard libraries being unable to be found. However, 
these aren't the only unfound files; some header files from Chrono and 
Eigen also cannot be found (I'll put the full list below, it's long). I do 
have the directory for Eigen in my PATH, so I am not sure this is the 
issue. 

I think my issue is similar to the one on this stack overflow post 
(https://stackoverflow.com/questions/47073863/swig-error-unable-to-find-stdexcept)
 
except I am trying to build the project with CMake and not through the 
command line. Because of this, I am not sure how to translate the (limited) 
answer on the post to CMake files. I feel like I am already including many 
of these in the .i and CMake files that I have?

Also, correct me if I'm wrong, but since these are standard C++ libraries, 
I don't think I have a lib file for them on my machine? 

Thanks for taking the time to reply, I really appreciate it :)
-Zuriah

Full list of errors when trying to build project:
Build started...
1>------ Build started: Project: HydroChrono_python_hydro_forces, 
Configuration: Release x64 ------
1>Swig compile hydro_forces.i for python
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\solver\ChSolver.h(18): 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChApiCE.h(16): 
error : Unable to find 'cstddef'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChClassFactory.h(33):
 
error : Unable to find 'cstdio'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChClassFactory.h(34):
 
error : Unable to find 'string'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChClassFactory.h(35):
 
error : Unable to find 'typeinfo'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChClassFactory.h(36):
 
error : Unable to find 'typeindex'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChClassFactory.h(37):
 
error : Unable to find 'unordered_map'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChLog.h(17): 
error : Unable to find 'cassert'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChStream.h(16): 
error : Unable to find 'cstdio'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChStream.h(17): 
error : Unable to find 'cstring'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChStream.h(18): 
error : Unable to find 'cassert'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChStream.h(19): 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChStream.h(20): 
error : Unable to find 'iostream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChStream.h(21): 
error : Unable to find 'fstream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChStream.h(22): 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChStream.h(23): 
error : Unable to find 'ios'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChException.h(18): 
error : Unable to find 'string'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\serialization\ChArchive.h(16):
 
error : Unable to find 'string'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\serialization\ChArchive.h(17):
 
error : Unable to find 'sstream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\serialization\ChArchive.h(18):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\serialization\ChArchive.h(19):
 
error : Unable to find 'list'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\serialization\ChArchive.h(20):
 
error : Unable to find 'typeinfo'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\serialization\ChArchive.h(21):
 
error : Unable to find 'unordered_set'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\serialization\ChArchive.h(22):
 
error : Unable to find 'memory'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\serialization\ChArchive.h(23):
 
error : Unable to find 'algorithm'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\src\Core\util\Macros.h(679):
 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\src\Core\util\ConfigureVectorization.h(53):
 
error : CPP #error "Please tell me what is the equivalent of alignas(n) and 
alignof(x) for your compiler". Use the -cpperraswarn option to continue 
swig processing.
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(50): error : 
Unable to find 'complex'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(79): error : 
Unable to find 'cerrno'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(81): error : 
Unable to find 'cstddef'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(82): error : 
Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(83): error : 
Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(84): error : 
Unable to find 'cassert'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(85): error : 
Unable to find 'functional'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(86): error : 
Unable to find 'sstream'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(88): error : 
Unable to find 'iosfwd'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(90): error : 
Unable to find 'cstring'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(91): error : 
Unable to find 'string'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(92): error : 
Unable to find 'limits'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(93): error : 
Unable to find 'climits'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Core(95): error : 
Unable to find 'algorithm'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\src\Core\util\Meta.h(49): 
error : Unable to find 'stdint.h'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\src\Core\arch\Default\Half.h(39):
 
error : Unable to find 'sstream'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\src\Core\Ref.h(113): 
error : Macro 'EIGEN_STATIC_ASSERT' expects 2 arguments
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\Geometry(15): error : 
Unable to find 'limits'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\SparseCore(15): error 
: Unable to find 'vector'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\SparseCore(16): error 
: Unable to find 'map'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\SparseCore(17): error 
: Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\SparseCore(18): error 
: Unable to find 'cstring'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\SparseCore(19): error 
: Unable to find 'algorithm'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\src\IterativeLinearSolvers\IncompleteCholesky.h(14):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\Eigen\src\IterativeLinearSolvers\IncompleteCholesky.h(15):
 
error : Unable to find 'list'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChTypes.h(18): 
error : Unable to find 'memory'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\solver\ChSystemDescriptor.h(18):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(13):
 
error : Unable to find '..\..\Eigen\Sparse'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(14):
 
error : Unable to find '..\..\Eigen\Jacobi'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(15):
 
error : Unable to find '..\..\Eigen\Householder'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(34):
 
error : Unable to find '..\..\Eigen\src\Core\util\DisableStupidWarnings.h'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(37):
 
error : Unable to find 'src\IterativeSolvers\IterationController.h'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(38):
 
error : Unable to find 'src\IterativeSolvers\ConstrainedConjGrad.h'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(41):
 
error : Unable to find 'src\IterativeSolvers\IncompleteLU.h'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(42):
 
error : Unable to find 'src\IterativeSolvers\GMRES.h'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(43):
 
error : Unable to find 'src\IterativeSolvers\DGMRES.h'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(45):
 
error : Unable to find 'src\IterativeSolvers\MINRES.h'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(46):
 
error : Unable to find 'src\IterativeSolvers\IDRS.h'
1>C:/Users/ZQUINTON/code/libraries/eigen-3.4.0\unsupported\Eigen\IterativeSolvers(48):
 
error : Unable to find '..\..\Eigen\src\Core\util\ReenableStupidWarnings.h'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\timestepper\ChTimestepper.h(18):
 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChMathematics.h(16): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChMathematics.h(17): 
error : Unable to find 'cfloat'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChMathematics.h(18): 
error : Unable to find 'cassert'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChVector.h(18): 
error : Unable to find 'algorithm'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChVector.h(19): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChVector.h(20): 
error : Unable to find 'limits'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChQuaternion.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChQuaternion.h(19): 
error : Unable to find 'algorithm'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChQuaternion.h(20): 
error : Unable to find 'limits'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChMatrix33.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\timestepper\ChIntegrable.h(18):
 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\timestepper\ChState.h(18):
 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChForce.h(18): 
error : Unable to find 'cfloat'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChForce.h(19): 
error : Unable to find 'memory.h'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChForce.h(20): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChForce.h(21): 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChForce.h(22): 
error : Unable to find 'iostream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChForce.h(23): 
error : Unable to find 'string'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\motion_functions\ChFunction_Base.h(18):
 
error : Unable to find 'memory.h'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\motion_functions\ChFunction_Base.h(19):
 
error : Unable to find 'cfloat'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\motion_functions\ChFunction_Base.h(20):
 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\motion_functions\ChFunction_Base.h(21):
 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\motion_functions\ChFunction_Base.h(22):
 
error : Unable to find 'cstring'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\motion_functions\ChFunction_Base.h(23):
 
error : Unable to find 'list'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChVector2.h(22): 
error : Unable to find 'algorithm'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChVector2.h(23): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChVector2.h(24): 
error : Unable to find 'limits'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\motion_functions\ChFunction_Recorder.h(18):
 
error : Unable to find 'iterator'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\motion_functions\ChFunction_Recorder.h(19):
 
error : Unable to find 'list'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\motion_functions\ChFunction_Sequence.h(18):
 
error : Unable to find 'list'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChObject.h(18): 
error : Unable to find 'cfloat'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChObject.h(19): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChObject.h(20): 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChObject.h(21): 
error : Unable to find 'iostream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChObject.h(22): 
error : Unable to find 'memory'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChObject.h(23): 
error : Unable to find 'string'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChObject.h(28): 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChQuadrature.h(18): 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\collision\ChCollisionModel.h(22):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChLinePath.h(18):
 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChLine.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChGeometry.h(18):
 
error : Unable to find 'memory'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChTriangleMesh.h(18):
 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChTriangle.h(18):
 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChMaterialSurface.h(18):
 
error : Unable to find 'algorithm'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChBody.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChMarker.h(18): 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChMarker.h(19): 
error : Unable to find 'iostream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChSystem.h(18): 
error : Unable to find 'cfloat'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChSystem.h(19): 
error : Unable to find 'memory'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChSystem.h(20): 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChSystem.h(21): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChSystem.h(22): 
error : Unable to find 'cstring'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChSystem.h(23): 
error : Unable to find 'iostream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChSystem.h(24): 
error : Unable to find 'list'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChGlobal.h(16): 
error : Unable to find 'string'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChTimer.h(29): 
error : Unable to find 'ratio'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChTimer.h(30): 
error : Unable to find 'chrono'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChAssembly.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\fea\ChMesh.h(18): 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\fea\ChMesh.h(19): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChTensors.h(21): 
error : Unable to find 'cstdlib'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChTensors.h(22): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChLinkForce.h(18):
 
error : Unable to find 'cfloat'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChLinkForce.h(19):
 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChLinkMask.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChLinkMask.h(19): 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChLineSegment.h(18):
 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChContactContainer.h(23):
 
error : Unable to find 'list'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\physics\ChContactContainer.h(24):
 
error : Unable to find 'unordered_map'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\collision\ChCollisionModelBullet.h(21):
 
error : Unable to find 'memory'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\collision\ChCollisionModelBullet.h(22):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src/chrono/collision/bullet\LinearMath\cbtScalar.h(23):
 
error : Unable to find 'math.h'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src/chrono/collision/bullet\LinearMath\cbtScalar.h(24):
 
error : Unable to find 'stdlib.h'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src/chrono/collision/bullet\LinearMath\cbtScalar.h(25):
 
error : Unable to find 'float.h'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src/chrono/collision/bullet\LinearMath\cbtScalar.h(269):
 
error : Unable to find 'assert.h'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src/chrono/collision/bullet\LinearMath\cbtMatrix3x3.h(20):
 
error : Unable to find 'stdio.h'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src/chrono/collision/bullet\LinearMath\cbtAlignedObjectArray.h(38):
 
error : Unable to find 'new'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChTriangleMeshConnected.h(18):
 
error : Unable to find 'array'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChTriangleMeshConnected.h(19):
 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChTriangleMeshConnected.h(20):
 
error : Unable to find 'map'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\fea\ChMeshFileLoader.h(20):
 
error : Unable to find 'map'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\fea\ChElementShellANCF_3423.h(20):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\fea\ChElementShellBST.h(21):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\fea\ChElementShellBST.h(22):
 
error : Unable to find 'array'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\fea\ChMaterialShellKirchhoff.h(20):
 
error : Unable to find 'array'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\fea\ChMaterialShellKirchhoff.h(21):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_irrlicht\ChIrrAppInterface.h(16):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\IrrCompileConfig.h(17):
 
error : Unable to find 'stdio.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrTypes.h(114): 
error : Unable to find 'wchar.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrMath.h(10): 
error : Unable to find 'math.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrMath.h(11): 
error : Unable to find 'float.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrMath.h(12): 
error : Unable to find 'stdlib.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrMath.h(13): 
error : Unable to find 'limits.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrAllocator.h(9): 
error : Unable to find 'new'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrAllocator.h(11): 
error : Unable to find 'memory.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrString.h(11): 
error : Unable to find 'stdio.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrString.h(12): 
error : Unable to find 'string.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrString.h(13): 
error : Unable to find 'stdlib.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrXML.h(8): 
error : Unable to find 'stdio.h'
1>C:/Users/ZQUINTON/code/libraries/irrlicht-1.8.4/include\irrpack.h(37): 
error : CPP #error "compiler not supported". Use the -cpperraswarn option 
to continue swig processing.
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\core\ChRealtimeStep.h(18):
 
error : Unable to find 'limits'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_irrlicht\ChIrrTools.h(16):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_postprocess\ChPovRay.h(18):
 
error : Unable to find 'fstream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_postprocess\ChPovRay.h(19):
 
error : Unable to find 'sstream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_postprocess\ChPovRay.h(20):
 
error : Unable to find 'string'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_postprocess\ChPovRay.h(21):
 
error : Unable to find 'unordered_map'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_postprocess\ChPostProcessBase.h(18):
 
error : Unable to find 'fstream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_postprocess\ChPostProcessBase.h(19):
 
error : Unable to find 'string'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_postprocess\ChPostProcessBase.h(20):
 
error : Unable to find 'sstream'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono_irrlicht\ChIrrAssetConverter.h(16):
 
error : Unable to find 'string'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChBox.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChVolume.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\assets\ChTriangleMeshShape.h(18):
 
error : Unable to find 'vector'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChLineArc.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/chrono_dev/chrono/src\chrono\geometry\ChSurface.h(18): 
error : Unable to find 'cmath'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5public.h(38):
 
error : Unable to find 'sys\types.h'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5public.h(41):
 
error : Unable to find 'limits.h'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5public.h(42):
 
error : Unable to find 'stdarg.h'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5public.h(50):
 
error : Unable to find 'stdint.h'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5public.h(54):
 
error : Unable to find 'inttypes.h'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5public.h(57):
 
error : Unable to find 'stddef.h'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5public.h(227):
 
error : Unable to find 'stdbool.h'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5Epublic.h(20):
 
error : Unable to find 'stdio.h'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5Gpublic.h(28):
 
error : Unable to find 'sys\types.h'
1>C:/Users/ZQUINTON/code/libraries/CMake-hdf5-1.10.8/CMake-hdf5-1.10.8/build/HDF5-1.10.8-win64/HDF5-1.10.8-win64/include\H5Exception.h(18):
 
error : Unable to find 'string'
1>C:\Users\ZQUINTON\code\HydroChrono\swig\hydro_forces.i(84): error : 
Unable to find 'vector'

On Monday, July 25, 2022 at 10:43:49 AM UTC-7 Zuriah Quinton wrote:

> Hello,
>
>  
>
> I've been working on developing a small library in C++ that uses Project 
> Chrono, however I want to be able to use this library with PyChrono. I’ve 
> been having some trouble linking everything, and I hope you can help.
>
>  
>
> Here’s a summary of my current issue/what I’ve tried so far… Seeing as 
> PyChrono is made with the help of SWIG, I tried to mimic the set up for my 
> library: I am using CMake and Visual Studio 2019 to 
> configure/generate/build a solution. So far, I have been able to 
> successfully generate a Python library for a test function in my header 
> file that requires no Project Chrono dependencies. I have done this with 
> CMake files in a similar way to how Project Chrono generates PyChrono with 
> SWIG. For the next step, I tried generating the python code for a function 
> that takes a chrono::ChBody object as an argument. Now that some Project 
> Chrono files are required, when I try to build my project, Visual Studio 
> gives many errors about being unable to find many of the standard C++ 
> libraries (cstdio, string, vector, iostream, etc) and cites where they are 
> included in Chrono header files as the offending lines (screenshot below). 
>
>  
>
> Do you have any advice on how to properly link my library/SWIG files to 
> Project Chrono/PyChrono? I tried writing out a minimal example below, but 
> the full project is available on GitHub here (
> https://github.com/zur-quin/HydroChrono/tree/add_python 
> <https://gcc02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fzur-quin%2FHydroChrono%2Ftree%2Fadd_python&data=05%7C01%7CZuriah.Quinton%40nrel.gov%7C6a4adb8136e741b4a4a008da6cb873c9%7Ca0f29d7e28cd4f5484427885aee7c080%7C0%7C0%7C637941837158357539%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C2000%7C%7C%7C&sdata=kbAEzbGbw5qWqZ1dq9Q2ipUd4k17tix%2Bo7b7fbj7co4%3D&reserved=0>)
>  
> for your reference.
>
>  
>
> Thanks in advance for any advice you have!
>
>  
>
> Best, 
>
> Zuriah Quinton
>
> Researcher I-Software Engineering | Water Power R&D
>
>  
>
> National Renewable Energy Laboratory (NREL)
> 15013 Denver West Parkway | Golden, CO 80401
>
> [email protected] | www.nrel.gov
>
>  
>
>  
>
>
> --------------------------------------------------------------------------------------------------------------------------------------
>
> // header file "hydro_forces.h"
>
> // includes for all required Project Chrono .h files 
>
> #include <vector>
>
> #include "chrono/solver/ChSolverPMINRES.h"
>
> #include "chrono/solver/ChIterativeSolverLS.h"
>
> #include "chrono/timestepper/ChTimestepper.h"
>
> #include "chrono/physics/ChForce.h"
>
> #include "chrono/physics/ChLoadContainer.h"
>
> #include "chrono/physics/ChLoadsBody.h"
>
> #include "chrono/physics/ChSystemNSC.h"
>
> #include "chrono/physics/ChBody.h"
>
> #include "chrono/physics/ChBodyEasy.h"
>
> #include "chrono/fea/ChMeshFileLoader.h"
>
> #include "chrono/assets/ChPointPointDrawing.h"
>
> #include "chrono_irrlicht/ChIrrApp.h"
>
> #include "chrono_irrlicht/ChIrrMeshTools.h"
>
> #include "H5Cpp.h"
>
>  
>
> using namespace chrono;
>
> using namespace chrono::irrlicht;
>
> using namespace chrono::fea;
>
>  
>
> void testFunctionNoChrono();
>
> void testFunctionChrono(std::shared_ptr<chrono::ChBody> b);
>
>
> --------------------------------------------------------------------------------------------------------------------------------------
>
> // cpp file "hydro_forces.cpp"
>
> #include "hydro_forces.h"
>
>  
>
> void testFunctionChrono(std::shared_ptr<chrono::ChBody> b) {
>
>               std::cout << "this is a test" << std::endl;
>
> }
>
>
> --------------------------------------------------------------------------------------------------------------------------------------
>
> // swig's .i interface file with more care
>
> // hydro_forces.i - SWIG interface
>
>  
>
> %module hydro_forces
>
>  
>
> // Include other .i configuration files for SWIG. 
>
> // These are divided in many .i files, each per a
>
> // different c++ class, when possible.
>
>  
>
> %include "std_string.i"
>
> %include "std_vector.i"
>
> %include "typemaps.i"
>
>  
>
> // Turn on the exception handling to intercept C++ exceptions
>
> %include "exception.i"
>
>  
>
> %exception {
>
>   try {
>
>     $action
>
>   } catch (const std::exception& e) {
>
>     SWIG_exception(SWIG_RuntimeError, e.what());
>
>   }
>
> }
>
>  
>
> // For optional downcasting of polimorphic objects:, note 
> "chrono_downcast.i" is coppied into project file
>
> %include "chrono_downcast.i" 
>
>  
>
> // For supporting shared pointers:
>
> %include <std_shared_ptr.i>
>
>  
>
> // Include C++ headers...
>
> %{
>
>  
>
> #include <vector>
>
> #include "chrono/solver/ChSolverPMINRES.h"
>
> #include "chrono/solver/ChIterativeSolverLS.h"
>
> #include "chrono/timestepper/ChTimestepper.h"
>
> #include "chrono/physics/ChForce.h"
>
> #include "chrono/physics/ChLoadContainer.h"
>
> #include "chrono/physics/ChLoadsBody.h"
>
> #include "chrono/physics/ChSystemNSC.h"
>
> #include "chrono/physics/ChBody.h"
>
> #include "chrono/physics/ChBodyEasy.h"
>
> #include "chrono/fea/ChMeshFileLoader.h"
>
> #include "chrono/assets/ChPointPointDrawing.h"
>
> #include "chrono_irrlicht/ChIrrApp.h"
>
> #include "chrono_irrlicht/ChIrrMeshTools.h"
>
> #include "H5Cpp.h"
>
>  
>
> using namespace chrono;
>
> using namespace chrono::irrlicht;
>
> using namespace chrono::fea;
>
>  
>
> %}
>
>  
>
> %include "../hydro_forces.h"
>
> %include <vector>
>
> %include "chrono/solver/ChSolverPMINRES.h"
>
> %include "chrono/solver/ChIterativeSolverLS.h"
>
> %include "chrono/timestepper/ChTimestepper.h"
>
> %include "chrono/physics/ChForce.h"
>
> %include "chrono/physics/ChLoadContainer.h"
>
> %include "chrono/physics/ChLoadsBody.h"
>
> %include "chrono/physics/ChSystemNSC.h"
>
> %include "chrono/physics/ChBody.h"
>
> %include "chrono/physics/ChBodyEasy.h"
>
> %include "chrono/fea/ChMeshFileLoader.h"
>
> %include "chrono/assets/ChPointPointDrawing.h"
>
> %include "chrono_irrlicht/ChIrrApp.h"
>
> %include "chrono_irrlicht/ChIrrMeshTools.h"
>
> %include "H5Cpp.h"
>
>  
>
>
> --------------------------------------------------------------------------------------------------------------------------------------
>
> #cmake for swig file (c++ library compiled in separate cmake file that 
> calls this one)
>
>  
>
> mark_as_advanced(CLEAR SWIG_EXECUTABLE) 
>
>  
>
> # set package name
>
> set(HYDROPY_PACKAGENAME py_hydrochrono)
>
>  
>
> find_package(PythonLibs)
>
> set(Python_ADDITIONAL_VERSIONS 3.4)
>
> find_package(Python3 REQUIRED)
>
>  
>
> get_filename_component(HYDRO_PYTHONDIR "${PYTHON_EXECUTABLE}" PATH)
>
> set(HYDRO_PYTHONINC "${PYTHON_INCLUDE_DIR}")
>
> set(HYDRO_PYTHONLIB "${PYTHON_LIBRARIES}")
>
>  
>
> set(HYDRO_PYTHONDIR  "${HYDRO_PYTHONDIR}"  PARENT_SCOPE)
>
> set(HYDRO_PYTHONINC  "${HYDRO_PYTHONINC}"  PARENT_SCOPE)
>
> set(HYDRO_PYTHONLIB  "${HYDRO_PYTHONLIB}"  PARENT_SCOPE)
>
>  
>
> include_directories(${HYDRO_PYTHONINC})
>
>  
>
> find_package(SWIG REQUIRED)
>
> include(${SWIG_USE_FILE})
>
>  
>
> SET(CMAKE_SWIG_FLAGS "") 
>
> SET_SOURCE_FILES_PROPERTIES(hydro_forces.i PROPERTIES CPLUSPLUS ON)
>
> SET_SOURCE_FILES_PROPERTIES(hydro_forces.i PROPERTIES SWIG_FLAGS 
> "-includeall")
>
>  
>
> # optionally set swig locations here 
>
> set(CMAKE_SWIG_OUTDIR "${PROJECT_BINARY_DIR}/hydrochrono_python")
>
>  
>
> set(HYDROPY hydro_forces)
>
>  
>
> # interface files 
>
> set(HYDROPY_MODULE_FILE
>
>     hydro_forces.i
>
>     )
>
>  
>
> SWIG_ADD_LIBRARY(${HYDROPY} TYPE SHARED LANGUAGE python SOURCES 
> ${HYDROPY_MODULE_FILE})
>
> target_include_directories(${HYDROPY} PRIVATE ${HYDRO_PYTHONINC})
>
> SWIG_LINK_LIBRARIES(${HYDROPY} ${PYTHON_LIBRARIES} ${LINK_LIBS} 
> HydroChrono)
>
>  
>
> set_target_properties(${SWIG_MODULE_${HYDROPY}_REAL_NAME} PROPERTIES
>
>                       PROJECT_LABEL "HydroChrono_python_${HYDROPY}"
>
>                       OUTPUT_NAME   "${SWIG_MODULE_${HYDROPY}_REAL_NAME}"
>
>                       LIBRARY_OUTPUT_DIRECTORY "${EXECUTABLE_OUTPUT_PATH}"
>
>                       )
>
>  
>
> set_property(TARGET ${HYDROPY} PROPERTY 
> SWIG_USE_TARGET_INCLUDE_DIRECTORIES TRUE)
>
> ADD_DEPENDENCIES(${SWIG_MODULE_${HYDROPY}_REAL_NAME} HydroChrono)
>
>  
>
>  
>
>  
>

-- 
You received this message because you are subscribed to the Google Groups 
"ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/projectchrono/34fe2449-1124-4fc0-9bb4-3daafc5755b3n%40googlegroups.com.

Reply via email to