Updated Developer guides (markdown)

Mischievous Meerkat 2020-11-02 00:50:39 +05:30
parent 552ec0d87c
commit a56b82e72a

@ -116,6 +116,22 @@ Verify the binary.
file nnn file nnn
nnn: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), statically linked, for GNU/Linux 2.6.32, BuildID[sha1]=1be54d27687f83cf42393dd59dba2723798956de, stripped nnn: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), statically linked, for GNU/Linux 2.6.32, BuildID[sha1]=1be54d27687f83cf42393dd59dba2723798956de, stripped
## Optimization tips
Careful use of make variables, static compilation and [upx](https://upx.github.io/) compression can do wonders!
```
$ make CFLAGS=-march=corei7 O_NORL=1 O_NOMOUSE=1 O_NOLOC=1 O_NOBATCH=1 O_NOSSN=1 O_NOFIFO=1 O_QSORT=1 O_NOUG=1 static
$ upx nnn-static
$ ls -l nnn-static
-rwxrwxr-x 1 user user 593808 Nov 2 00:45 nnn-static
# top output (/usr/bin has 1544 files)
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
31953 user 20 0 2428 2244 4 S 0.0 0.0 0:00.02 ./nnn-static -cdDEnQrux /usr/bin
```
## Compile for Pi ## Compile for Pi
The `nnn` version available as a stable Raspbian package is very out of date (v2.2), which means that the only way to get a recent version of `nnn` is to compile from source. The `nnn` version available as a stable Raspbian package is very out of date (v2.2), which means that the only way to get a recent version of `nnn` is to compile from source.