in reply to Text to Speech

... -Wl,h,libespeak.so.1 ...

That's a typo in the Makefile in the Solaris options... It should be -Wl,-h,... (note the dash). I.e., change SONAME_OPT to read:

SONAME_OPT=-Wl,-h,

Also, I had to add -lrt (realtime lib) to the final linker call, i.e.

LIBS3=-lstdc++ -L . -lespeak -lrt

(otherwise, a number of symbols like sem_wait etc. could not be resolved...)

But with those changes I got it to compile on Solaris 10 (`uname -a`: SunOS solaris10 5.10 Generic sun4u sparc SUNW,Sun-Blade-2500) with gcc 3.4.6.  Good luck!

Replies are listed 'Best First'.
Re^2: Text to Speech
by rooneyl (Sexton) on Nov 10, 2008 at 00:44 UTC
    Thank you for help, that info worked.
    Just wondering if you can help me with what I hope to be the final problem. I get a make install error of:
    # Install espeak executable install -m 755 espeak /usr/local/bin gmake: install: Command not found gmake: *** [install] Error 127
    Any ideas? Is there something wrong with my makefile?
    install: all # Create directories rm -rf $(DESTDIR)$(DATADIR) $(MKDIR) $(DESTDIR)$(BINDIR) $(MKDIR) $(DESTDIR)$(LIBDIR) $(MKDIR) $(DESTDIR)$(INCDIR) $(MKDIR) $(DESTDIR)$(DATADIR) # Install espeak executable $(INSTALL) -m 755 $(BIN2_NAME) $(DESTDIR)$(BINDIR) # Install shared library $(INSTALL) -m 755 $(LIB_NAME).$(LIBTAG) $(DESTDIR)$(LIBDIR) # Install static library $(INSTALL) -m 755 $(STATIC_LIB_NAME) $(DESTDIR)$(LIBDIR) $(LN_SF) $(LIB_NAME).$(LIBTAG) $(DESTDIR)$(LIBDIR)/$(LIB_NAME) +.$(LIB_VERSION) $(LN_SF) $(LIB_NAME).$(LIB_VERSION) $(DESTDIR)$(LIBDIR)/$(LIB_ +NAME) # Install development headers $(INSTALL) -pm 644 speak_lib.h $(DESTDIR)$(INCDIR) # Install data files cp -prf ../espeak-data/* $(DESTDIR)$(DATADIR)

    Thanks for all your help.
      gmake: install: Command not found

      install is a little utility to copy files and set attributes. It doesn't come with all flavors of Unix, so you might want to install the GNU version (from the coreutils package) into some place where it's found along $PATH.  If all else fails, you should also be able to fake its functionality with a combination of cp, chmod and chown put into a little script. Or even simply copy the files manually...