glitch in cmake on kdeadmin-4.4.2

lux-integ lux-integ at btconnect.com
Mon Apr 26 11:41:05 CEST 2010


On Sunday 18 April 2010 10:09:04 am Alexander Neundorf wrote:
> Hi,
>
> Jonathan, can you please have a look at the issue described below ?
>
> On Sunday 18 April 2010, lux-integ wrote:
> > Greetings,
> >
> >  I encountered this glitch when  runing cmake on kdeadmin-4.4.2:-
> >
> > -------------------------------------------------------------------------
> >-- -- -- The following OPTIONAL packages could NOT be located on your
> > system. -- Consider installing them to enable more features from this
> > software.
> > -------------------------------------------------------------------------
> >-- -- * PyCups  <http://cyberelk.net/tim/software/pycups/>
> >      PyCups was not found.  It is needed by system-config-printer-kde to
> > run. (Use -DINSTALL_SYSTEM_CONFIG_PRINTER=TRUE to install anyway)
> >    * system-config-printer
> > <http://cyberelk.net/tim/software/system-config-printer/>
> >      system-config-printer was not found.  Some of its modules
> > (cupshelpers.py, config.py, smburi.py and debug.py) are required by
> > system-config-printer-kde.
> >
> > -------------------------------------------------------------------------
> >-- --
> >
> >
> > But these are installed:-
> >
> >
> >
> > #######  for pycups  (installed is version 1.9.48) - a recent version
> >
> > root [ /usr/lib/python2.6/site-packages ]#
> > root [ /usr/lib/python2.6/site-packages ]#
> > root [ /usr/lib/python2.6/site-packages ]# ls  cups*
> > cups-1.0-py2.6.egg-info  cups.so
> > root [ /usr/lib/python2.6/site-packages ]#
> >
> >
> >
> > #### for system config printer  (installed is version -0.9.93 ) -the
> > latest available
> >
> > [ /usr/share/system-config-printer ]# ls -l
> > total 924
> > -rw-r--r-- 1 root root  19177 Apr 17 21:29 applet.glade
> > -rwxr-xr-x 1 root root  11891 Apr 17 21:29 applet.py
> > -rw-r--r-- 1 root root   8756 Apr 17 21:29 authconn.py
> > -rw-r--r-- 1 root root   1766 Apr 17 21:29 config.py
> > -rw-r--r-- 1 root root   6427 Apr 17 21:29 contextmenu.py
> > -rw-r--r-- 1 root root  25074 Apr 17 21:29 cupshelpers.py
> > -rw-r--r-- 1 root root   1703 Apr 17 21:29 debug.py
> > -rw-r--r-- 1 root root   3374 Apr 17 21:29 errordialogs.py
> > -rw-r--r-- 1 root root   1651 Apr 17 21:29 gtk_label_autowrap.py
> > -rw-r--r-- 1 root root   8046 Apr 17 21:29 gtk_treeviewtooltips.py
> > drwxr-xr-x 2 root root   4096 Apr 17 21:29 icons
> > -rw-r--r-- 1 root root  39096 Apr 17 21:29 jobviewer.py
> > -rw-r--r-- 1 root root  21724 Apr 17 21:29 monitor.py
> > -rwxr-xr-x 1 root root   9259 Apr 17 21:29 my-default-printer.py
> > -rw-r--r-- 1 root root  14601 Apr 17 21:29 openprinting.py
> > -rw-r--r-- 1 root root  12898 Apr 17 21:29 options.py
> > -rw-r--r-- 1 root root   7424 Apr 17 21:29 optionwidgets.py
> > -rwxr-xr-x 1 root root  31054 Apr 17 21:29 ppds.py
> > -rw-r--r-- 1 root root   3678 Apr 17 21:29 probe_printer.py
> > -rwxr-xr-x 1 root root  13780 Apr 17 21:29 pysmb.py
> > -rw-r--r-- 1 root root   3027 Apr 17 21:29 smburi.py
> > -rw-r--r-- 1 root root   5064 Apr 17 21:29 statereason.py
> > -rw-r--r-- 1 root root 443717 Apr 17 21:29 system-config-printer.glade
> > -rwxr-xr-x 1 root root 189264 Apr 17 21:29 system-config-printer.py
> > drwxr-xr-x 2 root root   4096 Apr 17 21:29 troubleshoot
> > root [ /usr/share/system-config-printer ]#
> >
> >
> >  the file
> > system-config-printer-kde/cmake-modules/FindSystemConfigPrinter.py seems
> > to be asking
> > for cupshelpers.ppds, and cuphelpers.cupshelpers  which are missing from
> > the relatively modern version of   that installed
> >
> > help would be appreciated
>
> Hmm, I don't know anything about PyCups, so I can't really help here.
> According to websvn
> (http://websvn.kde.org/trunk/KDE/kdeadmin/system-config-printer-kde/cmake-m
>odules/FindSystemConfigPrinter.py?revision=859284&view=markup ) the author
> seems to be Jonathan Riddel, so I put him on CC.
>
> Alex

Here are two fixes which work for  on machines  with blfs_linux (compiled from 
sources). 
I hope you are able to work these up as  in future versions.

