After not using my HP PSC1210 printer for quite a while, I tried to emerge the latest version of hpoj (libusb+sane-backends+xsane+hpoj). libusb, sane-backends and xsane compiled just fine but compiling hpoj threw the following errors: mlcd make[1]: Entering directory `/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd' g++ -I/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd -I/var/tmp/portage/hpoj- 0.91-r3/work/hpoj-0.91/mlcd/transport -O -g -Wall -DEX_TRANSPORT_UNIX_PORT -DPAR _PLATFORM_LINUX -DUSB_PLATFORM_LINUX -DJD_DEBUGLITE -DHAVE_LIBUSB -DVAR_RUN_PR EFIX="\"/var/run\"" -c -o ExMgr.o ExMgr.cpp g++ -I/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd -I/var/tmp/portage/hpoj- 0.91-r3/work/hpoj-0.91/mlcd/transport -O -g -Wall -DEX_TRANSPORT_UNIX_PORT -DPAR _PLATFORM_LINUX -DUSB_PLATFORM_LINUX -DJD_DEBUGLITE -DHAVE_LIBUSB -DVAR_RUN_PR EFIX="\"/var/run\"" -c -o ParPort.o ParPort.cpp g++ -I/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd -I/var/tmp/portage/hpoj- 0.91-r3/work/hpoj-0.91/mlcd/transport -O -g -Wall -DEX_TRANSPORT_UNIX_PORT -DPAR _PLATFORM_LINUX -DUSB_PLATFORM_LINUX -DJD_DEBUGLITE -DHAVE_LIBUSB -DVAR_RUN_PR EFIX="\"/var/run\"" -c -o transport/ExTransport.o transport/ExTransport.cpp g++ -I/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd -I/var/tmp/portage/hpoj- 0.91-r3/work/hpoj-0.91/mlcd/transport -O -g -Wall -DEX_TRANSPORT_UNIX_PORT -DPAR _PLATFORM_LINUX -DUSB_PLATFORM_LINUX -DJD_DEBUGLITE -DHAVE_LIBUSB -DVAR_RUN_PR EFIX="\"/var/run\"" -c -o transport/ExMlcTransport.o transport/ExMlcTransport.cp p g++ -I/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd -I/var/tmp/portage/hpoj- 0.91-r3/work/hpoj-0.91/mlcd/transport -O -g -Wall -DEX_TRANSPORT_UNIX_PORT -DPAR _PLATFORM_LINUX -DUSB_PLATFORM_LINUX -DJD_DEBUGLITE -DHAVE_LIBUSB -DVAR_RUN_PR EFIX="\"/var/run\"" -c -o transport/ExMlcCommandChannel.o transport/ExMlcCommand Channel.cpp g++ -lusb -o ptal-mlcd ExMgr.o ParPort.o transport/ExTransport.o transport/ExMlc Transport.o transport/ExMlcCommandChannel.o ExMgr.o(.text+0xafcd): In function `UsbMgr::llioInit()': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cpp:3945: undefined refe rence to `usb_init' ExMgr.o(.text+0xb03e): In function `UsbMgr::llioGlob()': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cpp:3959: undefined refe rence to `usb_find_busses' ExMgr.o(.text+0xb043):/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cp p:3960: undefined reference to `usb_find_devices' ExMgr.o(.text+0xb059):/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cp p:3964: undefined reference to `usb_busses' ExMgr.o(.text+0xb266): In function `UsbMgr::libusbFindDevice(char*, unsigned, ch ar*, unsigned, int, int)': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cpp:4031: undefined refe rence to `usb_busses' ExMgr.o(.text+0xbb46): In function `UsbMgr::llioGetDeviceID(int*)': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cpp:4301: undefined refe rence to `usb_control_msg' ExMgr.o(.text+0xbb57):/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cp p:3743: undefined reference to `usb_close' ExMgr.o(.text+0xc234): In function `UsbMgr::llioSetProtocol(ExMgr::ExInterface)' : /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cpp:4551: undefined refe rence to `usb_set_altinterface' ExMgr.o(.text+0xc3a5): In function `UsbMgr::llioSetChannel(ExMgr::ExInterface, i nt)': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cpp:4596: undefined refe rence to `usb_control_msg' ExMgr.o(.gnu.linkonce.t._ZN6UsbMgr16libusbHandleOpenEiPi+0x22): In function `Usb Mgr::libusbHandleOpen(int, int*)': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cpp:3733: undefined refe rence to `usb_open' ExMgr.o(.gnu.linkonce.t._ZN6UsbMgr16libusbHandleOpenEiPi+0x65): In function `Usb Mgr::libusbHandleOpen(int, int*)': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ParPort.h:85: undefined refere nce to `usb_claim_interface' ExMgr.o(.gnu.linkonce.t._ZN6UsbMgr16libusbHandleOpenEiPi+0xd5):/var/tmp/portage/ hpoj-0.91-r3/work/hpoj-0.91/mlcd/ParPort.h:675: undefined reference to `usb_clos e' ExMgr.o(.gnu.linkonce.t._ZN6UsbMgr9llioResetEv+0x1f): In function `UsbMgr::llioR eset()': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ParPort.h:289: undefined refer ence to `usb_close' ExMgr.o(.gnu.linkonce.t._ZN6UsbMgr9llioResetEv+0x40): In function `UsbMgr::llioR eset()': /usr/include/sys/io.h:99: undefined reference to `usb_close' ExMgr.o(.gnu.linkonce.t._ZN6UsbMgr9_llioReadEN5ExMgr11ExInterfaceEPhii+0x3b): In function `UsbMgr::_llioRead(ExMgr::ExInterface, unsigned char*, int, int)': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.h:1058: undefined refere nce to `usb_bulk_read' ExMgr.o(.gnu.linkonce.t._ZN6UsbMgr10_llioWriteEN5ExMgr11ExInterfaceEPKhii+0x44): In function `UsbMgr::_llioWrite(ExMgr::ExInterface, unsigned char const*, int, int)': /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cpp:3739: undefined refe rence to `usb_bulk_write' ExMgr.o(.gnu.linkonce.t._ZN6UsbMgr10_llioWriteEN5ExMgr11ExInterfaceEPKhii+0xd0): /var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd/ExMgr.cpp:76: undefined refere nce to `usb_bulk_write' collect2: ld returned 1 exit status make[1]: *** [ptal-mlcd] Fehler 1 make[1]: Leaving directory `/var/tmp/portage/hpoj-0.91-r3/work/hpoj-0.91/mlcd' make: *** [just_compile] Fehler 2 !!! ERROR: net-print/hpoj-0.91-r3 failed. !!! Function src_compile, Line 45, Exitcode 2 !!! compilation failed -- However `grep usb_init /usr/lib/libusb-0.1.4.4.0` yields a positive result. Reproducible: Always Steps to Reproduce: 1. emerge hpoj 2. 3. Actual Results: linking error Expected Results: compile properly I've tried compiling using both libusb-0.1.8 (~x86) and libusb-0.1.7-r1 (x86), no difference. Same with and without -fstack-protector. I emerge most of my programs, especially the whole base system NOT using ~x86. `emerge info`: Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.2, glibc-2.3.2-r9, 2.6.5-gentoo-r1) ================================================================= System uname: 2.6.5-gentoo-r1 i686 AMD Athlon(tm) Gentoo Base System version 1.4.16 ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -mcpu=athlon-xp -m3dnow -msse -mfpmath=sse -mmmx -O3 -pipe -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop -frerun-loop-opt -falign-functions=4 -maccumulate-outgoing-args -ffast-math -fprefetch-loop-arrays -fstack-protector" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -mcpu=athlon-xp -m3dnow -msse -mfpmath=sse -mmmx -O3 -pipe -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop -frerun-loop-opt -falign-functions=4 -maccumulate-outgoing-args -ffast-math -fprefetch-loop-arrays -fstack-protector" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox userpriv usersandbox" GENTOO_MIRRORS="ftp://gentoo.inode.at/source/ ftp://mirror.switch.ch/mirror/gentoo/ http://gentoo.inode.at/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow X aalib acpi alsa avi berkdb cdr crypt cups directfb dvd emacs encode esd fam fbcon flac foomaticdb gdbm gif gimpprint gnome gpm gstreamer gtk gtk2 icq imap imlib java joystick jpeg ldap libg++ libwww mad maildir matroska mikmod mitshm mmx mng motif mozilla moznocompose moznoirc moznomail mpeg ncurses nls nocd nptl oggvorbis opengl oscar oss pam pdflib perl png ppds python quicktime readline samba scanner sdl slang spell sse ssl svga tcpd theora threads truetype unicode usb videos x86 xml2 xmms xrandr xv zlib"
Just to let you know I'm having the same issue. Portage 2.0.50-r9 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.4.20040619-r0, 2.6.7-gentoo-r7) ================================================================= System uname: 2.6.7-gentoo-r7 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz Gentoo Base System version 1.5.1 Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-mcpu=pentium4 -march=pentium4 -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-mcpu=pentium4 -march=pentium4 -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs buildpkg ccache distcc sandbox" GENTOO_MIRRORS="ftp://planetmirror.com.au/pub/gentoo ftp://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://mirror.datapipe.net/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/data/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.au.gentoo.org/gentoo-portage" USE="X aalib alsa apache2 apm arts audiofile avi berkdb bonobo cdr crypt cups curl divx4linux dvd dvdr encode esd flash foomaticdb gd gdbm gif gnome gpm gtk gtk2 gtkhtml guile imlib java jpeg kde ldap libg++ libwww mad mcal mikmod motif mozilla mpeg ncurses nls oggvorbis opengl oss pam pcre pdflib perl php png postgres ppds python qt quicktime readline samba sane scanner sdl slang spell sse ssl svga tcltk tcpd tiff truetype usb x86 xml xml2 xmms xv zlib
I'd just like to add (I guess it's related) that compiling with -usb on a system that has libusb installed, causes hpoj to autodetect the presence of the usb libraries. One needs to add myconf="${myconf} $(use_with usb)" it seems. Not sure what the --with-libusb and --with-usb options to configure are for.
Thanks Georgi. I used - >"USE=-usb" emerge hpoj and the compile worked Thanks again
hpoj does compile fine with libusb-0.1.7. Can it be fixed to work with r1 or 0.1.8? Thanks
works fine for me ( USE=usb ), re-emerging libusb made it working ( same linking bug before ) banquise ~ # emerge info Portage 2.0.51_rc1 (default-linux/amd64/gcc34-2004.2, gcc-3.4.2, glibc-2.3.4.20040808-r0, 2.6.8-gentoo-r3 x86_64) ================================================================= System uname: 2.6.8-gentoo-r3 x86_64 AMD Athlon(tm) 64 Processor 3200+ Gentoo Base System version 1.5.3 ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.15.90.0.1.1-r3 Headers: sys-kernel/linux26-headers-2.6.7-r4 Libtools: sys-devel/libtool-1.5.2-r5 ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="" ARCH="amd64" AUTOCLEAN="yes" AUTO_SYMLINK="yes" BASH_ENV="/etc/spork/is/not/valid/profile.env" CC="gcc" CFLAGS="-march=k8 -O3 -pipe" CHOST="x86_64-pc-linux-gnu" CLASSPATH="." CLEAN_DELAY="5" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/share/config:/usr/kde/3.3/env:/usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/X11/Sessions/ /etc/gconf /etc/terminfo /etc/env.d" CONF_LIBDIR="lib64" CVS_RSH="ssh" CXX="g++" CXXFLAGS="-march=k8 -O3 -pipe" DISPLAY=":0" DISTDIR="/usr/portage/distfiles" EDITOR="/usr/bin/vim" FEATURES="autoaddcvs ccache cvs fixpackages noinfo sandbox strict userpriv" FETCHCOMMAND="/usr/bin/wget -t 5 --passive-ftp -P ${DISTDIR} ${URI}" GDK_USE_XFT="1" GENTOO_MIRRORS="ftp://ftp.gentoo.skynet.be/pub/gentoo/" GRP_STAGE23_USE="ipv6 pam tcpd readline nls ssl gpm perl python berkdb acl ncurses -java -nptl" G_BROKEN_FILENAMES="1" HOME="/root" HOSTNAME="banquise" INFOPATH="/usr/share/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/3.4/info" JAVAC="/opt/sun-jdk-1.5.0_rc1/bin/javac" JAVA_HOME="/opt/sun-jdk-1.5.0_rc1" JDK_HOME="/opt/sun-jdk-1.5.0_rc1" KBUILD_OUTPUT_PREFIX="" KDEDIR="/usr/kde/3.3" KDEDIRS="/usr" KDE_MALLOC="1" LANG="fr_FR.utf8" LANGUAGE="33" LESS="-R" LESSOPEN="|lesspipe.sh %s" LINGUAS="fr zh_CN" LINUX_PORTAGE_WRITABLE="no" LOGNAME="root" LS_COLORS="no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mng=01;35:*.xcf=01;35:*.pcx=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.avi=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.mov=01;35:*.qt=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.mp3=00;36:*.wav=00;36:*.mid=00;36:*.midi=00;36:*.au=00;36:*.ogg=00;36:" MAKEOPTS="-j2" MANPATH="/usr/share/man:/usr/local/share/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/3.4/man:/usr/share/man::/opt/sun-jdk-1.5.0_rc1/man:/usr/qt/3/doc/man" NOCOLOR="false" PAGER="/usr/bin/less" PATH="/root/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/3.4:/usr/X11R6/bin:/opt/sun-jdk-1.5.0_rc1/bin:/opt/sun-jdk-1.5.0_rc1/jre/bin:/usr/qt/3/bin:/usr/kde/3.3/sbin:/usr/kde/3.3/bin:/usr/share/karamba/bin" PKGDIR="/usr/portage/packages" PORTAGE_ARCHLIST="alpha amd64 arm hppa ia64 macos mips ppc ppc64 s390 sparc x86 x86-obsd x86-fbsd ppc-macos" PORTAGE_BINHOST_CHUNKSIZE="3000" PORTAGE_CALLER="emerge" PORTAGE_GID="250" PORTAGE_MASTER_PID="30613" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" PRELINK_PATH="" PRELINK_PATH_MASK="" PS1="\[\033[01;31m\]\h \[\033[01;34m\]\w \$ \[\033[00m\]" PWD="/root" QMAKESPEC="linux-g++" QTDIR="/usr/qt/3" RESUMECOMMAND="/usr/bin/wget -c -t 5 --passive-ftp -P ${DISTDIR} ${URI}" RPMDIR="/usr/portage/rpm" RSYNC_RETRIES="3" RSYNC_TIMEOUT="180" SANE_CONFIG_DIR="/etc/sane.d" SHELL="/bin/bash" SHLVL="1" SYNC="rsync://rsync.gentoo.org/gentoo-portage" TERM="xterm" USE="X alsa amd64 apache2 apm arts artswrappersuid avi berkdb bitmap-fonts bzlib canna cddb cdr crypt cups curl dba divx4linux dvd encode esd foomaticdb gd gdbm gif gimp gimpprint gphoto2 gtk2 imlib ipv6 ipv6arpa jabber jce jpeg kde ldap libg++ libwww lzwlzw-tiff mikmod ming mng motif mozilla mpeg multilib mysql ncurses nls nptl oggvorbis opengl oss pam pdflib perl php pic png posix postgres ppds python qt quicktime readline scanner sdl session slang spell ssl tcltk tcpd tiff truetype unicode usb userlocales wmf xine xml xml2 xmms xprint xsl xv xvid zlib linguas_fr linguas_zh_CN" USER="root" USERLAND="GNU" USE_EXPAND="VIDEO_CARDS INPUT_DEVICES LINGUAS" XARGS="xargs -r" XINITRC="/etc/X11/xinit/xinitrc" _="/usr/bin/emerge"
fine, so i can close it now