0

I am running debuild and lintian automatically finds 2 errors that I have with manpage.

the project structure after running debuild command looks like this

hoseopjeong@hoseopjeong-VirtualBox:~/Documents/HoseopJeong_debian_lab9/debianlaboration9-0.0$ tree
.
├── debian
│   ├── changelog
│   ├── compat
│   ├── control
│   ├── copyright
│   ├── debhelper-build-stamp
│   ├── debianlaboration9
│   │   ├── DEBIAN
│   │   │   ├── control
│   │   │   └── md5sums
│   │   └── usr
│   │       ├── bin
│   │       │   └── electrotest_standalone
│   │       └── share
│   │           ├── doc
│   │           │   └── debianlaboration9
│   │           │       ├── changelog.Debian.gz
│   │           │       ├── copyright
│   │           │       └── README.Debian
│   │           └── man
│   │               └── electrotest_standalone.man.gz
│   ├── debianlaboration9.debhelper.log
│   ├── debianlaboration9.substvars
│   ├── files
│   ├── patches
│   │   └── series
│   ├── README.Debian
│   ├── rules
│   ├── source
│   │   ├── format
│   │   └── local-options
│   └── watch
├── electrotest_standalone
├── electrotest_standalone.man
├── Makefile
└── src
    └── electrotest_standalone.c

the makefile which debuild uses looks like this

prefix = /usr/local
all: electrotest

electrotest: ./src/electrotest_standalone.c
    gcc -o electrotest_standalone ./src/electrotest_standalone.c -lm
install:electrotest
    install -D electrotest_standalone \
    $(DESTDIR)$(prefix)/bin/electrotest_standalone
    mkdir $(DESTDIR)/usr/share
    mkdir $(DESTDIR)/usr/share/man
    cp electrotest_standalone.man \
    $(DESTDIR)/usr/share/man/
clean:
    -rm -f electrotest 

distclean:clean
uninstall:
    -rm -f $(DESTDIR)$(prefix)/bin/electrotest_standalone

.PHONY: all install clean distclean uninstall

So, as far as I understand a man file must be located inside usr/share/man. That's why I created ushare/man folders manually with Makefile and I can see when I run debuild command, debuild creates those folders and with cp electrotest_standalone.man \ $(DESTDIR)/usr/share/man/, debuild also manages to copy that file into man folder that generated by debuild. However, lintian still doesn't like that.

When I run debuild, lintian shows

Now running lintian...
W: debianlaboration9: improbable-bug-number-in-closes 10
E: debianlaboration9: manpage-in-wrong-directory usr/share/man/electrotest_standalone.man.gz
W: debianlaboration9: binary-without-manpage usr/bin/electrotest_standalone

It says my man file is in wrong place and binary file electrotest_standalone does not have any man page. What am I doing wrong?

Currently my man page just has a single sentence

NAME: electrotest_standalone

1 Answer 1

1

Your man page needs to be installed in a subdirectory of /usr/share/man, depending on its section, and it needs to be named appropriately. In your case, the target should be /usr/share/man/man1/electrotest_standalone.1.

See the relevant lintian tag information. You can see this yourself locally by running lintian -i. Note too that, unless you intend to submit your package to the Debian archives, you don’t need to care about all the lintian warnings; just make sure you don’t have any actual errors (E:).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .