Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I need help with compiling midnight commander so that I can make some changes (for educational purposes). Or even creating the make files.

After downloading latest version from git. I try to perform ./autogen.sh . Result is:

maint/autopoint: 418: cannot open /usr/share/gettext/archive.tar.gz: No such file
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
cvs checkout: cannot find module `archive' - ignored
find: `archive': No such file or directory
find: `archive': No such file or directory
find: `archive': No such file or directory
autopoint: *** infrastructure files for version 0.14.3 not found; this is autopoint from GNU gettext-tools 0.17
autopoint: *** Stop.

I have installed gettext and folder /usr/share/gettext does exist. But there is no archive.tar.gz. I have no idea what should this archive contain or where to get it.

Can you help me please?

share|improve this question
    
Did you compile gettext or install it through apt-get or synaptic? If the former, does /usr/local/share/gettext/archive.tar.gz exist? –  djeikyb Feb 23 '11 at 1:58

3 Answers 3

The easiest way to compile source code in ubuntu is to use apt-get source, like this:

sudo apt-get build-dep mc
sudo apt-get -b source mc

Replace 'midnightcommander' with the real name of the package. I'm on a Windows machine right now so I can't check what the package is called but it might be 'mc'.

This command will download and build the source code for you plus any dependencies you need. After that you can just change the source code and call make from the root directory of the project to rebuild.

share|improve this answer
    
If notabene doesn't have gettext installed, build-dep is definitely the way to go. If it is installed, esp outside of apt-get/synaptic, I'm worried that build-dep will install an extra and/or conflicting version of gettext over the top. –  djeikyb Feb 23 '11 at 9:41
    
Stupid question then (sorry) where are the source codes located after this download? –  notabene Feb 23 '11 at 19:46
    
/usr/src. So you know, the source from apt-get is for Ubuntu's package of mc. Depending on what you're doing, you may be better off sticking with gitting the source directly from the mc project. –  djeikyb Feb 24 '11 at 6:20
    
@notabene, the source codes would be located at the directory which was the current directory when you executed the 'apt-get source' command, not in /usr/src –  sashoalm Feb 24 '11 at 9:10

In maverick the gettext package does not contain anymore archive.tar.gz. Some solutions:

  • Compile gettext from source
  • Quicker and dirtier: download the lucid package and extract archive.tar.gz into /usr/share/gettext
share|improve this answer

Run locate "archive.tar.gz" to see if it's anywhere on your system.

It doesn't exist anywhere

Your gettext install is fubar. Reinstall it. If you originally installed using Synaptic or apt-get, run this command:

sudo apt-get install --reinstall gettext

If you compiled it, you know the drill:

cd ~/src/gettext
sudo make uninstall
./configure --prefix=/usr && make && sudo make install

It exists at /usr/local/share/gettext

I just googled "gettext no archive.tar.gz" and came up with an old autopoint bug where it was expecting gettext to be installed to /usr and never to /usr/local. Sure enough, autogen.sh calls /usr/bin/autopoint, and:

# - gettext_dir     directory where the sources are stored.
prefix="/usr"
datarootdir="${prefix}/share"
gettext_dir="${datarootdir}/gettext"

If your gettext was installed to /usr/local, you have a few options. (1) You could change the prefix, but any Ubuntu update to autopoint will bork it. (2) I'd rather remove and reinstall gettext to /usr. (3) Of course, the easiest thing might just be to create a symlink:

ln -s /usr/local/share/gettext /usr/share/gettext

It exists somewhere else.

Curiouser and curiouser. Where the devil did it turn up?

share|improve this answer

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.