Re: NCARG libraries unable to locate cairo functions

From: Mary Haley <haley_at_nyahnyahspammersnyahnyah>
Date: Fri Nov 22 2013 - 08:42:04 MST

Hi Tan,

It would help if I could see your compile line.

--Mary

On Nov 21, 2013, at 9:47 PM, Tan Li <u094771e@gmail.com> wrote:

> Hi Mary,
>
> I have installed pixman, fontconfig, freetype and expat following the instructions for compiling NCL from source code. I have also modified the line in each of the ncargf77/ncargcc/ncargf90 files shown below:
>
> Original: set syslibdir="-L/usr/X11R6/lib64"
> Modified: set syslibdir="-L/usr/local/lib"
>
> Unfortunately I still get undefined references when compiling WPS.
>
> Regards,
> Tan
>
>
> On Fri, Nov 22, 2013 at 12:28 AM, Mary Haley <haley@ucar.edu> wrote:
> Hi Tan,
>
> Glad you were successful. Were you also able to get your code to compile?
>
> I think you simply need to add -L/usr/local/lib to your ncargf77/ncargcc/ncargf90/etc compile line.
>
> You can also edit the $NCARG_ROOT/bin/{ncargf77,ncargf90,ncargcc/etc} file directly (using a UNIX editor) and add "-L/usr/local/lib" to the "set syslibdir" line.
>
> The cairo library has dependencies on pixman-1, fontconfig, freetype, and possibly expat. You may need to install these libraries in a similar fashion as you did for cairo, if you continue to get undefined references.
>
>
>
> --Mary
>
> On Nov 20, 2013, at 7:29 PM, Tan Li <u094771e@gmail.com> wrote:
>
> > Dear Mary,
> >
> > Some additional information. After installing my own copy of cairo, the cairo_move_to symbol is successfully found:
> >
> > crstanl@ubuntu:~$ nm /usr/local/lib/libcairo.a | grep cairo_move_to
> > 00001200 T INT_cairo_move_to
> > 00001200 T cairo_move_to
> > U INT_cairo_move_to
> >
> > Regards,
> >
> > Tan
> >
> >
> >
> >
> > On Thu, Nov 21, 2013 at 9:04 AM, Tan Li <u094771e@gmail.com> wrote:
> > Dear Mary,
> >
> > Thanks for your response!
> >
> > It seems you are right. The cairo on ubuntu indeed seems to be incomplete.
> >
> > which libcairo did not give any path output
> >
> > Similarly,
> > nm /usr/lib/libcairo.a | grep cairo_move_to
> > nm: '/usr/lib/libcairo.a': No such file
> >
> > nm /usr/lib/libcairo.so | grep cairo_move_to
> > nm: '/usr/lib/libcairo.so': No such file
> >
> > As you suggested, I tried to install my own copy of cairo. However, ubuntu's Linux package installer is unable to find libcairo-devel to install. I instead installed cairo version 1.10.2 manually following the instructions given at:
> >
> > http://www.ncl.ucar.edu/Download/build_from_src.shtml
> >
> > I installed cairo to the directory /usr/local .
> >
> > However, how do I make the NCARG libraries search for the symbols in my own copy of cairo?
> >
> > Regards,
> >
> > Tan
> >
> >
> > On Thu, Nov 21, 2013 at 2:03 AM, Mary Haley <haley@ucar.edu> wrote:
> > Dear Tan,
> >
> > It may be that your cairo library doesn't contain the required symbols.
> >
> > What does the following report:
> >
> > which libcairo
> > nm /usr/lib/libcairo.a | grep cairo_move_to
> >
> > If you have /usr/lib/libcairo.so and not /usr/lib/libcairo.a, then:
> >
> > nm /usr/lib/libcairo.so | grep cairo_move_to
> >
> > You can try installing your own copy of cairo, if it appears that your system one is not complete. Try using your Linux package installer and get "libcairo-devel".
> > You might also need "libpixman-devel", "libfontconfig-devel" if "libcairo-devel" doesn't seem to give you everything.
> >
> > --Mary
> >
> >
> >
> > On Nov 19, 2013, at 7:09 PM, Tan Li <crstanl@nus.edu.sg> wrote:
> >
> > > Hi,
> > >
> > > I am compiling the Weather Research and Forecasting (WRF) Model and I installed the latest version of NCL as needed by the WRF model.
> > >
> > > As I am compiling one section of the WRF Model called the WRF Preprocessing System (WPS), the following error occurs. There is a large number of them so only a few are listed in the mail. I have also attached the entire compile log which contains all of the errors.
> > >
> > > /usr/local/ncl-6.1.2/lib/libncarg_gks.a(cro.o): In function `cro_SoftFill':
> > > cro.c:(.text+0x107c): undefined reference to `cairo_move_to'
> > > cro.c:(.text+0x10af): undefined reference to `cairo_line_to'
> > > cro.c:(.text+0x10ba): undefined reference to `cairo_stroke'
> > > etc.
> > >
> > > It seems that the NCARG libraries is unable to locate cairo functions even though they are already installed under directory /usr/lib.
> > >
> > > I am using 32 bit Ubuntu 12.04 LTS and the WPS program is compiled with gfortran.
> > >
> > > Has anyone encountered similar problems like this? I would appreciate any help regarding this issue.
> > >
> > > Thanks,
> > > Tan<mylog>_______________________________________________
> > > ncarg-talk mailing list
> > > ncarg-talk@ucar.edu
> > > http://mailman.ucar.edu/mailman/listinfo/ncarg-talk
> >
> >
> >
>
>

_______________________________________________
ncarg-talk mailing list
ncarg-talk@ucar.edu
http://mailman.ucar.edu/mailman/listinfo/ncarg-talk
Received on Fri Nov 22 08:42:12 2013

This archive was generated by hypermail 2.1.8 : Fri Dec 13 2013 - 11:42:50 MST