hmazhar / physbam_public

A modified version of the public physbam repo to support using Cmake and newer Gcc compilers
30 stars 13 forks source link

linux gcc 4.7 linker issues #3

Open jonathantompson opened 9 years ago

jonathantompson commented 9 years ago

I get failures when linking smoke executable. Sorry for the large dump, but here is the compiler output:

[100%] [100%] [100%] Building CXX object Projects/CMakeFiles/smoke.dir/user_projects/Smoke/SMOKE_DRIVER.cpp.o
Building CXX object Projects/CMakeFiles/smoke.dir/user_projects/Smoke/SMOKE_EXAMPLE.cpp.o
Building CXX object Projects/CMakeFiles/smoke.dir/user_projects/Smoke/main.cpp.o
Linking CXX executable smoke
../PhysBAM_Tools/libPhysBAM_Tools.a(LAPLACE_UNIFORM.cpp.o): In function `PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 1> > >::Find_A(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> >&)':
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM15LAPLACE_UNIFORMINS_4GRIDINS_6VECTORIfLi1EEEEEE6Find_AERNS_5RANGEINS2_IiLi1EEEEERNS_5ARRAYINS_22SPARSE_MATRIX_FLAT_NXNIfEEiEERNSA_INS_9VECTOR_NDIfEEiEERKNSA_IiS7_EERSJ_[PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 1> > >::Find_A(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> >&)]+0x1d4): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Set_Row_Lengths(PhysBAM::ARRAY<int, int> const&)'
../PhysBAM_Tools/libPhysBAM_Tools.a(LAPLACE_UNIFORM.cpp.o): In function `PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 1> > >::Solve_Subregion(PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR<int, 1>, int>&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, int, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> >*)':
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM15LAPLACE_UNIFORMINS_4GRIDINS_6VECTORIfLi1EEEEEE15Solve_SubregionERNS_5ARRAYINS_8INTERVALIiEEiEERNS6_IS9_iEERNS6_INS2_IiLi1EEEiEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEEiPNS6_IiSD_EE[PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 1> > >::Solve_Subregion(PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR<int, 1>, int>&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, int, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> >*)]+0x50): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Negate()'
../PhysBAM_Tools/libPhysBAM_Tools.a(LAPLACE_UNIFORM.cpp.o): In function `PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 2> > >::Find_A(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> >&)':
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM15LAPLACE_UNIFORMINS_4GRIDINS_6VECTORIfLi2EEEEEE6Find_AERNS_5RANGEINS2_IiLi2EEEEERNS_5ARRAYINS_22SPARSE_MATRIX_FLAT_NXNIfEEiEERNSA_INS_9VECTOR_NDIfEEiEERKNSA_IiNS2_IiLi1EEEEERNSA_IiS7_EE[PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 2> > >::Find_A(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> >&)]+0x1da): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Set_Row_Lengths(PhysBAM::ARRAY<int, int> const&)'
../PhysBAM_Tools/libPhysBAM_Tools.a(LAPLACE_UNIFORM.cpp.o): In function `PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 2> > >::Solve_Subregion(PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR<int, 2>, int>&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, int, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> >*)':
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM15LAPLACE_UNIFORMINS_4GRIDINS_6VECTORIfLi2EEEEEE15Solve_SubregionERNS_5ARRAYINS_8INTERVALIiEEiEERNS6_IS9_iEERNS6_INS2_IiLi2EEEiEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEEiPNS6_IiSD_EE[PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 2> > >::Solve_Subregion(PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR<int, 2>, int>&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, int, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> >*)]+0x50): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Negate()'
../PhysBAM_Tools/libPhysBAM_Tools.a(LAPLACE_UNIFORM.cpp.o): In function `PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 3> > >::Find_A(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> >&)':
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM15LAPLACE_UNIFORMINS_4GRIDINS_6VECTORIfLi3EEEEEE6Find_AERNS_5RANGEINS2_IiLi3EEEEERNS_5ARRAYINS_22SPARSE_MATRIX_FLAT_NXNIfEEiEERNSA_INS_9VECTOR_NDIfEEiEERKNSA_IiNS2_IiLi1EEEEERNSA_IiS7_EE[PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 3> > >::Find_A(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> >&)]+0x1da): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Set_Row_Lengths(PhysBAM::ARRAY<int, int> const&)'
../PhysBAM_Tools/libPhysBAM_Tools.a(LAPLACE_UNIFORM.cpp.o): In function `PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 3> > >::Solve_Subregion(PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR<int, 3>, int>&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, int, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> >*)':
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM15LAPLACE_UNIFORMINS_4GRIDINS_6VECTORIfLi3EEEEEE15Solve_SubregionERNS_5ARRAYINS_8INTERVALIiEEiEERNS6_IS9_iEERNS6_INS2_IiLi3EEEiEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEEiPNS6_IiSD_EE[PhysBAM::LAPLACE_UNIFORM<PhysBAM::GRID<PhysBAM::VECTOR<float, 3> > >::Solve_Subregion(PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR<int, 3>, int>&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, int, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> >*)]+0x50): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Negate()'
../PhysBAM_Tools/libPhysBAM_Tools.a(LAPLACE_UNIFORM.cpp.o): In function `PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>, int>::ARRAY(int, bool)':
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM5ARRAYINS_22SPARSE_MATRIX_FLAT_NXNIfEEiEC2Eib[_ZN7PhysBAM5ARRAYINS_22SPARSE_MATRIX_FLAT_NXNIfEEiEC5Eib]+0xd8): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::SPARSE_MATRIX_FLAT_NXN()'
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM5ARRAYINS_22SPARSE_MATRIX_FLAT_NXNIfEEiEC2Eib[_ZN7PhysBAM5ARRAYINS_22SPARSE_MATRIX_FLAT_NXNIfEEiEC5Eib]+0x141): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(LAPLACE_UNIFORM.cpp.o): In function `PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>, int>::~ARRAY()':
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM5ARRAYINS_22SPARSE_MATRIX_FLAT_NXNIfEEiED2Ev[_ZN7PhysBAM5ARRAYINS_22SPARSE_MATRIX_FLAT_NXNIfEEiED5Ev]+0x54): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(LAPLACE_UNIFORM.cpp.o): In function `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Set_Element(int, int, float)':
LAPLACE_UNIFORM.cpp:(.text._ZN7PhysBAM22SPARSE_MATRIX_FLAT_NXNIfE11Set_ElementEiif[PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Set_Element(int, int, float)]+0x27): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::operator()(int, int)'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE.cpp.o): In function `PhysBAM::PCG_SPARSE<float>::Solve(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float, bool)':
PCG_SPARSE.cpp:(.text._ZN7PhysBAM10PCG_SPARSEIfE5SolveERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES7_S7_S7_S7_S7_S7_fb[PhysBAM::PCG_SPARSE<float>::Solve(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float, bool)]+0x1f2): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Construct_Incomplete_Cholesky_Factorization(bool, float, float, float)'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE.cpp.o): In function `PhysBAM::PCG_SPARSE_SYSTEM<float>::Multiply(PhysBAM::KRYLOV_VECTOR_BASE<float> const&, PhysBAM::KRYLOV_VECTOR_BASE<float>&) const':
PCG_SPARSE.cpp:(.text._ZNK7PhysBAM17PCG_SPARSE_SYSTEMIfE8MultiplyERKNS_18KRYLOV_VECTOR_BASEIfEERS3_[PhysBAM::PCG_SPARSE_SYSTEM<float>::Multiply(PhysBAM::KRYLOV_VECTOR_BASE<float> const&, PhysBAM::KRYLOV_VECTOR_BASE<float>&) const]+0xa3): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE.cpp.o): In function `PhysBAM::PCG_SPARSE_SYSTEM<float>::Apply_Preconditioner(PhysBAM::KRYLOV_VECTOR_BASE<float> const&, PhysBAM::KRYLOV_VECTOR_BASE<float>&) const':
PCG_SPARSE.cpp:(.text._ZNK7PhysBAM17PCG_SPARSE_SYSTEMIfE20Apply_PreconditionerERKNS_18KRYLOV_VECTOR_BASEIfEERS3_[PhysBAM::PCG_SPARSE_SYSTEM<float>::Apply_Preconditioner(PhysBAM::KRYLOV_VECTOR_BASE<float> const&, PhysBAM::KRYLOV_VECTOR_BASE<float>&) const]+0xd3): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE.cpp:(.text._ZNK7PhysBAM17PCG_SPARSE_SYSTEMIfE20Apply_PreconditionerERKNS_18KRYLOV_VECTOR_BASEIfEERS3_[PhysBAM::PCG_SPARSE_SYSTEM<float>::Apply_Preconditioner(PhysBAM::KRYLOV_VECTOR_BASE<float> const&, PhysBAM::KRYLOV_VECTOR_BASE<float>&) const]+0x102): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE5SolveERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x37d): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE5SolveERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x494): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Create_Submatrix(PhysBAM::INTERVAL<int> const&)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE5SolveERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x4d8): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::In_Place_Incomplete_Cholesky_Factorization(bool, float, float, float)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE5SolveERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x528): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE5SolveERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x54d): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE5SolveERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x70a): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE5SolveERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x9a2): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_In_Parts(PhysBAM::DOMAIN_ITERATOR_THREADED_ALPHA<PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >, PhysBAM::VECTOR<float, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE14Solve_In_PartsERNS_30DOMAIN_ITERATOR_THREADED_ALPHAIS3_S2_EERKNS_5ARRAYIiNS1_IiLi1EEEEERKNS7_INS_8INTERVALIiEEiEERKNS7_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_In_Parts(PhysBAM::DOMAIN_ITERATOR_THREADED_ALPHA<PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >, PhysBAM::VECTOR<float, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0xd8f): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Two(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE14Solve_Part_TwoERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEERNS8_ISO_iEESR_[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Two(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&)]+0xef): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Three(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE16Solve_Part_ThreeERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS8_IPSI_iEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Three(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x106): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Create_Submatrix(PhysBAM::INTERVAL<int> const&)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE16Solve_Part_ThreeERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS8_IPSI_iEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Three(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x16b): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::In_Place_Incomplete_Cholesky_Factorization(bool, float, float, float)'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Four(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE15Solve_Part_FourERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS8_INS_9VECTOR_NDIfEEiEESK_SK_RNS8_IPNS_22SPARSE_MATRIX_FLAT_NXNIfEEiEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Four(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x106): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE15Solve_Part_FourERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS8_INS_9VECTOR_NDIfEEiEESK_SK_RNS8_IPNS_22SPARSE_MATRIX_FLAT_NXNIfEEiEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Four(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x158): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Six(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float> const&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE14Solve_Part_SixERNS_5RANGEINS1_IiLi1EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERKNS_22SPARSE_MATRIX_FLAT_NXNIfEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_Part_Six(PhysBAM::RANGE<PhysBAM::VECTOR<int, 1> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 1> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float> const&)]+0xf3): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x458): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::SPARSE_MATRIX_FLAT_NXN(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float> const&)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x49c): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::In_Place_Incomplete_Cholesky_Factorization(bool, float, float, float)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x4ed): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x516): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0xb1c): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Threaded_Part_One(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float, int, int)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE17Threaded_Part_OneERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_fii[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Threaded_Part_One(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float, int, int)]+0x7e): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(int, int, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Threaded_Part_Three(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, int, int)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi1EEEE19Threaded_Part_ThreeERNS_22SPARSE_MATRIX_FLAT_NXNIfEEii[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 1> >::Threaded_Part_Three(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, int, int)]+0x37): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(int, int, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE5SolveERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x386): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE5SolveERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x49d): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Create_Submatrix(PhysBAM::INTERVAL<int> const&)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE5SolveERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x4e1): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::In_Place_Incomplete_Cholesky_Factorization(bool, float, float, float)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE5SolveERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x52e): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE5SolveERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x553): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE5SolveERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x70a): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE5SolveERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x9a2): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_In_Parts(PhysBAM::DOMAIN_ITERATOR_THREADED_ALPHA<PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >, PhysBAM::VECTOR<float, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE14Solve_In_PartsERNS_30DOMAIN_ITERATOR_THREADED_ALPHAIS3_S2_EERKNS_5ARRAYIiNS1_IiLi2EEEEERKNS7_INS_8INTERVALIiEEiEERKNS7_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_In_Parts(PhysBAM::DOMAIN_ITERATOR_THREADED_ALPHA<PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >, PhysBAM::VECTOR<float, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0xd8f): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Two(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE14Solve_Part_TwoERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEERNS8_ISO_iEESR_[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Two(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&)]+0xef): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Three(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE16Solve_Part_ThreeERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS8_IPSI_iEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Three(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x109): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Create_Submatrix(PhysBAM::INTERVAL<int> const&)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE16Solve_Part_ThreeERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS8_IPSI_iEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Three(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x180): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::In_Place_Incomplete_Cholesky_Factorization(bool, float, float, float)'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Four(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE15Solve_Part_FourERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS8_INS_9VECTOR_NDIfEEiEESK_SK_RNS8_IPNS_22SPARSE_MATRIX_FLAT_NXNIfEEiEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Four(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x106): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE15Solve_Part_FourERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS8_INS_9VECTOR_NDIfEEiEESK_SK_RNS8_IPNS_22SPARSE_MATRIX_FLAT_NXNIfEEiEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Four(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x158): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Six(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float> const&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE14Solve_Part_SixERNS_5RANGEINS1_IiLi2EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERKNS_22SPARSE_MATRIX_FLAT_NXNIfEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_Part_Six(PhysBAM::RANGE<PhysBAM::VECTOR<int, 2> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 2> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float> const&)]+0xf3): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x458): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::SPARSE_MATRIX_FLAT_NXN(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float> const&)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x49c): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::In_Place_Incomplete_Cholesky_Factorization(bool, float, float, float)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x4ed): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x516): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0xb1c): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Threaded_Part_One(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float, int, int)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE17Threaded_Part_OneERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_fii[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Threaded_Part_One(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float, int, int)]+0x7e): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(int, int, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Threaded_Part_Three(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, int, int)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi2EEEE19Threaded_Part_ThreeERNS_22SPARSE_MATRIX_FLAT_NXNIfEEii[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 2> >::Threaded_Part_Three(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, int, int)]+0x37): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(int, int, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE5SolveERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x38f): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE5SolveERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x4a6): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Create_Submatrix(PhysBAM::INTERVAL<int> const&)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE5SolveERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x4ea): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::In_Place_Incomplete_Cholesky_Factorization(bool, float, float, float)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE5SolveERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x537): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE5SolveERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x55c): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE5SolveERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x713): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE5SolveERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x9ab): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_In_Parts(PhysBAM::DOMAIN_ITERATOR_THREADED_ALPHA<PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >, PhysBAM::VECTOR<float, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE14Solve_In_PartsERNS_30DOMAIN_ITERATOR_THREADED_ALPHAIS3_S2_EERKNS_5ARRAYIiNS1_IiLi3EEEEERKNS7_INS_8INTERVALIiEEiEERKNS7_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEESP_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_In_Parts(PhysBAM::DOMAIN_ITERATOR_THREADED_ALPHA<PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >, PhysBAM::VECTOR<float, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0xd8f): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Two(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE14Solve_Part_TwoERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEERNS8_ISO_iEESR_[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Two(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&)]+0x10a): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Three(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE16Solve_Part_ThreeERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS8_IPSI_iEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Three(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x118): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Create_Submatrix(PhysBAM::INTERVAL<int> const&)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE16Solve_Part_ThreeERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS8_IPSI_iEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Three(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x192): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::In_Place_Incomplete_Cholesky_Factorization(bool, float, float, float)'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Four(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE15Solve_Part_FourERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS8_INS_9VECTOR_NDIfEEiEESK_SK_RNS8_IPNS_22SPARSE_MATRIX_FLAT_NXNIfEEiEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Four(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x106): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE15Solve_Part_FourERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERNS8_INS_9VECTOR_NDIfEEiEESK_SK_RNS8_IPNS_22SPARSE_MATRIX_FLAT_NXNIfEEiEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Four(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::VECTOR_ND<float>, int>&, PhysBAM::ARRAY<PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>*, int>&)]+0x158): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Six(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float> const&)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE14Solve_Part_SixERNS_5RANGEINS1_IiLi3EEEEERKNS_5ARRAYIiS5_EERKNS8_INS_8INTERVALIiEEiEERKNS8_ISE_iEERKNS_22SPARSE_MATRIX_FLAT_NXNIfEE[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_Part_Six(PhysBAM::RANGE<PhysBAM::VECTOR<int, 3> >&, PhysBAM::ARRAY<int, PhysBAM::VECTOR<int, 3> > const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::ARRAY<PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int>, int> const&, PhysBAM::SPARSE_MATRIX_FLAT_NXN<float> const&)]+0x10e): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(PhysBAM::INTERVAL<int> const&, PhysBAM::ARRAY<PhysBAM::INTERVAL<int>, int> const&, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x458): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::SPARSE_MATRIX_FLAT_NXN(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float> const&)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x49c): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::In_Place_Incomplete_Cholesky_Factorization(bool, float, float, float)'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x4ed): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Forward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0x516): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Solve_Backward_Substitution(PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&, bool, bool) const'
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE14Solve_In_PartsERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_f[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Solve_In_Parts(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float)]+0xb1c): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::~SPARSE_MATRIX_FLAT_NXN()'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Threaded_Part_One(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float, int, int)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE17Threaded_Part_OneERNS_22SPARSE_MATRIX_FLAT_NXNIfEERNS_9VECTOR_NDIfEES9_fii[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Threaded_Part_One(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, PhysBAM::VECTOR_ND<float>&, PhysBAM::VECTOR_ND<float>&, float, int, int)]+0x7e): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(int, int, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
../PhysBAM_Tools/libPhysBAM_Tools.a(PCG_SPARSE_THREADED.cpp.o): In function `PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Threaded_Part_Three(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, int, int)':
PCG_SPARSE_THREADED.cpp:(.text._ZN7PhysBAM19PCG_SPARSE_THREADEDINS_6VECTORIfLi3EEEE19Threaded_Part_ThreeERNS_22SPARSE_MATRIX_FLAT_NXNIfEEii[PhysBAM::PCG_SPARSE_THREADED<PhysBAM::VECTOR<float, 3> >::Threaded_Part_Three(PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>&, int, int)]+0x37): undefined reference to `PhysBAM::SPARSE_MATRIX_FLAT_NXN<float>::Times(int, int, PhysBAM::VECTOR_ND<float> const&, PhysBAM::VECTOR_ND<float>&) const'
collect2: ld returned 1 exit status
make[3]: *** [Projects/smoke] Error 1
make[2]: *** [Projects/CMakeFiles/smoke.dir/all] Error 2
make[1]: *** [Projects/CMakeFiles/smoke.dir/rule] Error 2
make: *** [smoke] Error 2
jonathantompson commented 9 years ago

This is referenced in commit (in my fork) d7763e6c2fc693e925dbcb59f8fff25c5a65f656