Guys, Ran into a big problem with sane 1.0.22-6 causing builds to fail due to the return of 'sane-config --libs' returning non-library flags which results in CMake botching the link config. From the sane-config man page:
--libs Print the additional libraries that are necessary to link a SANE frontend to libsane. Currently, on arch, 'sane-config --libs' returns: 10:51 providence:~/bld/david> sane-config --libs -lsane -Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu -L/usr/lib -lnetsnmp -lcrypto -lm -ldl -lv4l1 -lm -ltiff -ljpeg -lgphoto2 -lgphoto2_port -lm -lexif -lusb -lavahi-common -lavahi-client -lusb I don't know exactly why (I presume it has to do with the interpretation of the '--' information by CMake), but it results in run-together link strings: <snip> CMakeFiles/kscan-shared.dir/imgscaninfo.cpp.o -L/opt/trinity/lib -L/opt/tqt3/lib /opt/trinity/lib/libkio.so.4.2.0 -lsane-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu-L/usr/lib -lnetsnmp -lcrypto -lm -ldl -lv4l1 -ltiff -ljpeg -lgphoto2 -lgphoto2_port -lexif -lusb -lavahi-common -lavahi-client /opt/trinity/lib/libtdeui.so.4.2.0 -lfreetype -lfontconfig /opt/trinity/lib/libtdesu.so.4.2.0 -lutil /opt/trinity/lib/libkwalletclient.so.1.0.1 /opt/trinity/lib/libtdecore.so.4.2.0 /opt/trinity/lib/libDCOP.so.4.2.0 /opt/trinity/lib/libtdefx.so.4.2.0 -ltqt -ltqt-mt -lXrender -lX11 -lz -lidn -lXcomposite -lICE -lSM -Wl,-rpath,/opt/trinity/lib:/opt/tqt3/lib: /usr/bin/ld: cannot find -lsane-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu-L/usr/lib collect2: ld returned 1 exit status Here the problem is the run-together: '-lsane-Wl'. What I need to know is this a "bug --or-- feature" on arch? Looking at the current sane in extra, this behavior isn't something that arch is configuring or patching. However, the string returned by sane-config --libs is the makepkg.conf string for $LDFLAGS plus the lib information for sane... What say the experts? -- David C. Rankin, J.D.,P.E.