Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I generally compile whatever I need but I am trying to standardize my development platform. I am running a development schroot on ubuntu (base 11.10 : development 12.whatever).

I have installed boost 1.48 and now I am trying to install mongodb-dev. It seems to indirectly depend on libboost1.46-dev via libboost-dev. Whats the cleanest and most long term solution for me to fix this problem ?

State of my system :

(precise_amd64)hassan@hassan-ubuntu:~/dev/twit/scripts/bin$ sudo apt-get install mongodb-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:
 mongodb-dev : Depends: libboost-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
------------------------------------------------------------------------------------------------
(precise_amd64)hassan@hassan-ubuntu:~/dev/twit/scripts/bin$ sudo apt-get install libboost-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:
 libboost-dev : Depends: libboost1.46-dev but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
-------------------------------------------------------------------------------------------------
(precise_amd64)hassan@hassan-ubuntu:~/dev/twit/scripts/bin$ sudo apt-get install libboost1.48-dev
Reading package lists... Done
Building dependency tree      
Reading state information... Done
libboost1.48-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
------------------------------------------------------------------------------------------------
share|improve this question

1 Answer 1

As you noticed, the (empty) package libboost-dev depends on libbost1.46-dev instead of libbost1.48-dev (because of some problems with existing packages).

To solve this, rebuilt it with

apt-get source  libboost-dev # get the source files
cd boost-defaults*
sed -i -e "s/1.46/1.48/g" debian/control # replace 1.46 with 1.48
debuild -uc -us # rebuild the package
dpkg -i ../libboost*.deb # install it.

For this you need to have the devscripts package installed.

The most correct way would be to add a new changelog entry to debian/changelog to prevent updating the package.

Alternatively, you could create a dummy package by yourself with equivs.

share|improve this answer
    
There's a trailing ] on the link –  gravitystorm Dec 5 '12 at 17:18
    
@gravitystorm: Link fixed, thanks. –  jofel Dec 6 '12 at 12:16

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.