Next: , Previous: , Up: Top   [Contents][Index]


2 Installation

Welcome! This section should get you up and running to enjoy poking at nasty ELF data in no time.

2.1 Build Requirements

These are the build requirements if you are building from a distribution source tarball:

2.2 Fetching and unpacking poke-elf

The first step to install poke-elf is to fetch a copy of it. Like all GNU poke pickles, poke-elf releases are distributed as source tarballs:

$ wget https://ftp.gnu.org/gnu/poke/poke-elf-version.tar.gz

Where version is the version you want to install. Next step is to untar the tarball. It will expand to a poke-elf-version directory:

$ tar xvf poke-elf-version.tar.gz
$ cd poke-elf-version/

2.3 Configuring the sources

It is time now to configure the sources. You do that by invoking the configure script that is in the root directory of the distribution.

$ ./configure

By default the configure script will configure the source in order to be installed under /usr/local, which is a system location. If you want to install the pickles in some other location, you can pass a --prefix command line option to the script. For example:

$ ./configure --prefix=$HOME/.poke.d

Now that the sources are configured, it is time to build them and check the distribution.

2.4 Building and checking

$ make
$ make check

There should be no errors. If any of the tests fail, please re-run make check but this time enabling verbose output:

$ make check VERBOSE=1

And file a bug report at https://sourceware.org/bugilla including both the contents of your config.log file and the output you get on the terminal when you run make check. Please file the bug report for product “poke” and component “elf-pickle”.

Note that the testsuite will only be executed if a recent enough poke was found during configure.

2.5 Installing

The last step is to install the pickles in your system:

$ make install

Note that the installed poke will find the installed pickles only if these are installed under the same prefix than poke. If you install the pickles in some other location (like under ~/.poke.d for example, you will have to set the environment variable POKE_LOAD_PATH. Just put something like this in your .bashrc or similar file:

export POKE_LOAD_PATH=$HOME/.poke.d

And that’s it! Now run poke, load the pickles and enjoy!

$ poke /bin/ls
(poke) load elf
(poke) var elf = Elf64_File @ 0#B
...

Next: , Previous: , Up: Top   [Contents][Index]