11

Always when I install something, I get the following error multiple times:

Unknown configuration key 'foreign-architecture' found in your 'dpkg' configuration files. This warning will become a hard error at a later date, so please remove the offending configuration options and replace them with 'dpkg --add-architecture' invocations at the command line.

When I try dpkg --add-architecture I get:

Unknown configuration key `foreign-architecture' found in your `dpkg'
configuration files.  This warning will become a hard error at a later
date, so please remove the offending configuration options and replace
them with `dpkg --add-architecture' invocations at the command line.

dpkg: error: --add-architecture takes one argument

Type dpkg --help for help about installing and deinstalling packages [*];
Use `dselect' or `aptitude' for user-friendly package management;
Type dpkg -Dhelp for a list of dpkg debug flag values;
Type dpkg --force-help for a list of forcing options;
Type dpkg-deb --help for help about manipulating *.deb files;

Options marked [*] produce a lot of output - pipe it through `less' or `more' !

I've no problems yet, but since it says This warning will become a hard error at a later date I better do something about this. When I search 'foreign-architecture', I find an empty file, containing not a single byte. I somehow can't delete that file.

Please help, it's a kind of creapy...

I use Ubuntu version 12.10

Updated the questions:

cat /etc/dpkg/dpkg.cfg 
no-debsig 
log /var/log/dpkg.log

ls /etc/dpkg/dpkg.cfg.d/
multiarch 
qbi
  • 19,125
  • Post the results of cat /etc/dpkg/dpkg.cfg & ls /etc/dpkg/dpkg.cfg.d/ . Re-edit your question. – NickTux Dec 20 '12 at 13:33
  • for cat:

    dpkg configuration file

    This file can contain default options for dpkg. All command-line

    options are allowed. Values can be specified by putting them after

    the option, separated by whitespace and/or an `=' sign.

    Do not enable debsig-verify by default; since the distribution is not using

    embedded signatures, debsig-verify would reject all packages.

    no-debsig

    Log status changes and actions to a file.

    log /var/log/dpkg.log

    For ls: multiarch

    – speedy-MACHO Dec 20 '12 at 14:34
  • Please edit your question and add the results between code tags. Cannot read anything like that. – NickTux Dec 20 '12 at 14:51
  • Please update the question with the following information: Ubuntu version, architecture (uname -m) and the oputput of cat /var/lib/dpkg/arch. – Eric Carvalho Dec 20 '12 at 17:32
  • sorr, what do you mean with 'architecture (uname -m)'? and cat /var/lib/dpkg/arch gives: No such file or directory. I don't think I have to write that down? By the way, if you want to edit, just do it. – speedy-MACHO Dec 20 '12 at 18:22
  • Open a terminal window and enter: uname -m and it will give the CPU architecture (ex: i686 for a Pentium 4). – James Dec 22 '12 at 22:51
  • Is your question still unanswered? If yes please provide the contents of the file /etc/dpkg/dpkg.cfg.d/multiarch. – qbi Jan 12 '13 at 22:53
  • I have encountered same problem, so I edited the question with wanted information – alhelal Sep 14 '17 at 12:56

2 Answers2

7

You say in the comments that you see:

$ ls /etc/dpkg/dpkg.cfg.d/
multiarch

Presumably that file, /etc/dpkg/dpkg.cfg.d/multiarch, contains a foreign-architecture key. So I suggest just deleting the file:

sudo rm /etc/dpkg/dpkg.cfg.d/multiarch
tumbleweed
  • 8,026
3

My /etc/dpkg/dpkg.cfg.d/multiarch contained:

foreign-architecture i386

I deleted the file. I then issued:

dpkg --add-architecture foreign-architecture
muru
  • 197,895
  • 55
  • 485
  • 740
dartal
  • 31