9

I ran sudo apt-get build-dep emacs24 and it returned the error:

Reading package lists... Done
E: Unable to find a source package for emacs24

Now I know the usual advice in this situation, that is, uncomment deb-src lines in the .list files in your /etc/apt/sources.list.d folder (per https://unix.stackexchange.com/questions/158395/apt-get-build-dep-is-unable-to-find-a-source-package). I've tried this though! Every single file in my /etc/apt/sources.list.d folder has any deb-src lines in it uncommented. I even ran sudo apt-get update after uncommenting these lines! So please help me. Here are the contents of my /etc/apt/sources.list.d folder, if you need the contents of any of these files, just say and I'll be happy to provide them.

$ ls /etc/apt/sources.list.d
alexlarsson-ubuntu-flatpak-xenial.list
alexlarsson-ubuntu-flatpak-xenial.list.save
cpick-ubuntu-hub-xenial.list
cpick-ubuntu-hub-xenial.list.save
damien-moore-ubuntu-codeblocks-stable-xenial.list
damien-moore-ubuntu-codeblocks-stable-xenial.list.save
danielrichter2007-ubuntu-grub-customizer-xenial.list
danielrichter2007-ubuntu-grub-customizer-xenial.list.save
docker.list
docker.list.save
dolik-rce-ubuntu-upp-xenial.list
dolik-rce-ubuntu-upp-xenial.list.save
dotnetdev.list
dotnetdev.list.save
gnome3-team-ubuntu-gnome3-staging-xenial.list
gnome3-team-ubuntu-gnome3-staging-xenial.list.save
gnome3-team-ubuntu-gnome3-xenial.list
gnome3-team-ubuntu-gnome3-xenial.list.save
google-chrome.list
google-chrome.list.save
google-earth.list
google-earth.list.save
icons.list
icons.list.save
jonathonf-ubuntu-golang-xenial.list
jonathonf-ubuntu-golang-xenial.list.save
kubuntu-ppa-ubuntu-backports-xenial.list
kubuntu-ppa-ubuntu-backports-xenial.list.save
mmk2410-ubuntu-eclipse-ide-java-xenial.list
mmk2410-ubuntu-eclipse-ide-java-xenial.list.save
mono-jenkins.list
mono-jenkins.list.save
mono-xamarin.list
mono-xamarin.list.save
nodesource.list
nodesource.list.save
noobslab-ubuntu-macbuntu-xenial.list
noobslab-ubuntu-macbuntu-xenial.list.save
notepadqq-team-ubuntu-notepadqq-xenial.list
notepadqq-team-ubuntu-notepadqq-xenial.list.save
runescape.list
runescape.list.save
saiarcot895-ubuntu-myppa-xenial.list
saiarcot895-ubuntu-myppa-xenial.list.save
spotify.list
spotify.list.save
trinity.list
trinity.list.save
ubuntu-elisp-ubuntu-ppa-xenial.list
ubuntu-elisp-ubuntu-ppa-xenial.list.save
unity8-desktop-session-team-ubuntu-unity8-preview-lxc-xenial.list
wine-ubuntu-wine-builds-xenial.list
wine-ubuntu-wine-builds-xenial.list.save

If relevant, and you can't tell by the previous bits of information I provided, I am operating on Ubuntu 16.04.1.

13

You need to uncomment the deb-src lines in the main sources file /etc/apt/sources.list, not the extra files in /etc/apt/sources.list.d

For example, change:

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://gb.archive.ubuntu.com/ubuntu/ xenial main restricted
#deb-src http://gb.archive.ubuntu.com/ubuntu/ xenial main restricted

to

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://gb.archive.ubuntu.com/ubuntu/ xenial main restricted
deb-src http://gb.archive.ubuntu.com/ubuntu/ xenial main restricted

Then update the local database:

sudo apt update

and proceed :)

| improve this answer | |
  • 2
    Don't forget to sudo apt update after. Seems obvious, but I forgot to do this – iopq Apr 27 at 21:35
  • 1
    thanks @iopq - I updated my answer to include that :) – Zanna Apr 28 at 9:04
3

software-properties-gtk option "Source code"

From the GUI, you can run:

software-properties-gtk

then under the "Ubuntu Software" tab click "Source code":

enter image description here

This has added some deb-src lines under /etc/apt/sources.list, and now I can do sudo apt-get build-dep <package>.

Tested on Ubuntu 16.04 to 18.04.

CLI method

sudo sed -Ei 's/^# deb-src /deb-src /' /etc/apt/sources.list
sudo apt-get update

Tested on the Ubuntu 18.04 Docker image. After this change, I can successful do for example:

sudo apt-get build-dep hello

and before the change it failed with the error:

E: You must put some 'source' URIs in your sources.list
| improve this answer | |
  • Not just for the lazy. This (or something similar) is necessary for a script or a Dockerfile. – jakar Dec 9 '18 at 23:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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