Question

I'm a beginner at Debian, and GNU/linux in general and I was following a tutorial to create a cross compiler, when I stumbled upon the message

/usr/bin/fakeroot: line 178: /debian/rules/: No such file or directory

when running the following command

TARGET="alpha-dec-osf4" fakeroot debian/rules binary-cross

or even

fakeroot /debian/rules/ clean

I'm trying to find a manual or guide to learn about debian/rules, but I even have problems finding something for beginners.

Does anybody know what I'm doing wrong? I'm using Debian GNU/Linux 7.5 (wheezy)

Thank you very much in advance

EDIT: I tried these commands to compile a binutils 2.17, in order to make a cross compiler that would output Alpha OSF/1 binaries on x86 systems. I downloaded binutils from the GNU webpage, so perhaps this was my main mistake, as @Sigi explained that it should be a debian package.

Was it helpful?

Solution

You must not use /debian/rules, but instead debian/rules (note the missing slash at the beginning). If you start a path to a file with a slash (/), the system will start the search in the root directory of your filesystem (this is the top-most directory on any Unix system). On the other hand, if your path does not begin with a slash, the search will always be relative to your current directory. The latter is what applies to invoking debian/rules.

The command is supposed to be executed inside an extracted Debian source package. Check if ls debian/rules will list a file, otherwise you are in the wrong directory.

Regarding a guide for beginners or anything: Debian package building, let alone the creating or modification of Debian packages is decidedly not a beginner's topic. You should first get a solid foundational knowledge in Linux administration before getting your hands dirty in that area.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top