##### for pycups
create this file
cat>/path/to/kdeadmin-4.4.2/modules/Findblfs_pyCUPS.cmake<<"EOF"
###############################################################
FIND_LIBRARY(
  blfs_pyCUPS_LIBRARY 
  NAMES cups.so  
  PATH 
  /usr/lib/python2.6/site-packages 
  /usr/local/lib 
    ) 

IF (  blfs_pyCUPS_LIBRARY)
   SET(blfs_pyCUPS_FOUND TRUE)
   MESSAGE(STATUS "Found pycups: ${blfs_pyCUPS_LIBRARY}")
ENDIF (  blfs_pyCUPS_LIBRARY)

IF (blfs_pyCUPS_FOUND)
   IF (cups_FIND_QUIETLY)
      MESSAGE(STATUS "Found pycups: ${blfs_pyCUPS_LIBRARY}")
   ENDIF ( cups_FIND_QUIETLY)
ELSE (blfs_pyCUPS_FOUND)
   IF (cups_FIND_REQUIRED)
      MESSAGE(FATAL_ERROR "Could not find pycups")
   ENDIF (cups_FIND_REQUIRED)
ENDIF (blfs_pyCUPS_FOUND)
MARK_AS_ADVANCED( blfs_pyCUPS_LIBRARY)
EOF

AS with FindSystemConfigPrinter.cmake:-
###A  add  this line :- 
find_package(blfs_pyCUPS REQUIRED)
(line 7)
to   kdeadmin-4.4.2/CMakeLists.txt

###B change
macro_optional_find_package(PyCups)
to 
macro_optional_find_package(blfs_pyCUPS)
in  kdeadmin-4.4.2/system-config-printer-kde/CMakeLists.txt

#################### for system-config-printer
cat>/path/to/kdeadmin-4.4.2/modules/Findblfs_systemConfigPrinter.cmake<<"EOF"
###############################################################
SET(blfs_systemConfigPrinter_BIN_PATH
   /usr/bin
  )
FIND_PROGRAM(blfs_systemConfigPrinter_RUNTIME
  NAMES system-config-printer
  PATHS ${blfs_systemConfigPrinter_BIN_PATH}
)

FIND_PROGRAM(blfs_systemConfigPrinter_PYTHON
  NAMES  cupshelpers.py ppds.py py  
  PATHS ${blfs_systemConfigPrinter_BIN_PATH}
/usr/share/system-config-printer
/usr/lib/python2.6/site-packages/cupshelpers
)


IF (blfs_systemConfigPrinter_RUNTIME AND blfs_systemConfigPrinter_PYTHON)
   SET(blfs_systemConfigPrinter_FOUND TRUE)
ENDIF (blfs_systemConfigPrinter_RUNTIME AND blfs_systemConfigPrinter_PYTHON)

IF (blfs_systemConfigPrinter_FOUND)
   IF (NOT blfs_systemConfigPrinter_FIND_QUIETLY)
      MESSAGE(STATUS "Found system-config-printer: 
${blfs_systemConfigPrinter_PYTHON}")
   ENDIF (NOT blfs_systemConfigPrinter_FIND_QUIETLY)

ENDIF (blfs_systemConfigPrinter_FOUND)

#ELSE (blfs_systemConfigPrinter_FOUND)
   IF (blfs_systemConfigPrinter_FIND_REQUIRED)
      MESSAGE( " Error: Could not find system-config-printer")
   ENDIF (blfs_systemConfigPrinter_FIND_REQUIRED)


MARK_AS_ADVANCED(
blfs_systemConfigPrinter_RUNTIME
blfs_systemConfigPrinter_PYTHON
)
EOF
c) add this line:-
find_package(blfs_systemConfigPrinter REQUIRED)
 (line 7 I think) to  kdeadmin-4.4.2/CMakeLists.txt

replace SystemConfigPrinter  with blfs_systemConfigPrinter in  
kdeadmin-4.4.2/system-config-printer-kde/CMakeLists.txt

###############
it might be useful to  tell users to (BEFOREHAND) set this:
export CMAKE_LIBRARY_PATH= /usr/lib/python2.6/site-packages:
$CMAKE_LIBRARY_PATH
OR make this link:-
/usr/lib/python2.6/site-packages/cups.so   /usr/local/lib/cups.so


##############################  here is typical output  from cmake after the 
above changes 


-- Check if the system is big endian - little endian
-- Found PythonInterp: /usr/bin/python2.6
-- Found Python executable: /usr/bin/python2.6
-- Found Python version: 2.6.4
-- Found Python library: /usr/lib64/libpython2.6.so
-- Found SIP version: 4.10.1
-- Found PyQt4 version: 4.7.2
-- Found PyKDE4 version 4.4.2 /usr/share/sip/PyKDE4
-- Found pycups: /usr/local/lib64/cups.so
-- Found 
system-config-printer: /usr/lib/python2.6/site-packages/cupshelpers/cupshelpers.py
-- Configuring done
-- Generating done
-- Build files have been written to: $SOURCES/kdeadmin-4.4.2/build


More information about the Kde-buildsystem mailing list