http://stackoverflow.com/questions/17181073/ubuntu-12-04-libudev-dev-wont-install-because-of-dependenciesubuntu
//被依赖的libudev1是11.2版本 $ dpkg -l libudev1 Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-=========================================-=========================-=========================-======================================================================================== ii libudev1:amd64 198-0ubuntu11.2 amd64 libudev shared library ii libudev1:i386 198-0ubuntu11.2 i386 libudev shared library //要安装libudev-dev这个包 zhangze@zhangze-OptiPlex-7010:/var/cache$ apt-cache search libudev-dev libudev-dev - libudev development files zhangze@zhangze-OptiPlex-7010:/var/cache$ dpkg -l libudev-dev dpkg-query: no packages found matching libudev-dev //安装显示依赖不知足 zhangze@zhangze-OptiPlex-7010:/var/cache$ sudo apt-get install libudev-dev Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: libudev-dev : Depends: libudev1 (= 198-0ubuntu11) but 198-0ubuntu11.2 is to be installed E: Unable to correct problems, you have held broken packages.
安装libudev-dev,显示依赖于共享库libudev1,而版本(= 198-0ubuntu11)指的是当前要安装包libudev-dev的版本是11,可是应该安装的是11.2这个版本,vim
所以是要安装的libudev-dev所在仓库版本太老,而不是已安装的libudev1版本老。ui
去http://packages.ubuntu.com/搜索libudev-dev这个包,发现它是在security这部分中的,而系统的security开关被关闭,已经好久没有更新security的包了spa
所以在software & update中打开security update,再次apt-get install libudev-dev成功(也能够vim /etc/apt/sources.list添加security源)code
安装完之后的最终结果是两个包所有更新到11.2版本,说明以前的问题是:libudev1已经在最新的11.2版本,orm
而要安装的libudev-dev在原来的仓库中是老版本11的,老版本不能依赖于新版本,添加security仓库,下载的是最新版本的libudev-dev包blog
zhangze@zhangze-OptiPlex-7010:/var/cache$ dpkg -l libudev-dev Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-=========================================-=========================-=========================-======================================================================================== ii libudev-dev 198-0ubuntu11.2 amd64 libudev development files zhangze@zhangze-OptiPlex-7010:/var/cache$ dpkg -l libudev1 Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-=========================================-=========================-=========================-======================================================================================== ii libudev1:amd64 198-0ubuntu11.2 amd64 libudev shared library ii libudev1:i386 198-0ubuntu11.2 i386 libudev shared library