I am using Ubuntu 14.04(with Unity). Just today(as of the date of this post) I did a sudo apt-get update && sudo apt-get upgrade
and at the end of the 'Upgrade' process I got the following error :-
Setting up crossplatformui (1.0.38) ...
* Stopping ACPI services... [ OK ]
* Starting ACPI services... [ OK ]
package libqtgui4 exist
QT_VERSION = 4
make -C /lib/modules/3.13.0-27-generic/build M=/usr/local/bin/ztemtApp/zteusbserial/below2.6.27 modules
make[1]: Entering directory `/usr/src/linux-headers-3.13.0-27-generic'
CC [M] /usr/local/bin/ztemtApp/zteusbserial/below2.6.27/usb-serial.o
/usr/local/bin/ztemtApp/zteusbserial/below2.6.27/usb-serial.c:34:28: fatal error: linux/smp_lock.h: No such file or directory
#include <linux/smp_lock.h>
^
compilation terminated.
make[2]: *** [/usr/local/bin/ztemtApp/zteusbserial/below2.6.27/usb-serial.o] Error 1
make[1]: *** [_module_/usr/local/bin/ztemtApp/zteusbserial/below2.6.27] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-27-generic'
make: *** [modules] Error 2
dpkg: error processing package crossplatformui (--configure):
subprocess installed post-installation script returned error exit status 2
Errors were encountered while processing:
crossplatformui
E: Sub-process /usr/bin/dpkg returned an error code (1)
From then on whatever apt-get
command I use(so far as I know, except apt-get update
) I keep getting the above error at the end of the process. But whichever apt-get
command I use does what it has to without fail.(For example I tried installing blender with sudo apt-get install blender
and it installed fine though it showed the above error.) After this I even got a kernel update(from 3.13.0-27 to 3.13.0-29 via the Software Updater), but even now the issue persists. How do I solve this issue?
As this question/answer surmises,
linux/smp_lock.h
was a file used in old 2.6 kernels. It no longer exists in Ubuntu, nor should it.Your system it trying to compile a driver for an ancient kernel version. Just look at the error output:
Dump
ztemtApp
(whatever that is) and either replace it with a version for a modern Kernel or just ignore it. It's not compiling so if you're not missing anything, I'd suggest you just remove it and leave it at that.If you look at the results from this Google search result, you might get an idea of the cause of the trouble.
I think this issue is due to some broken package and to clean out broken packages, I think these are available in the Safe start boot menu
Maybe try them out in that or similar sequence. (This is from my own memory so check what there actually is and use them in a sequence that feels suitable to you.)
Also if you type ONLY (followed by ENTER)
at the prompt you will see short info about each option. These should be the same ones as in the boot menu.
will tell more.
"Use the force, Luke" (read up on the options - use them in a sane manner!)
I solved this issue with help from the link that Hannu provided(Okay, the first search result, which is, this). From that link I understood that deleting the package named
crossplatformui
that had got installed(without my knowledge) when a Reliance data card was used in my PC recently would solve the issue. I did it withSynaptic package manager
as shown by the image below:As it is evident from the image I searched for the package and selected it for complete removal. After that I clicked Apply and the package was removed. After this I tried using
apt-get
commands and the above error(in my question) did not appear.PS:-
For those wondering about the actual issue here, Oli's answer here clearly explains it. Quoting his answer:
This line of the error(in my question above) tells it all! :-
/usr/local/bin/ztemtApp/zteusbserial/**below2.6.27**/usb-serial.c:34:28: fatal error: linux/smp_lock.h: No such file or directory
(Look at it saying below2.6.27 which means
crossplatformui
is only supported below kernel version 2.6.27 while my present kernel is 3.13.0 and so it caused the error.)