Thanks, Ralph for "gentle-ing" me through this.
When I follow the instructions I get a fatal error in make. Can you recommend what to do next? I'm stumped/ tevs@tevs-SEi:~/HETP/sane_install_220525a/backends-master$ make echo UNKNOWN > .version-t && mv .version-t .version make all-recursive make[1]: Entering directory '/home/tevs/HETP/sane_install_220525a/backends-master' Making all in include make[2]: Entering directory '/home/tevs/HETP/sane_install_220525a/backends-master/include' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/home/tevs/HETP/sane_install_220525a/backends-master/include' Making all in lib *[...a whole lot of stuff eleded here...]* /bin/bash ../libtool --silent --tag=CC --mode=link gcc -Wall -Wextra -pedantic -g -O2 -Wl,-z,defs -rpath '/usr/local/lib/sane' -version-number UNKNOWN:: -module -o libsane-abaton.la libsane_abaton_la-abaton-s.lo ../lib/liblib.la libabaton.la ../sanei/sanei_init_debug.lo ../sanei/sanei_constrain_value.lo ../sanei/sanei_config.lo ../sanei/sanei_config2.lo sane_strstatus.lo ../sanei/sanei_scsi.lo ../libtool: line 1152: UNKNOWN + : syntax error: operand expected (error token is "+ ") Makefile:4452: recipe for target 'libsane-abaton.la' failed make[3]: *** [libsane-abaton.la] Error 1 make[3]: Leaving directory '/home/tevs/HETP/sane_install_220525a/backends-master/backend' Makefile:3994: recipe for target 'all' failed make[2]: *** [all] Error 2 make[2]: Leaving directory '/home/tevs/HETP/sane_install_220525a/backends-master/backend' Makefile:607: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/home/tevs/HETP/sane_install_220525a/backends-master' Makefile:497: recipe for target 'all' failed make: *** [all] Error 2 -- Wes On Tue, May 24, 2022 at 11:29 PM Ralph Little <[email protected]> wrote: > Hi, > > On 2022-05-24 22:14, Wes Rishel wrote: > > I have a new Ubuntu 18.04 system and I need to add a one-line patch to > fujitsu.h that Allan Noah has previously given us. And then I > presumably need to configure and make the package (?) > > Ubuntu seems to have 1.0..31 installed but I am thinking it might be safer > to get a fresh copy particular since I have gotten part way through a > couple of procedures without luck. > > There are instructions from several sources all of which sound > authoritative and give different sources, methods of downloading, etc. I > have tried following a couple of them and hit various issues which might be > obvious to a more experienced Linuxian. > > I think these are the questions I need answered and my tentative answer. > (Please advise me if I'm asking the wrong questions.) > > *Q1: What is the best way of downloading and building Sane 1.0.31 > including the source files?* > I want to be sure to get the stable version rather than a snapshot. > (Currently, I am thinking that cloning > https://gitlab.com/sane-project/backends would be the appropriate > approach.) > > *Q2: Do I need to remove the existing SANE that came with Ubuntu before i > start this process?* > > *Q3: Where should I put it or where does the installer put it?* > Depending on the download source I either pick a destination or it > automatically just puts it somewhere. In the first case is there a > preferred directory in the Ubuntu file structure? If the recommended > approach turns out to be apt, apt-get, or some other package installer, how > can I find that? (I am assuming something like "sudo find / > -iname libsane-dll* will find all versions but how do I know I am looking > at the version I just installed rather than the preinstalled version? > > *Q4: What is the procedure after downloading the system?* > I am assuming that > https://gitlab.com/sane-project/backends/-/blob/master/INSTALL.linux is > tje definitive source. Can it really be as easy as > > $ ./autogen.sh # only if you just cloned the git repository > $ ./configure > $ make > $ make install > > > Or as a practical matter, do I really need to follow one of the more > complex procedures in that document? > > *Q5: Editing in my patch.* > I assume that I can do the build, see that it works okay, and then edit in > my patch and rebuild. I assume that I skip the autogen.sh when rebuilding? > > *Q5: Do I need to do this as root?* > > Thanks in advance for your attention and advice! > > -- Wes > > > My advice for you really depends on what you want to do with this header > file change. > > If you just need to try the change out to see if it works, then I would > build SANE with the change, installing it to a temporary area where you can > test the newly generated fujitsu backend. > > 1. Clone the repo from > https://gitlab.com/sane-project/backends/-/tree/master > 2. Make the change to the header file. > 3. Get the build dependencies using "sudo apt build-dep sane-backends" (I > think you have to have the source repos enabled). > 4. Do the build steps that you mention above but when you do the > ./configure, specify a temporary location: "./configure --prefix > $HOME/sane-install" or whereever you would like the install to go to. The > backend files will go to $HOME/sane-install/lib/sane in this case. > 5. In a terminal, set LD_LIBRARY_PATH to load libraries from the temporary > area: "export LD_LIBRARY_PATH=$HOME/sane-install/lib/sane" > 6. Run your favourite frontend from the terminal, e.g. xsane > 7. Test the change. > > If the change is good, then we can add it to the backend repo and you can > use the SANE git PPA here: > https://launchpad.net/~sane-project/+archive/ubuntu/sane-git > We are still generating builds for Bionic since it is a LTS release. > > Cheers, > Ralph > > >
