|
31 | 31 | * [Installation Linux/OSX](#installation)
|
32 | 32 | * [Compilation Linux](#compilation-linux)
|
33 | 33 | * [Compilation OSX](#compilation-osx)
|
| 34 | +* [Compilation FreeBSD](#compilation-freebsd) |
34 | 35 | * [Installing the snap](#installing-the-snap)
|
35 | 36 | * [Configurability](#configurability)
|
36 | 37 | * [License](#license)
|
37 | 38 |
|
38 | 39 | ## News
|
39 | 40 |
|
40 |
| -### Under development |
| 41 | +##### 16 January 2022 |
| 42 | + |
| 43 | +Release v1.2.0 with FreeBSD support. No release binaries for FreeBSD provided as of yet. |
| 44 | + |
| 45 | +Again a big thanks to [@joske](https://github.com/joske) for his porting efforts! |
| 46 | + |
| 47 | +Since compatibility with Linux, MacOS and FreeBSD are done, the focus going forward will be on new features like GPU monitoring. |
41 | 48 |
|
42 | 49 | ##### 13 November 2021
|
43 | 50 |
|
@@ -460,6 +467,89 @@ Also needs a UTF8 locale and a font that covers:
|
460 | 467 | gmake help
|
461 | 468 | ```
|
462 | 469 |
|
| 470 | +## Compilation FreeBSD |
| 471 | + |
| 472 | + Needs GCC 10 or higher, (GCC 11 or above strongly recommended for better CPU efficiency in the compiled binary). |
| 473 | + |
| 474 | + Note that GNU make (`gmake`) is required to compile on FreeBSD. |
| 475 | + |
| 476 | +1. **Install dependencies** |
| 477 | + |
| 478 | + ``` bash |
| 479 | + sudo pkg install gmake gcc11 coreutils git |
| 480 | + ``` |
| 481 | + |
| 482 | +2. **Clone repository** |
| 483 | + |
| 484 | + ``` bash |
| 485 | + git clone https://github.com/aristocratos/btop.git |
| 486 | + cd btop |
| 487 | + ``` |
| 488 | + |
| 489 | +3. **Compile** |
| 490 | + |
| 491 | + Append `STATIC=true` to `make` command for static compilation. |
| 492 | + |
| 493 | + Append `QUIET=true` for less verbose output. |
| 494 | + |
| 495 | + Append `STRIP=true` to force stripping of debug symbols (adds `-s` linker flag). |
| 496 | + |
| 497 | + Append `ARCH=<architecture>` to manually set the target architecture. |
| 498 | + If omitted the makefile uses the machine triple (output of `-dumpmachine` compiler parameter) to detect the target system. |
| 499 | + |
| 500 | + Use `ADDFLAGS` variable for appending flags to both compiler and linker. |
| 501 | + |
| 502 | + For example: `ADDFLAGS=-march=native` might give a performance boost if compiling only for your own system. |
| 503 | + |
| 504 | + ``` bash |
| 505 | + gmake |
| 506 | + ``` |
| 507 | + |
| 508 | +4. **Install** |
| 509 | + |
| 510 | + Append `PREFIX=/target/dir` to set target, default: `/usr/local` |
| 511 | + |
| 512 | + Notice! Only use "sudo" when installing to a NON user owned directory. |
| 513 | + |
| 514 | + ``` bash |
| 515 | + sudo gmake install |
| 516 | + ``` |
| 517 | + |
| 518 | +5. **(Recommended) Set suid bit to make btop always run as root (or other user)** |
| 519 | + |
| 520 | + No need for `sudo` to see information for non user owned processes and to enable signal sending to any process. |
| 521 | + |
| 522 | + Run after make install and use same PREFIX if any was used at install. |
| 523 | + |
| 524 | + Set `SU_USER` and `SU_GROUP` to select user and group, default is `root` and `wheel` |
| 525 | + |
| 526 | + ``` bash |
| 527 | + sudo gmake setuid |
| 528 | + ``` |
| 529 | + |
| 530 | +* **Uninstall** |
| 531 | + |
| 532 | + ``` bash |
| 533 | + sudo gmake uninstall |
| 534 | + ``` |
| 535 | + |
| 536 | +* **Remove any object files from source dir** |
| 537 | + |
| 538 | + ```bash |
| 539 | + gmake clean |
| 540 | + ``` |
| 541 | + |
| 542 | +* **Remove all object files, binaries and created directories in source dir** |
| 543 | + |
| 544 | + ```bash |
| 545 | + gmake distclean |
| 546 | + ``` |
| 547 | + |
| 548 | +* **Show help** |
| 549 | + |
| 550 | + ```bash |
| 551 | + gmake help |
| 552 | + ``` |
463 | 553 |
|
464 | 554 | ## Installing the snap
|
465 | 555 | [](https://snapcraft.io/btop)
|
|
0 commit comments