From: Ethan A M. <merritt@u.washington.edu> - 2008-01-21 20:52:06
|
On Monday 21 January 2008 07:25, pl...@pi... wrote: > Hi, > > I am trying to build a minimum sized installation for use on an arm SBC > using crosstools on debian 3.1 > > Mostly it seems to be going perfectly but I have a couple of hitches. > > Firstly gnuplot.gih is about half a meg that I could do without. It's > addind about 25% to the foot print and will be totally useless on the > headless target. Is there (or should there be) a means to take this out of > the build options? > > I could of course just delete it but that's a hack and I dont know if it > will cause a failure at runtime. You can test the effect for yourself easily. Just delete the file. It causes a non-fatal error message at runtime if you type "help": /usr/local/share/gnuplot/4.3/gnuplot.gih: No such file or directory gnuplot.gih compresses by about a factor of about 4X using gzip. Perhaps it would be worth tweaking the code to uncompress dynamically? > Also it appears not to get built by `make` It is normally. I don't know what you may have tweaked in the Makefile. > but during `make install` it > seems to be detected as missing and an attempt is made to build it. This > suggests an error in the make files. No. That is correct behavior. "make install" is a superset of "make all". If it detects that a component hasn't been made, it will do that first. > /bin/sh: line 1: arm-linux-gcc: command not found > make[2]: *** [alloc.o] Error 127 > make[2]: Leaving directory `/home/prof/tmp/gnuplot/src' > make[1]: *** [install-recursive] Error 1 > make[1]: Leaving directory `/home/prof/tmp/gnuplot/src' > make: *** [install-recursive] Error 1 > > > This error is coming to light since root does not have the cross compiler > in its path. [shrug] If you don't want to have it in the path permanently, you could still put the full path in the environmental variable CC before doing "make". > If I try install as user (which it does not have write perms > for) it creates the gih and then root can install it. Again it seems wrong > that it only gets build by make install rather than make. Root should not > need to build anything to run install and finally, as I said I do not want > the gih file anyway. FWIW, I have the same problem with the emacs support files. No matter what I tell gnuplot's ./configure script, "make install" always tries to write into /usr/local/share/emacs/site-lisp/ and fails if it doesn't have root permission. This drives me bats, but I've never figured out how to fix it. > ./configure tells me that help is always build . This seems to be half > correct. I would be best for this installation if I could be opted out. > > What is the best way to clean this up? In the Makefile there is a line SUBDIRS = config m4 term src docs $(LISPDIR) man demo tutorial share Remove the "docs" entry and any others that you do not care about. If you are willing to sacrifice the help subsystem in order to make the footprint smaller, then logically you would also want to omit help.c from the list of source files and comment out the calls to its routines. You used to be able to accomplish this by adding -DNO_GIH to the CFLAGS, but that option seems to have suffered from bit rot in a couple of places. I'll see about whiping up a patch to restore that as a viable option unless you beat me to it. -- Ethan A Merritt |