[petsc-dev] openmp

Svetlana Tkachenko svetlana.tkachenko at fastmail.fm
Wed Nov 6 21:52:15 CST 2013



On Thu, 7 Nov 2013, at 14:15, Jed Brown wrote:
> Svetlana Tkachenko <svetlana.tkachenko at fastmail.fm> writes:
> 
> > On Thu, 7 Nov 2013, at 13:59, Jed Brown wrote:
> >> Svetlana Tkachenko <svetlana.tkachenko at fastmail.fm> writes:
> >> > What do you mean? (I don't think the program name has to be 'main'.).
> >> 
> >> No, it doesn't.  The name is meaningless in Fortran, but you need to use
> >> the keyword "program".
> >> 
> >> > ~/dev/test/petsc $ cat myexample.F90
> >> >        program myexample
> >> >
> >> >            call solver
> >> >        end
> >> > ~/dev/test/petsc $
> >> 
> >> Add myexample.o to the makefile so it gets compiled.
> >
> > Already did, please, see:
> >
> > ~/dev/test/petsc $ cat makefile
> > myexample: myexample.o solver.o
> >                 ${CLINKER} -o $@ $^ ${PETSC_LIB}
> >
> > include ${PETSC_DIR}/conf/variables
> > include ${PETSC_DIR}/conf/rules
> > ~/dev/test/petsc $
> 
> Run make clean; make.  If you get the same error, check
> 
> $ nm myexample.o
>                  U _gfortran_set_args
>                  U _gfortran_set_options
>                  U _GLOBAL_OFFSET_TABLE_
> 0000000000000000 T main
> 0000000000000000 r options.0.1881
>                  U solver_
> 

~/dev/test/petsc $ make clean
~/dev/test/petsc $ make
gfortran -c  -fPIC -Wall -Wno-unused-variable -g  -fopenmp  -I/home/<username>/petsc/include -I/home/<username>/petsc/linux-amd64/include -I/home/<username>/petsc/include/mpiuni    -o myexample.o myexample.F90
gfortran -c  -fPIC -Wall -Wno-unused-variable -g  -fopenmp  -I/home/<username>/petsc/include -I/home/<username>/petsc/linux-amd64/include -I/home/<username>/petsc/include/mpiuni    -o solver.o solver.F90
gcc -fopenmp -fopenmp   -fPIC -Wall -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas -g3 -fno-inline -O0 -fopenmp  -o myexample myexample.o solver.o -Wl,-rpath,/home/<username>/petsc/linux-amd64/lib -L/home/<username>/petsc/linux-amd64/lib  -lpetsc -Wl,-rpath,/home/<username>/petsc/linux-amd64/lib -lflapack -lfblas -lX11 -lpthread -Wl,-rpath,/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -L/usr/lib/gcc/x86_64-redhat-linux/4.4.7 -lgfortran -lm -lm -lstdc++ -lstdc++ -ldl -lgcc_s -ldl
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/crt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [myexample] Error 1
~/dev/test/petsc $ nm myexample.o
0000000000000000 T MAIN__
                 U _GLOBAL_OFFSET_TABLE_
                 U _gfortran_set_options
0000000000000000 r options.0.1516
                 U solver_
~/dev/test/petsc $




More information about the petsc-dev mailing list