[petsc-users] Error while building PETSc with MATLAB

Satish Balay balay at mcs.anl.gov
Tue Aug 29 12:26:29 CDT 2023


Well - you sent in libmesh log not petsc's configure.log/make.log for petsc-3.17

Anyway - with petsc-3.13 - you have:

>>>>

Matlab:
  Includes: -I/usr/local/MATLAB/R2020b/extern/include
  /usr/local/MATLAB/R2020b
MatlabEngine:
  Library:  -Wl,-rpath,/usr/local/MATLAB/R2020b/sys/os/glnxa64:/usr/local/MATLAB/R2020b/bin/glnxa64:/usr/local/MATLAB/R2020b/extern/lib/glnxa64 -L/usr/local/MATLAB/R2020b/bin/glnxa64 -L/usr/local/MATLAB/R2020b/extern/lib/glnxa64 -leng -lmex -lmx -lmat -lut -licudata -licui18n -licuuc
  Language used to compile PETSc: C
<<<<<

With petsc-3.19 (and matlab-R2022a) - we are seeing:

https://gitlab.com/petsc/petsc/-/jobs/4904566768

>>>
Matlab:
  Includes:   -I/nfs/gce/software/custom/linux-ubuntu22.04-x86_64/matlab/R2022a/extern/include
  Libraries:  -Wl,-rpath,/nfs/gce/software/custom/linux-ubuntu22.04-x86_64/matlab/R2022a/bin/glnxa64 -L/nfs/gce/software/custom/linux-ubuntu22.04-x86_64/matlab/R2022a/bin/glnxa64 -leng -lmex -lmx -lmat
  Executable: /nfs/gce/software/custom/linux-ubuntu22.04-x86_64/matlab/R2022a
  mex: /nfs/gce/software/custom/linux-ubuntu22.04-x86_64/matlab/R2022a/bin/mex
  matlab: /nfs/gce/software/custom/linux-ubuntu22.04-x86_64/matlab/R2022a/bin/matlab -glnxa64
<<<

I.e "-lut -licudata -licui18n -licuuc" are not preset here. This might be a change wrt newer matlab versions.

You can:

- edit /home/vit/sfw/petsc/3.13.4/linux-opt/lib/petsc/conf/petscvariables and remove all occurrences of "-lut -licudata -licui18n -licuuc"
- now run 'make all' in '/home/vit/sfw/petsc/3.13.4'

And see if the build works now.

Satish

On Tue, 29 Aug 2023, INTURU SRINIVAS 20PHD0548 via petsc-users wrote:

