Build failure in solid, udev related

Alexander Neundorf neundorf at kde.org
Fri May 24 21:15:10 UTC 2013


On Thursday 23 May 2013, Alexander Neundorf wrote:
> On Thursday 23 May 2013, Alexander Neundorf wrote:
> > Hi,
> > 
> > it seems I finally got a working Qt install :-)
> > 
> > 
> > [  7%] Building CXX object
> > tier1/solid/src/solid/CMakeFiles/Solid.dir/backends/shared/udevqtdevice.c
> > pp .o tier1/solid/src/solid/backends/shared/udevqtdevice.cpp: In member
> > function 'QStringList UdevQt::Device::sysfsProperties() const':
> > tier1/solid/src/solid/backends/shared/udevqtdevice.cpp:205:72: error:
> > 'udev_device_get_sysattr_list_entry' was not declared in this scope
> > tier1/solid/src/solid/backends/shared/udevqtdevice.cpp:206:1: error:
> > control reaches end of non-void function
> > make[2]: ***
> > [tier1/solid/src/solid/CMakeFiles/Solid.dir/backends/shared/udevqtdevice.
> > cp p.o] Error 1
> > make[1]: *** [tier1/solid/src/solid/CMakeFiles/Solid.dir/all] Error 2
> > 
> > 
> > Some udev version check missing or what is going wrong here ?
> 
> This is on Slackware 13.37, udev 0.10.0.

Ok. My udev version is 165.
udev_device_get_sysattr_list_entry() (and udev_get_run_path(), but solid 
doesn't use that) was added in version 167.

libudev.h does not seem to have a function for querying the version, at least 
I didn't find any in libudev.h.

I think I'll add a check whether udev_device_get_sysattr_list_entry() is 
available.
What to do if not ?
Error out, and make it a hard dependency, or just have the function 
QStringList Device::sysfsProperties() return an empty list if the function is 
not available ?

Alex


More information about the Kde-frameworks-devel mailing list