Home › Forum › Community Help › Building SOFA › Build problem for Pardisio solver plugin
Tagged: 64_bits, GCC, Linux_ubuntu, Plugin_Pardiso, SOFA_2006
- This topic has 5 replies, 2 voices, and was last updated 11 hours, 35 minutes ago by
amazier.
-
AuthorPosts
-
17 November 2020 at 15 h 15 min #17671
Dear all,
I am currently trying to update an old plugin with my collaborator Igor Peterlik. To do so, we need several plugins: including CUDA and Pardisio Solver.
I first tried to compile with GCC 9 but faced incompatibilities with CUDA that only support GCC 8 (correct me if I am wrong).
To overcome this issue, I recompiled SOFA and plugins with GCC 8 but I face a last error with the Pardisio solver plugin that I did not encounter with GCC 9:[23/24] Linking CXX shared library lib/libSofaPardisoSolver.so.0.1 FAILED: lib/libSofaPardisoSolver.so.0.1 : && /lib/ccache/g++-8 -fPIC -Wall -W -Wno-padded -O3 -DNDEBUG -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2 -Wl,--no-undefined -lc -shared -Wl,-soname,libSofaPardisoSolver.so.0.1 -o lib/libSofaPardisoSolver.so.0.1 applications/plugins/SofaPardisoSolver/CMakeFiles/SofaPardisoSolver.dir/SparsePARDISOSolver.cpp.o applications/plugins/SofaPardisoSolver/CMakeFiles/SofaPardisoSolver.dir/initPardisoSolver.cpp.o -L/home/arnaud/dev/sofa/v20.06/src/applications/plugins/SofaPardisoSolver/extlibs -Wl,-rpath,/home/arnaud/dev/sofa/v20.06/src/applications/plugins/SofaPardisoSolver/extlibs:/home/arnaud/dev/sofa/v20.06/build/lib: lib/libSofaBase.so.20.06.99 lib/libSofaGeneral.so.20.06.99 -lgfortran -lblas -llapack -lgomp lib/libSofaGeneralDeformable.so.20.06.99 lib/libSofaGeneralExplicitOdeSolver.so.20.06.99 lib/libSofaGeneralImplicitOdeSolver.so.20.06.99 lib/libSofaGeneralLinearSolver.so.20.06.99 lib/libSofaGeneralLoader.so.20.06.99 /usr/lib/x86_64-linux-gnu/libz.so lib/libSofaGeneralObjectInteraction.so.20.06.99 lib/libSofaGeneralSimpleFem.so.20.06.99 lib/libSofaConstraint.so.20.06.99 lib/libSofaSimpleFem.so.20.06.99 lib/libSofaImplicitOdeSolver.so.20.06.99 lib/libSofaGeneralEngine.so.20.06.99 lib/libSofaUserInteraction.so.20.06.99 lib/libSofaGeneralRigid.so.20.06.99 lib/libSofaTopologyMapping.so.20.06.99 lib/libSofaGeneralTopology.so.20.06.99 lib/libSofaBoundaryCondition.so.20.06.99 lib/libSofaGeneralMeshCollision.so.20.06.99 lib/libSofaMeshCollision.so.20.06.99 lib/libSofaBaseCollision.so.20.06.99 lib/libSofaObjectInteraction.so.20.06.99 lib/libSofaDeformable.so.20.06.99 lib/libSofaRigid.so.20.06.99 lib/libSofaBaseMechanics.so.20.06.99 lib/libSofaEigen2Solver.so.20.06.99 lib/libSofaGeneralVisual.so.20.06.99 lib/libSofaBaseVisual.so.20.06.99 lib/libSofaBaseTopology.so.20.06.99 lib/libSofaGraphComponent.so.20.06.99 lib/libSofaSimulationTree.so.20.06.99 lib/libSofaBaseUtils.so.20.06.99 lib/libSofaGeneralAnimationLoop.so.20.06.99 lib/libSofaBaseLinearSolver.so.20.06.99 lib/libSofaSimulationCommon.so.20.06.99 lib/libSofaSimulationCore.so.20.06.99 lib/libSofaCore.so.20.06.99 lib/libSofaDefaultType.so.20.06.99 lib/libSofaHelper.so.20.06.99 /usr/lib/x86_64-linux-gnu/libGLU.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so /usr/lib/x86_64-linux-gnu/libGLEW.so /usr/lib/x86_64-linux-gnu/libboost_system.so /usr/lib/x86_64-linux-gnu/libboost_filesystem.so /usr/lib/x86_64-linux-gnu/libboost_program_options.so /usr/lib/x86_64-linux-gnu/libboost_thread.so /usr/lib/x86_64-linux-gnu/libboost_chrono.so /usr/lib/x86_64-linux-gnu/libboost_date_time.so /usr/lib/x86_64-linux-gnu/libboost_atomic.so lib/libgtest.so.2.6.2 -pthread -Wl,-rpath-link,/home/arnaud/dev/sofa/v20.06/build/lib && : /usr/bin/ld: applications/plugins/SofaPardisoSolver/CMakeFiles/SofaPardisoSolver.dir/SparsePARDISOSolver.cpp.o: in function sofa::component::linearsolver::SparsePARDISOSolver<sofa::component::linearsolver::CompressedRowSparseMatrix<double, sofa::helper::vector<double, sofa::helper::CPUMemoryManager<double> >, sofa::helper::vector<int, sofa::helper::CPUMemoryManager<int> > >, sofa::component::linearsolver::FullVector<double> >::callPardiso(sofa::component::linearsolver::SparsePARDISOSolver<sofa::component::linearsolver::CompressedRowSparseMatrix<double, sofa::helper::vector<double, sofa::helper::CPUMemoryManager<double> >, sofa::helper::vector<int, sofa::helper::CPUMemoryManager<int> > >, sofa::component::linearsolver::FullVector<double> >::SparsePARDISOSolverInvertData*, int, sofa::component::linearsolver::FullVector<double>*, sofa::component::linearsolver::FullVector<double>*)': SparsePARDISOSolver.cpp:(.text._ZN4sofa9component12linearsolver19SparsePARDISOSolverINS1_25CompressedRowSparseMatrixIdNS_6helper6vectorIdNS4_16CPUMemoryManagerIdEEEENS5_IiNS6_IiEEEEEENS1_10FullVectorIdEEE11callPardisoEPNSE_29SparsePARDISOSolverInvertDataEiPSD_SH_[_ZN4sofa9component12linearsolver19SparsePARDISOSolverINS1_25CompressedRowSparseMatrixIdNS_6helper6vectorIdNS4_16CPUMemoryManagerIdEEEENS5_IiNS6_IiEEEEEENS1_10FullVectorIdEEE11callPardisoEPNSE_29SparsePARDISOSolverInvertDataEiPSD_SH_]+0x1b7): undefined reference to pardiso_ /usr/bin/ld: applications/plugins/SofaPardisoSolver/CMakeFiles/SofaPardisoSolver.dir/SparsePARDISOSolver.cpp.o: in function sofa::component::linearsolver::SparsePARDISOSolver<sofa::component::linearsolver::CompressedRowSparseMatrix<double, sofa::helper::vector<double, sofa::helper::CPUMemoryManager<double> >, sofa::helper::vector<int, sofa::helper::CPUMemoryManager<int> > >, sofa::component::linearsolver::FullVector<double> >::SparsePARDISOSolverInvertData::SparsePARDISOSolverInvertData(int, std::ostream&, std::ostream&)': SparsePARDISOSolver.cpp:(.text._ZN4sofa9component12linearsolver19SparsePARDISOSolverINS1_25CompressedRowSparseMatrixIdNS_6helper6vectorIdNS4_16CPUMemoryManagerIdEEEENS5_IiNS6_IiEEEEEENS1_10FullVectorIdEEE29SparsePARDISOSolverInvertDataC2EiRSoSG_[_ZN4sofa9component12linearsolver19SparsePARDISOSolverINS1_25CompressedRowSparseMatrixIdNS_6helper6vectorIdNS4_16CPUMemoryManagerIdEEEENS5_IiNS6_IiEEEEEENS1_10FullVectorIdEEE29SparsePARDISOSolverInvertDataC5EiRSoSG_]+0x277): undefined reference to pardisoinit_ /usr/bin/ld: applications/plugins/SofaPardisoSolver/CMakeFiles/SofaPardisoSolver.dir/SparsePARDISOSolver.cpp.o: in function sofa::component::linearsolver::SparsePARDISOSolver<sofa::component::linearsolver::CompressedRowSparseMatrix<sofa::defaulttype::Mat<3u, 3u, double>, sofa::helper::vector<sofa::defaulttype::Mat<3u, 3u, double>, sofa::helper::CPUMemoryManager<sofa::defaulttype::Mat<3u, 3u, double> > >, sofa::helper::vector<int, sofa::helper::CPUMemoryManager<int> > >, sofa::component::linearsolver::FullVector<double> >::callPardiso(sofa::component::linearsolver::SparsePARDISOSolver<sofa::component::linearsolver::CompressedRowSparseMatrix<sofa::defaulttype::Mat<3u, 3u, double>, sofa::helper::vector<sofa::defaulttype::Mat<3u, 3u, double>, sofa::helper::CPUMemoryManager<sofa::defaulttype::Mat<3u, 3u, double> > >, sofa::helper::vector<int, sofa::helper::CPUMemoryManager<int> > >, sofa::component::linearsolver::FullVector<double> >::SparsePARDISOSolverInvertData*, int, sofa::component::linearsolver::FullVector<double>*, sofa::component::linearsolver::FullVector<double>*)': SparsePARDISOSolver.cpp:(.text._ZN4sofa9component12linearsolver19SparsePARDISOSolverINS1_25CompressedRowSparseMatrixINS_11defaulttype3MatILj3ELj3EdEENS_6helper6vectorIS6_NS7_16CPUMemoryManagerIS6_EEEENS8_IiNS9_IiEEEEEENS1_10FullVectorIdEEE11callPardisoEPNSH_29SparsePARDISOSolverInvertDataEiPSG_SK_[_ZN4sofa9component12linearsolver19SparsePARDISOSolverINS1_25CompressedRowSparseMatrixINS_11defaulttype3MatILj3ELj3EdEENS_6helper6vectorIS6_NS7_16CPUMemoryManagerIS6_EEEENS8_IiNS9_IiEEEEEENS1_10FullVectorIdEEE11callPardisoEPNSH_29SparsePARDISOSolverInvertDataEiPSG_SK_]+0x1b7): undefined reference to pardiso_ /usr/bin/ld: applications/plugins/SofaPardisoSolver/CMakeFiles/SofaPardisoSolver.dir/SparsePARDISOSolver.cpp.o: in function sofa::component::linearsolver::SparsePARDISOSolver<sofa::component::linearsolver::CompressedRowSparseMatrix<sofa::defaulttype::Mat<3u, 3u, double>, sofa::helper::vector<sofa::defaulttype::Mat<3u, 3u, double>, sofa::helper::CPUMemoryManager<sofa::defaulttype::Mat<3u, 3u, double> > >, sofa::helper::vector<int, sofa::helper::CPUMemoryManager<int> > >, sofa::component::linearsolver::FullVector<double> >::SparsePARDISOSolverInvertData::SparsePARDISOSolverInvertData(int, std::ostream&, std::ostream&)': SparsePARDISOSolver.cpp:(.text._ZN4sofa9component12linearsolver19SparsePARDISOSolverINS1_25CompressedRowSparseMatrixINS_11defaulttype3MatILj3ELj3EdEENS_6helper6vectorIS6_NS7_16CPUMemoryManagerIS6_EEEENS8_IiNS9_IiEEEEEENS1_10FullVectorIdEEE29SparsePARDISOSolverInvertDataC2EiRSoSJ_[_ZN4sofa9component12linearsolver19SparsePARDISOSolverINS1_25CompressedRowSparseMatrixINS_11defaulttype3MatILj3ELj3EdEENS_6helper6vectorIS6_NS7_16CPUMemoryManagerIS6_EEEENS8_IiNS9_IiEEEEEENS1_10FullVectorIdEEE29SparsePARDISOSolverInvertDataC5EiRSoSJ_]+0x277): undefined reference to pardisoinit_ collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed.
Thank you for your help and have a nice day,
Best,Arnaud
4 December 2020 at 17 h 18 min #179327 December 2020 at 10 h 33 min #17961Hi Hugo,
Thank you for your reply, I will try to erase the build and build from scratch and let you know 🙂
Best,7 December 2020 at 13 h 48 min #17967Hi all,
I still do obtain the same error even by recreating another build.14 January 2021 at 22 h 30 min #18228Hey @amazier
Now SofaMJED works well.
Regarding Pardiso, have you solved your issue?
Otherwise I will compile it on my machine this week-end.Best
Hugo
18 January 2021 at 16 h 45 min #18243Hi Hugo,
Sorry for replying after the weekend…
Good news for the plugin! Let me know when I can access it!
Unfortunately, yes I still have the same issue…Have a nice day,
Arnaud -
AuthorPosts
- You must be logged in to reply to this topic.