You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/src/content/docs/build-help.mdx
+44-18Lines changed: 44 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,18 +4,18 @@ description: Build Help
4
4
---
5
5
6
6
import {
7
-
Advanced,
8
-
Charts,
9
-
Details,
10
-
Modal,
11
-
Steps,
12
-
Tabs,
13
-
TabItem,
14
-
Card,
15
-
CardGrid,
16
-
LinkCard,
17
-
Aside,
18
-
Icon,
7
+
Advanced,
8
+
Charts,
9
+
Details,
10
+
Modal,
11
+
Steps,
12
+
Tabs,
13
+
TabItem,
14
+
Card,
15
+
CardGrid,
16
+
LinkCard,
17
+
Aside,
18
+
Icon,
19
19
} from"/src/components/global.jsx";
20
20
21
21
Once the script has successfully configured the platform you can execute the help switch to see how it works and what options you have available to you.
@@ -24,6 +24,14 @@ Once the script has successfully configured the platform you can execute the hel
24
24
./qbittorrent-nox-static.sh -h
25
25
```
26
26
27
+
## Order of preference
28
+
29
+
The script will use the following order of preference when configuring the build environment:
30
+
31
+
1. Command line flags
32
+
2.`.qbt_env` file in the same directory as the script
33
+
3. Exported `env` variables
34
+
27
35
## ENV settings
28
36
29
37
The script has some `env` settings that can trigger certain behaviour without the need to pass flags to the script.
@@ -57,19 +65,37 @@ You can export these before you run the script to set them. The can be used for
Using the `qbt_optimise` will only add `-march=native` to the build flags, when not cross compiling.
72
+
:::
73
+
74
+
The script build is already optimised but if you really want to experiment you can use the following flags in the main `env` and they will be appended to the current build flags:
75
+
76
+
```bash
77
+
export CFLAGS=""
78
+
export CPPFLAGS=""
79
+
export CXXFLAGS=""
80
+
export LDFLAGS=""
81
+
```
82
+
83
+
See the `_custom_flags` function in the script for more information.
84
+
60
85
<Detailssummary="Cross arch options">
61
86
`armel``armhf``armv7``aarch64`
62
87
63
-
`x86_64``x86`
88
+
`x86``x86_64`
64
89
65
-
`s390x`
90
+
`s390x`
66
91
67
-
`powerpc``ppc64el`
92
+
`powerpc``ppc64el`
68
93
69
-
`mips``mipsel``mips64``mips64el`
94
+
`mips``mipsel``mips64``mips64el`
70
95
71
-
`riscv64`
96
+
`loongarch64`
72
97
98
+
`riscv64`
73
99
</Details>
74
100
75
101
:::tip
@@ -85,7 +111,7 @@ If you set `qbt_build_tool=qmake` and `qbt_qt_version=5` you can build qBittorre
85
111
All switches and flags have a supporting help option that will provide dynamic content where applicable.
86
112
87
113
:::note
88
-
The `--boot-strap-release` and `--boot-strap-multi-arch` options are specific to GitHub actions but if you read `--help-boot-strap-release` you can see how to trigger `aarch64|armv7` builds on your local system using Alpine/Debian/Ubuntu via docker.
114
+
The `--bootstrap-release` and `--bootstrap-multi-arch` options are specific to GitHub actions but if you read `--help-bootstrap-release` you can see how to trigger `aarch64|armv7` builds on your local system using Alpine/Debian/Ubuntu via docker.
`qbittorrent-nox-static.sh™` was originally a simple, amateurish bash script, to build a static `qbittorrent-nox` binary for `x86_64`. The script has grown and evolved since then and now it's a complicated bash script.
10
+
`qbittorrent-nox-static.sh™` was originally a simple, amateurish bash script, to build a static `qbittorrent-nox` binary for `x86_64`. The script has grown and evolved since then and now it's a complicated bash script.
11
+
12
+
As of `01/2025`: `qbt-nox-static.bash™` is `v2.1.0` and `qbittorrent-nox-static.sh™` is `v2.0.15`. The former is a fork of the latter, from this version, with changes specific to the dependency handling, which in turn makes breaking changes to the default behaviour of the script. Combined with renaming the script to `.bash` from `.sh` as it is not a POSIX compliant script this would effectively have made `qbittorrent-nox-static.sh` unavailable for use.
13
+
14
+
So the existence of the two is a transitional change and the `qbittorrent-nox-static.sh` will be deprecated in the future, though any non breaking changes will be backported to the original script.
11
15
12
16
### What does it do?
13
17
14
-
It handles a lot of the nuanced complexity around building various different dependencies on two different host platforms, towards the same outcome, whilst targeting these architectures:
18
+
It handles a lot of the nuanced complexity around building various different dependencies on two different host platforms, towards the same outcome and can target these architectures via crossbuilding:
15
19
16
20
<Detailssummary=" target architectures">
17
21
`armel``armhf``armv7``aarch64`
18
22
19
-
`x86_64``x86`
23
+
`x86``x86_64`
20
24
21
25
`s390x`
22
26
23
27
`powerpc``ppc64el`
24
28
25
29
`mips``mipsel``mips64``mips64el`
26
30
27
-
`riscv64``loongarch64`
28
-
</Details>
31
+
`loongarch64`
29
32
33
+
`riscv64`
34
+
</Details>
30
35
31
36
⭐ On supported host build platforms the `qbittorrent-nox-static.sh` will perform these three main tasks via simple prompt:
32
37
@@ -40,7 +45,7 @@ It handles a lot of the nuanced complexity around building various different dep
40
45
41
46
</Steps>
42
47
43
-
The script is highly configurable and is capable of native and cross building. These more advanced configurations will be discussed later sections.
48
+
The script is highly configurable and is capable of native and cross building. These more advanced configurations will be discussed later sections of the documentation.
0 commit comments