[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: gEDA-user: Compiling and installing gschem: "Failed to load default font."
On Thu, 2009-02-19 at 15:12 +0100, Denis Grelich wrote:
> On Thu, 19 Feb 2009 12:54:22 +0000
> Peter Clifton <pcjc2@xxxxxxxxx> wrote:
>
> > > I tried to install the git head of gschem. Compiling and installing
> > > with
> > >
> > > ./autogen.sh
> > > configure --prefix=/usr
> > > make
> > > sudo make install
> >
> > Did you install the "libgeda" and "symbols" portions in /usr as well
> > before hand? The symbols package contains the font.
>
> Yes, both, by issuing:
>
> ./configure --prefix=/usr
> make
> sudo make install
>
>
> > Typically we'd suggest not installing hand-built software in /usr, as
> > it can cause conflicts with the package management of what ever
> > distribution you're using. If you wanted a system wide
> > location, /usr/local works well without the risk of conflicts.
>
> I'm aware of those issues, but I prefer to have only a single version
> installed at a time. Package management conflicts will be resolved by
> --force ;)
>
>
> > > strace gschem says:
> > >
> > > write(9, "Component [title-B.sym] was not "..., 63) = 63
> > > access("../lib/sym/font/b_.sym", R_OK) = -1 ENOENT (No
> > > such file or directory) write(9, "Could not find character \'b\'
> > > def"..., 41) = 41 access("../lib/sym/font/quest.sym", R_OK) = -1
> > > ENOENT (No such file or directory) write(2, "Could not load
> > > question font cha"..., 66) = 66 write(1, "Failed to load default
> > > font.\n", 29) = 29 exit_group(-1) = ?
> >
> > I'm not sure if the relative paths there are normal or not, but in any
> > case, we'd need to see whatever "chdir" command was issued above to
> > figure out just where it is looking for these fonts.
Hmm:
#define DEFAULT_FONT_DIRECTORY "../lib/sym/font"
This should be overridden when gEDA reads "geda-font.scm", on my machine
this resides in /home/pcjc2/geda/share/gEDA/scheme/geda-font.scm
It is read in by the system-gafrc file (which is installed by libgeda):
; Load the default font
(let ((font-def-file (%search-load-path "geda-font")))
(if font-def-file
(load font-def-file)
(display "Failed to load default font.\n")))
That load path should include the correct path:
(define geda-scheme-path (string-append geda-data-path path-sep "scheme"))
(set! %load-path (append (list geda-scheme-path) %load-path))
geda-data-path is defined in libgeda/src/g_register.c, and comes from this call:
const char *s_path_sys_data () {
static const char *p = NULL;
if (p == NULL) {
p = g_getenv ("GEDADATA");
}
# if !defined (_WIN32)
if (p == NULL) {
p = GEDADATADIR;
g_setenv ("GEDADATA", p, FALSE);
}
# endif
return p;
}
Which should boil back down to the GEDADATADIR variable in config.h (on
non Win32 platforms).
--
Peter Clifton
Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA
Tel: +44 (0)7729 980173 - (No signal in the lab!)
_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user