> I am sharing the log files while building petsc3.13.4 with matlab and also
> the log file while building libmesh with petsc3.17.5 and matlab. Building
> petsc 3.17.5 with matlab was done successfully. But libmesh is not able to
> find the petsc
> Please find the attachments.
> 
> On Tue, Aug 29, 2023 at 7:31 PM Satish Balay <balay at mcs.anl.gov> wrote:
> 
> > Send configure.log, make.log from both petsc-3.13 and 3.17 [or 3.19].
> >
> > [you can gzip them to make the logs friendly to mailing list - or send
> > them to petsc-maint]
> >
> > And does test suite work with 3.17? [or 3.19?]
> >
> > Satish
> >
> > On Tue, 29 Aug 2023, INTURU SRINIVAS 20PHD0548 via petsc-users wrote:
> >
> > > I am sharing the make.log file while building petsc-3.13.4 with Matlab.
> > > Please find the attachment and do the needful.
> > >
> > > On Tue, Aug 29, 2023 at 10:19 AM INTURU SRINIVAS 20PHD0548 <
> > > inturu.srinivas2020 at vitstudent.ac.in> wrote:
> > >
> > > > I tried with petsc-3.17.5. During building of libmesh, the error shows
> > > > petsc was not found
> > > >
> > > > On Mon, Aug 28, 2023 at 9:43 PM Satish Balay <balay at mcs.anl.gov>
> > wrote:
> > > >
> > > >> https://ibamr.github.io/linux says petsc-3.17
> > > >>
> > > >> Here you are using 3.13
> > > >>
> > > >> Can you retry with petsc-3.17.5?
> > > >>
> > > >> Satish
> > > >>
> > > >> On Mon, 28 Aug 2023, INTURU SRINIVAS 20PHD0548 via petsc-users wrote:
> > > >>
> > > >> > Hello,
> > > >> >
> > > >> > I want to build PETSc with MATLAB for working on the simulation
> > using
> > > >> IBAMR
> > > >> > open software. While building the PETSc, using the following
> > > >> >
> > > >> > export PETSC_DIR=$PWD
> > > >> > export PETSC_ARCH=linux-debug
> > > >> > ./configure \
> > > >> >   --CC=$HOME/sfw/linux/openmpi/4.1.4/bin/mpicc \
> > > >> >   --CXX=$HOME/sfw/linux/openmpi/4.1.4/bin/mpicxx \
> > > >> >   --FC=$HOME/sfw/linux/openmpi/4.1.4/bin/mpif90 \
> > > >> >   --with-debugging=1 \
> > > >> >   --download-hypre=1 \
> > > >> >   --download-fblaslapack=1 \
> > > >> >   --with-x=0 \
> > > >> >   --with-matlab-dir=/usr/local/MATLAB/R2020b/
> > > >> >   --with-matlab-engine=1
> > > >> >   --with-matlab-engine-dir=/usr/local/MATLAB/R2020b/extern/engines/
> > > >> >
> > > >> > make -j4
> > > >> > make -j4 test
> > > >> >
> > > >> > I got the following error
> > > >> > CLINKER
> > > >> linux-debug/tests/tao/leastsquares/tutorials/matlab/matlab_ls_test
> > > >> > /usr/bin/ld:
> > > >> >
> > linux-debug/tests/tao/leastsquares/tutorials/matlab/matlab_ls_test.o: in
> > > >> > function `EvaluateResidual':
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:32:
> > > >> > undefined reference to `PetscMatlabEnginePut'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:33:
> > > >> > undefined reference to `PetscMatlabEngineEvaluate'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:35:
> > > >> > undefined reference to `PetscMatlabEngineGet'
> > > >> > /usr/bin/ld:
> > > >> >
> > linux-debug/tests/tao/leastsquares/tutorials/matlab/matlab_ls_test.o: in
> > > >> > function `EvaluateJacobian':
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:46:
> > > >> > undefined reference to `PetscMatlabEnginePut'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:47:
> > > >> > undefined reference to `PetscMatlabEngineEvaluate'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:49:
> > > >> > undefined reference to `PetscMatlabEngineGet'
> > > >> > /usr/bin/ld:
> > > >> >
> > linux-debug/tests/tao/leastsquares/tutorials/matlab/matlab_ls_test.o: in
> > > >> > function `TaoPounders':
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:75:
> > > >> > undefined reference to `PetscMatlabEngineGet'
> > > >> > /usr/bin/ld:
> > > >> >
> > linux-debug/tests/tao/leastsquares/tutorials/matlab/matlab_ls_test.o: in
> > > >> > function `main':
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:126:
> > > >> > undefined reference to `PetscMatlabEngineCreate'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:127:
> > > >> > undefined reference to `PetscMatlabEngineEvaluate'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:139:
> > > >> > undefined reference to `PetscMatlabEngineEvaluate'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:140:
> > > >> > undefined reference to `PetscMatlabEngineGetArray'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:142:
> > > >> > undefined reference to `PetscMatlabEngineGetArray'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:144:
> > > >> > undefined reference to `PetscMatlabEngineGetArray'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:146:
> > > >> > undefined reference to `PetscMatlabEngineGetArray'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:148:
> > > >> > undefined reference to `PetscMatlabEngineGetArray'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:154:
> > > >> > undefined reference to `PetscMatlabEngineEvaluate'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:157:
> > > >> > undefined reference to `PetscMatlabEngineEvaluate'
> > > >> > /usr/bin/ld:
> > > >> >
> > > >>
> > /home/vit/sfw/petsc/3.13.4/src/tao/leastsquares/tutorials/matlab/matlab_ls_test.c:158:
> > > >> > undefined reference to `PetscMatlabEngineDestroy'
> > > >> >
> > > >> > collect2: error: ld returned 1 exit status
> > > >> > make: *** [gmakefile.test:185:
> > > >> > linux-debug/tests/tao/leastsquares/tutorials/matlab/matlab_ls_test]
> > > >> Error 1
> > > >> > make: *** Waiting for unfinished jobs....
> > > >> >
> > > >> > Please help me to solve this issue
> > > >> >
> > > >> > Thank you
> > > >> > Srinivas
> > > >> >
> > > >> >
> > > >>
> > > >>
> > >
> > >
> >
> 
> 


More information about the petsc-users mailing list