Giter Club home page Giter Club logo

qbittorrent-nox-static's Introduction

qbittorrent-nox-static

Codacy Badge CodeFactor matrix multi build and release Debian Based CI

Summary

The qbittorrent-nox-static project is a bash build script that compiles a static qbittorrent-nox binary using the latest available dependencies from their source. These statically linked binaries can run on any matching CPU architecture and are not OS specific. This means you can run a x86_64 Alpine edge build on any Linux based OS of like CentOS | Fedora | OpenSuse | Debian | Ubuntu and more.

Tip

You don't need to use the script to access the binaries it creates, just use the release tag you need or latest release page

See here for how to install the latest release

Linked Github repositories

This build script uses and depends on some related repositories.

Optional Github repositories

Documentation

Tip

Visit the documentation for in depth information on using this project and script usage.

WSL2

Tip

These static builds can be used on WSL2 and accessed via localhost:8080 using the download instructions below

Install the latest release

Tip

For the most current build visit the latest release page

Or uses these commands for your arch:

x86

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/x86-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

x86_64

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/x86_64-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

armhf (armv6)

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/armhf-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

armv7

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/armv7-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

aarch64

mkdir -p ~/bin && source ~/.profile
wget -qO ~/bin/qbittorrent-nox https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/aarch64-qbittorrent-nox
chmod 700 ~/bin/qbittorrent-nox

Libtorrent versions

Important

Libtorrent v1.2 is currently the main branch supported by qBittorrent since a change with the release of 4.4.5

Libtorrent v2.0 builds are still released as latest releases as it it does not really matter to this project as it always builds and releases for both v1.2 and v2.0. See the next section for how to get the version you need via the latest release URL.

Tip

You can view the current latest and pre releases and tags here https://github.com/userdocs/qbittorrent-nox-static/tags

Getting the Version you want via the latest release URL

Since this project builds and releases both v1.2 and v2.0 builds simultaneously we can use the commands below to always get the latest version of the related pre release via the latest release dependency-version.json asset.

Using this method it does not matter which version is the latest release or pre release as the commands will provide you the version specific info you need for the twinned latest/pre releases.

For Libtorrent v1.2

jq -r '. | "release-\(.qbittorrent)_v\(.libtorrent_1_2)"' < <(curl -sL https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/dependency-version.json)

For Libtorrent v2.0

jq -r '. | "release-\(.qbittorrent)_v\(.libtorrent_2_0)"' < <(curl -sL https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/dependency-version.json)

Revisions

The build has 5 main dependencies tracked that will trigger a rebuild on an update being available.

  • qBittorrent
  • Libtorrent
  • Qt
  • Boost
  • Openssl

When a new build is triggered for updating qBittorrent or Libtorrent a new release will be generated as the release tags will be updated.

Since I do not append revision info to tags Qt - Boost - Openssl builds will only update the existing release assets.

To track these revisions you can use this command. All new releases start at a revision of 0 and increment by 1 per revised build.

jq -r '.revision' < <(curl -sL "https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/dependency-version.json")

Dependency json

From release-4.4.5 each release contains a dependency-version.json file that provide some key version information for that is shared across the latest release and the twinned pre release. This helps to overcome some limitations of the API for consistently and directly accessing this information.

Downloading the file like this:

curl -sL https://github.com/userdocs/qbittorrent-nox-static/releases/latest/download/dependency-version.json

Will output a result like this:

{
    "openssl": "3.2.0",
    "boost": "1.84.0",
    "libtorrent_1_2": "1.2.19",
    "libtorrent_2_0": "2.0.9",
    "qt5": "5.15.12",
    "qt6": "6.6.1",
    "qbittorrent": "4.6.2",
    "revision": "3"
}

As demonstrated above by using the latest release URL we can construct the tag of the twinned pre release and therefore the asset URL with no margin for error.

Important

From the release of qBittorrent v5 configure based builds will be unsupported and we will only be able to use cmake to build qBittorrent v5 onwards. All releases from that point on will drop Qt5 builds as at this point cmake,Qt6 and v5 should be the default and preferred build combination with Qt5 being a legacy dependency.

qbittorrent-nox-static's People

Contributors

angristan avatar boredazfcuk avatar codacy-badger avatar dependabot[bot] avatar guillaumedsde avatar icecodenew avatar userdocs avatar xnihil0 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qbittorrent-nox-static's Issues

script musl hangs after Installing boost build

Hi thanks a lot for this scripts

i installed an LXC Alpine 3.11 amd64 to statically build with musl script

after adding bash and tar missing in base configuration i am starting script

./qbittorrent-nox-static-musl.sh all

all runs fine but script hangs after

`
Installing boost build

Bootstrapping the build engine with toolset gcc...

Bootstrapping is done. To build and install, run:

./b2 install --prefix=<DIR>

warning: No toolsets are configured.
warning: Configuring default toolset "gcc".
warning: If the default is wrong, your build may not work correctly.
warning: Use the "toolset=xxxxx" option to override our guess.
warning: For more configuration options, please consult
warning: http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html
...found 471 targets...
...updating 239 targets...
common.copy /root/qbittorrent-build/bin/b2
common.copy /root/qbittorrent-build/share/boost-build/boost-build.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build-system.jam
common.copy /root/qbittorrent-build/share/boost-build/src/tools/cygwin.jam
common.copy /root/qbittorrent-build/share/boost-build/src/tools/cw.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/virtual-target.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/version.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/type.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/toolset.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/targets.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/scanner.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/property.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/property-set.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/project.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/feature.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/generators.jam
common.copy /root/qbittorrent-build/share/boost-build/src/build/configure.jam
.....

common.copy /root/qbittorrent-build/share/boost-build/src/util/regex.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/param.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/print.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/path.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/os.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/order.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/option.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/numbers.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/indirect.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/doc.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/container.jam
common.copy /root/qbittorrent-build/share/boost-build/src/util/assert.jam
common.copy /root/qbittorrent-build/share/boost-build/src/kernel/modules.jam
common.copy /root/qbittorrent-build/share/boost-build/src/kernel/errors.jam
common.copy /root/qbittorrent-build/share/boost-build/src/kernel/class.jam
common.copy /root/qbittorrent-build/share/boost-build/src/kernel/bootstrap.jam
common.copy /root/qbittorrent-build/share/boost-build/src/kernel/boost-build.jam
...updated 239 targets...

Installing boost libraries
`

and nothing more.... got prompt just like it was finnished

have any clue how to fix this ?

looking inside qbittorrent-build .. all files were deleted and only have a boost.tar.gz 0KB ...

sames happen on ARM64 LXC ...

Opensuse?

I need something like this in my life, any chance you have or could point me to similar that would work on Opensuse Tumbleweed? Their repo builds aren't working for me any longer due to compile issues.

hi how can i use it on my router

i am chinese ,and my english is poor ,blew error happen on my router
my quesion is how can i use or rebuild it. thinks(i have a pc with ubuntu 18.04 64 bit)

root@XiaoQiang:/userdisk/opt/bin# qbittorrent-nox
Illegal instruction (core dumped)
root@XiaoQiang:/userdisk/opt/bin# uname -a
Linux XiaoQiang 2.6.36 #3 MiWiFi-R1D-2.25.213 SMP PREEMPT Tue Oct 16 11:44:14 UTC 2018 armv7l GNU/Linux
root@XiaoQiang:/userdisk/opt/bin#

root@XiaoQiang:/# cat /proc/cpuinfo
Processor : ARMv7 Processor rev 0 (v7l)
processor : 0
BogoMIPS : 1998.84

processor : 1
BogoMIPS : 1998.84

Features : swp half thumb fastmult edsp
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc09
CPU revision : 0

Hardware : Northstar Prototype
Revision : 0000
Serial : 0000000000000000

b_chip : 53010
b_chiprev : 0
b_chippkg : 0

boost build python version error

Hi, awesome scripts you've built, I'm trying to use them to build an alpine based qbittorrent container with a statically compilled binary.
I am using this dockerfile (alpine 3.11 with the following build commands:

RUN apk add --no-cache \
    wget \
    curl \
    bash \
    bash-completion \
    build-base \
    pkgconf \
    autoconf \
    automake \
    libtool \
    git \
    perl \
    python3 \
    python3-dev \
    linux-headers 

# get qBittorrent compilation script
ADD https://git.io/JvLcZ qbittorrent-nox-static-musl.sh 

RUN chmod 700 qbittorrent-nox-static-musl.sh 

RUN ./qbittorrent-nox-static-musl.sh all --no-delete

but I'm struggling to get boost to build, I get this error :

#14 963.9 Submodule path 'tools/quickbook': checked out '944f760cc2decfe745540f019cad078a57a27337'
#14 963.9 Building Boost.Build engine with toolset gcc... tools/build/src/engine/b2
#14 973.1 Unicode/ICU support for Boost.Regex?... not found.
#14 973.1 Generating Boost.Build configuration in project-config.jam for gcc...
#14 973.2 
#14 973.2 Bootstrapping is done. To build, run:
#14 973.2 
#14 973.2     ./b2
#14 973.2     
#14 973.2 To generate header files, run:
#14 973.2 
#14 973.2     ./b2 headers
#14 973.2 
#14 973.2 To adjust configuration, edit 'project-config.jam'.
#14 973.2 Further information:
#14 973.2 
#14 973.2    - Command line help:
#14 973.2      ./b2 --help
#14 973.2      
#14 973.2    - Getting started guide: 
#14 973.2      http://www.boost.org/more/getting_started/unix-variants.html
#14 973.2      
#14 973.2    - Boost.Build documentation:
#14 973.2      http://www.boost.org/build/
#14 973.2 
#14 974.2 /root/qbittorrent-build/boost/tools/build/src/build/feature.jam:491: in feature.validate-value-string from module feature
#14 974.2 error: "3.8" is not a known value of feature <python>
#14 974.2 error: legal values:
#14 974.2 /root/qbittorrent-build/boost/tools/build/src/build/property.jam:345: in validate1 from module property
#14 974.2 /root/qbittorrent-build/boost/tools/build/src/build/property.jam:371: in property.validate from module property
#14 974.2 /root/qbittorrent-build/boost/tools/build/src/build/build-request.jam:271: in convert-command-line-element from module build-request
#14 974.2 /root/qbittorrent-build/boost/tools/build/src/build/build-request.jam:222: in build-request.convert-command-line-elements from module build-request
#14 974.2 /root/qbittorrent-build/boost/tools/build/src/build-system.jam:774: in load from module build-system
#14 974.2 /root/qbittorrent-build/boost/tools/build/src/kernel/modules.jam:295: in import from module modules
#14 974.2 /root/qbittorrent-build/boost/tools/build/src/kernel/bootstrap.jam:139: in boost-build from module
#14 974.2 /root/qbittorrent-build/boost/boost-build.jam:17: in module scope from module
#14 974.2 

Compile failed && a function suggestion

What I did:

apt install -y build-essential curl pkg-config automake libtool git perl python3 python3-dev python3-numpy
# wsl2 will not auto-install most of these dependency.
cd /mnt/d/code/github-project/qbmod/
git clone --depth 1 https://github.com/userdocs/qbittorrent-nox-static.git
rm -rf qbittorrent-nox-static/qbt-build/patches
cd qbittorrent-nox-static
bash ./qbittorrent-nox-static.sh
bash ./qbittorrent-nox-static.sh -qt release-4.3.8 -lt v1.2.14 all

I did this yesterday. All things went well. Today the same commands showed these:

mv: cannot stat '/mnt/d/code/github-project/qbmod/qbittorrent-nox-static/qbt-build/glibc-2.31/build/dlfcn/stamp.oST': No such file or directory
make[2]: *** [../o-iterator.mk:9: /mnt/d/code/github-project/qbmod/qbittorrent-nox-static/qbt-build/glibc-2.31/build/dlfcn/stamp.oS] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/mnt/d/code/github-project/qbmod/qbittorrent-nox-static/qbt-build/glibc-2.31/dlfcn'
make[1]: *** [Makefile:470: dlfcn/subdir_lib] Error 2
make[1]: Leaving directory '/mnt/d/code/github-project/qbmod/qbittorrent-nox-static/qbt-build/glibc-2.31'
make: *** [Makefile:9: all] Error 2

 ● Error: The build command produced an exit code greater than 0 - Check the logs

Is it possible to add a function that allow all compiled component needed by qbittorrent and libtorrent not removed after finishing the job?

Setting build-directory doesn't work anymore

The path set either -b or --build-directory is no longer used and it always defaults to qbittorrent-build in the current directory.


Related code: https://github.com/userdocs/qbittorrent-nox-static/blob/master/qbittorrent-nox-static.sh#L556-L566

set_build_directory # see functions
#
set_module_urls # see functions
#####################################################################################################################################################
# This section controls our flags that we can pass to the script to modify some variables and behavior.
#####################################################################################################################################################
while (("${#}")); do
	case "${1}" in
		-b | --build-directory)
			qb_build_dir="${2}"
			shift 2

My understanding from the code is that since the function set_build_directory is called before the arguments are parsed, then any value set by the arguments is not used.

error: unknown option `sort=-v:refname'

lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.5 LTS
Release: 18.04
Codename: bionic

✔ Dependencies installed!

● All checks passed and core dependencies are installed, continuing to build
error: unknown option `sort=-v:refname'
usage: git ls-remote [--heads] [--tags] [--refs] [--upload-pack=]
[-q | --quiet] [--exit-code] [--get-url]
[--symref] [ [...]]

-q, --quiet           do not print remote URL
--upload-pack <exec>  path of git-upload-pack on the remote host
-t, --tags            limit to tags
-h, --heads           limit to heads
--refs                do not show peeled tags
--get-url             take url.<base>.insteadOf into account
--exit-code           exit with exit code 2 if no matching refs are found
--symref              show underlying ref in addition to the object pointed by it

error: unknown option `sort=-v:refname'
usage: git ls-remote [--heads] [--tags] [--refs] [--upload-pack=]
[-q | --quiet] [--exit-code] [--get-url]
[--symref] [ [...]]

-q, --quiet           do not print remote URL
--upload-pack <exec>  path of git-upload-pack on the remote host
-t, --tags            limit to tags
-h, --heads           limit to heads
--refs                do not show peeled tags
--get-url             take url.<base>.insteadOf into account
--exit-code           exit with exit code 2 if no matching refs are found
--symref              show underlying ref in addition to the object pointed by it

● One or more of the provided modules are not supported

● Below is a list of supported modules

● all bison gawk glibc zlib iconv openssl boost libtorrent qtbase qttools qbittorrent

are there hard coded options?

I love the app, fixes the issues I have on Opensuse with the repo versions but I've noticed something odd.
with normal version when it worked, I could bump up connections and slots and it would reflect in the queue.
with this version, i've noticed that with the same config or even making the values different, it only seems to use 10 queue slots, no matter what the value is.
It does this consistently, even after updating the built binary or restarting or anything.
Just curious, why this might be the case?

So many types, so which one I shall use?

My compute is x86_64, I am using Debian 10.
I see a lot of qb release files, such as icu. for now , I download "x86_64-qbittorrent-nox", but in the readme file, it tells me the " x86_64-icu-qbittorrent-nox", I cannot understand. I am not good at this, and I googled, but find nothing.
Can you tell me which file should downloading? PLS

how to build qb4.4+qt6+libtorrent2(qt6 link glibc error)

OS: Ubuntu 20.04 x86_64 GNU
commit id of qbittorrent-nox-static.sh:f921957
build commands:

export qbt_qt_version=6.2
./qbittorrent-nox-static.sh all -c -o -s   -lt v2.0.5

error info:

[463/647] Building CXX object src/plugins/tls/certonly/CMakeFiles/QTlsBackendCertOnlyPlugin_init.dir/QTlsBackendCertOnlyPlugin_init.cpp.o
[464/647] Building CXX object src/plugins/tls/openssl/CMakeFiles/QTlsBackendOpenSSLPlugin_init.dir/QTlsBackendOpenSSLPlugin_init.cpp.o
[465/647] Linking CXX executable libexec/qlalr
FAILED: libexec/qlalr 
: && /usr/bin/c++ -march=native -std=c++17 -static -w -s -I/home/public/softwares/qbittorrent-nox-static-master/qbt-build/include -DNDEBUG -O3 -march=native -static -L/home/public/softwares/qbittorrent-nox-static-master/qbt-build/lib    -Wl,--gc-sections -Wl,--enable-new-dtags src/tools/qlalr/CMakeFiles/qlalr.dir/qlalr_autogen/mocs_compilation.cpp.o src/tools/qlalr/CMakeFiles/qlalr.dir/compress.cpp.o src/tools/qlalr/CMakeFiles/qlalr.dir/cppgenerator.cpp.o src/tools/qlalr/CMakeFiles/qlalr.dir/dotgraph.cpp.o src/tools/qlalr/CMakeFiles/qlalr.dir/grammar.cpp.o src/tools/qlalr/CMakeFiles/qlalr.dir/lalr.cpp.o src/tools/qlalr/CMakeFiles/qlalr.dir/main.cpp.o src/tools/qlalr/CMakeFiles/qlalr.dir/parsetable.cpp.o src/tools/qlalr/CMakeFiles/qlalr.dir/recognizer.cpp.o -o libexec/qlalr  lib/libQt6Core.a  lib/libQt6Core.a  lib/libQt6Core.a  /home/public/softwares/qbittorrent-nox-static-master/qbt-build/lib/libz.a  -lm  lib/libQt6BundledPcre2.a  -ldl  /usr/lib/x86_64-linux-gnu/libglib-2.0.so  /usr/lib/x86_64-linux-gnu/libgthread-2.0.so  -lrt  -lpthread && :
/usr/bin/ld: lib/libQt6Core.a(qlibrary_unix.cpp.o): in function `QLibraryPrivate::load_sys()':
qlibrary_unix.cpp:(.text._ZN15QLibraryPrivate8load_sysEv+0x848): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: attempted static link of dynamic object `/usr/lib/x86_64-linux-gnu/libglib-2.0.so'
collect2: error: ld returned 1 exit status
[466/647] Linking CXX executable libexec/qvkgen
FAILED: libexec/qvkgen 
: && /usr/bin/c++ -march=native -std=c++17 -static -w -s -I/home/public/softwares/qbittorrent-nox-static-master/qbt-build/include -DNDEBUG -O3 -march=native -static -L/home/public/softwares/qbittorrent-nox-static-master/qbt-build/lib    -Wl,--gc-sections -Wl,--enable-new-dtags src/tools/qvkgen/CMakeFiles/qvkgen.dir/qvkgen_autogen/mocs_compilation.cpp.o src/tools/qvkgen/CMakeFiles/qvkgen.dir/qvkgen.cpp.o -o libexec/qvkgen  lib/libQt6Core.a  lib/libQt6Core.a  lib/libQt6Core.a  /home/public/softwares/qbittorrent-nox-static-master/qbt-build/lib/libz.a  -lm  lib/libQt6BundledPcre2.a  -ldl  /usr/lib/x86_64-linux-gnu/libglib-2.0.so  /usr/lib/x86_64-linux-gnu/libgthread-2.0.so  -lrt  -lpthread && :
/usr/bin/ld: lib/libQt6Core.a(qlibrary_unix.cpp.o): in function `QLibraryPrivate::load_sys()':
qlibrary_unix.cpp:(.text._ZN15QLibraryPrivate8load_sysEv+0x848): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: attempted static link of dynamic object `/usr/lib/x86_64-linux-gnu/libglib-2.0.so'
collect2: error: ld returned 1 exit status
[467/647] Linking CXX executable bin/qtpaths
FAILED: bin/qtpaths 
: && /usr/bin/c++ -march=native -std=c++17 -static -w -s -I/home/public/softwares/qbittorrent-nox-static-master/qbt-build/include -DNDEBUG -O3 -march=native -static -L/home/public/softwares/qbittorrent-nox-static-master/qbt-build/lib    -Wl,--gc-sections -Wl,--enable-new-dtags qmake/CMakeFiles/QtLibraryInfo.dir/library/proitems.cpp.o qmake/CMakeFiles/QtLibraryInfo.dir/property.cpp.o qmake/CMakeFiles/QtLibraryInfo.dir/propertyprinter.cpp.o qmake/CMakeFiles/QtLibraryInfo.dir/qmakelibraryinfo.cpp.o src/tools/qtpaths/CMakeFiles/qtpaths.dir/qtpaths_autogen/mocs_compilation.cpp.o src/tools/qtpaths/CMakeFiles/qtpaths.dir/qtpaths.cpp.o -o bin/qtpaths  lib/libQt6Core.a  lib/libQt6Core.a  lib/libQt6Core.a  /home/public/softwares/qbittorrent-nox-static-master/qbt-build/lib/libz.a  -lm  lib/libQt6BundledPcre2.a  -lpthread  -ldl  /usr/lib/x86_64-linux-gnu/libglib-2.0.so  /usr/lib/x86_64-linux-gnu/libgthread-2.0.so  -lrt && :
/usr/bin/ld: lib/libQt6Core.a(qlibrary_unix.cpp.o): in function `QLibraryPrivate::load_sys()':
qlibrary_unix.cpp:(.text._ZN15QLibraryPrivate8load_sysEv+0x848): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: attempted static link of dynamic object `/usr/lib/x86_64-linux-gnu/libglib-2.0.so'
collect2: error: ld returned 1 exit status
[468/647] Automatic MOC for target Network
AutoMoc: /home/public/softwares/qbittorrent-nox-static-master/qbt-build/qtbase-everywhere-src-6.2.2/src/network/access/qnetworkaccessdebugpipebackend_p.h:0:1: note: No relevant classes found. No output generated.
[469/647] Building CXX object qmake/CMakeFiles/qmake.dir/cmake_pch.hxx.gch
[470/647] Building CXX object src/sql/CMakeFiles/Sql.dir/cmake_pch.hxx.gch
[471/647] Building CXX object src/tools/uic/CMakeFiles/uic.dir/ui4.cpp.o
[472/647] Building CXX object src/concurrent/CMakeFiles/Concurrent.dir/cmake_pch.hxx.gch
[473/647] Building CXX object src/tools/androiddeployqt/CMakeFiles/androiddeployqt.dir/main.cpp.o
[474/647] Building CXX object src/xml/CMakeFiles/Xml.dir/cmake_pch.hxx.gch
ninja: build stopped: subcommand failed.

 ● Error: The build command produced an exit code greater than 0 - Check the logs

Please help to find out what is the problem, Thank you.

Missing dependency for Alpine Linux: curl

When building on Alpine Linux, curl is a missing dependency:

Checking if required core dependencies are installed

Dependency - OK - bash
Dependency - OK - bash-completion
Dependency - OK - build-base
Dependency - OK - pkgconf
Dependency - OK - autoconf
Dependency - OK - automake
Dependency - OK - libtool
Dependency - OK - git
Dependency - OK - perl
Dependency - OK - python3
Dependency - OK - python3-dev
Dependency - OK - linux-headers

Good, we have all the core dependencies installed, continuing to build
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found
./qbittorrent-nox-static-musl.sh: line 275: : command not found

Installing zlib

./qbittorrent-nox-static-musl.sh: line 275: : command not found

Truble with archetecture 'aarch64-linux-musl failed'

Hi. I try compile qbittorrent static manually. But i'm stuck on iconv.

./configure --host=aarch64-linux-musl --prefix=/home/dmitriy/MyProk/qtdir/qbtbuild --disable-shared --enable-static
configure: WARNING: If you wanted to set the --build type, don't use --host.
    If a cross compiler is detected then cross compile mode will be used.
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for aarch64-linux-musl-strip... no
checking for strip... strip
checking whether make sets $(MAKE)... (cached) yes
checking for aarch64-linux-musl-gcc... no
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... none
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking whether gcc needs -traditional... no
checking for a BSD-compatible install... /usr/bin/install -c
checking build system type... x86_64-unknown-linux-gnu
checking host system type... Invalid configuration `aarch64-linux-musl': machine `aarch64-linux' not recognized
configure: error: /bin/bash autoconf/config.sub aarch64-linux-musl failed

I had set env variable:

CHOST=aarch64-linux-musl
CC=aarch64-linux-musl-gcc
AR=aarch64-linux-musl-ar
CXX=aarch64-linux-musl-g++
PKG_CONFIG_PATH=/home/dmitriy/MyProk/qtdir/qbtbuild/lib/pkgconfig
LOCAL_USER_HOME="${HOME}"
PATH="/home/dmitriy/MyProk/qtdir/qbtbuild/bin${PATH:+:"$PATH"}"
LD_LIBRARY_PATH=-L/home/dmitriy/MyProk/qtdir/qbtbuild/lib

I had examined your's script but don't understand how you set cross toolchain part.

Conventional naming.

I love this static build, but i hope we can use conventional naming. x86_64 to amd64, aarch64 to arm64. The reason is to match TARGETARCH used by docker buildx, to generate single image support amd64 and arm64 image.

Boost module not installing

Hello!

I stumbled across your repo in search of an easier way to get a newer version of qBittorrent on a Raspberry Pi 4B (using OS lite, headless). I'm fairly new Linux in general, but I think I came across an issue trying to create a new qbittorrent-nox binary. I believe Pi OS Lite is based on Debian.

I started the script with everything by default: ./qbittorrent-nox-static.sh all

This ran completely fine for quite a while until it got to the boost installation and I get the below error.

Installing boost
./qbittorrent-nox-static.sh: line 277: : command not found
 There is an issue with your proxy settings or network connection

I isolated the issue by running ./qbittorrent-nox-static.sh boost where I can see the other modules skip installation because they were successful, but get the same problem above. It looks like it's failing to get the status of the boost module/version from their git repo, but I'm not quite familiar enough with the script to have it nailed down yet.

Let me know any other information you might need to help debug this issue. Thanks!

v4.3.0.1

Thank you for your work.

Do you intend to port the latest version v4.3.0.1?

Unable to find file or target named 'src/mmap_disk_job.cpp'

OS: Debian 11
download and build commands:

git clone --depth 1 --branch release-4.4.0_v2.0.5 https://github.com/userdocs/qbittorrent-nox-static
./qbittorrent-nox-static.sh -qt release-4.4.0 -lt v2.0.5 -bv 1.77.0 all

The command worked fine two weeks ago, but today I got the error as below:

patching file include/libtorrent/aux_/allocating_handler.hpp
patch unexpectedly ends in middle of line
Hunk #1 succeeded at 124 with fuzz 1.
CXXFLAGS = -std=c++17 -static -w  -I/root/qbittorrent-nox-static/qbt-build/include
LDFLAGS = -static -L/root/qbittorrent-nox-static/qbt-build/lib
OS = LINUX
building boost from source directory:  /root/qbittorrent-nox-static/qbt-build/boost
Performing configuration checks

    - default address-model    : 64-bit [1]
    - default architecture     : x86 [1]
error: Unable to find file or target named
error:     'src/mmap_disk_job.cpp'
error: referred to from project at
error:     '.'


 ● Error: The build command produced an exit code greater than 0 - Check the logs

Thank you.

Release old version of qBittorrent

Some of my private trackers have banned qBittorrent v4.3.x, and I cannot install old version of qBittorrent from official PPAs.

Can you build some old release such as qBittorrent v4.1.9.1 and put it to release?

Thanks.

Pi 4, can't compile/produce qbittorrent-nox binary

Apologies for writing another issue already, I seem to be having an issue at the very end of attempting to produce the actual qbittorrent-nox file.

Current process:

  1. Ran ./qbittorrent-nox-static.sh all
    • Appeared to work fine all the way to the last step when attempting to compile/build qbittorrent
    • No qbittorrent-nox file was produced in /qb-build/bin
  2. Restarted the Pi 4
    • Ran ./qbittorrent-nox-static.sh all again to ensure nothing was weird after installing dependencies previously
    • Encountered same issue described below
  3. Ran ./qbittorrent-nox-static.sh boost (required to build qbittorrent-nox since it gets deleted after running the qbittorrent module)
  4. Ran ./qbittorrent-nox.static.sh qbittorrent`
    • Works fine until the following logs are produced below
  5. No binary produced

It appears to be something around potentially not finding the -l:libtorrent.a file? Continuing to try a couple things but wanted to see if this error is anything you've seen before. Cheers.

linking qbittorrent-nox
/usr/bin/ld: cannot find -l:libtorrent.a
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libQt5Core.a(qlibrary_unix.o): in function `QLibraryPrivate::load_sys()':
qlibrary_unix.cpp:(.text._ZN15QLibraryPrivate8load_sysEv+0x5e8): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libQt5Core.a(qfilesystemengine_unix.o): in function `QFileSystemEngine::resolveGroupName(unsigned int)':
qfilesystemengine_unix.cpp:(.text._ZN17QFileSystemEngine16resolveGroupNameEj+0x158): warning: Using 'getgrgid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libQt5Core.a(qfilesystemengine_unix.o): in function `QFileSystemEngine::resolveUserName(unsigned int)':
qfilesystemengine_unix.cpp:(.text._ZN17QFileSystemEngine15resolveUserNameEj+0x5c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libcrypto.a(b_addr.o): in function `BIO_lookup_ex':
b_addr.c:(.text+0xad4): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libcrypto.a(b_sock.o): in function `BIO_gethostbyname':
b_sock.c:(.text+0x4c): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:616: qbittorrent-nox] Error 1
make[1]: Leaving directory '/home/pi/qbittorrent-playground/qb-build/qbittorrent/src'
make: *** [Makefile:47: sub-src-make_first] Error 2
cd src/ && ( test -e Makefile || /home/pi/qbittorrent-playground/qb-build/bin/qmake -o Makefile /home/pi/qbittorrent-playground/qb-build/qbittorrent/src/src.pro QMAKE_LRELEASE= ) && make -f Makefile install
make[1]: Entering directory '/home/pi/qbittorrent-playground/qb-build/qbittorrent/src'
linking qbittorrent-nox
/usr/bin/ld: cannot find -l:libtorrent.a
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libQt5Core.a(qlibrary_unix.o): in function `QLibraryPrivate::load_sys()':
qlibrary_unix.cpp:(.text._ZN15QLibraryPrivate8load_sysEv+0x5e8): warning: Using 'dlopen' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libQt5Core.a(qfilesystemengine_unix.o): in function `QFileSystemEngine::resolveGroupName(unsigned int)':
qfilesystemengine_unix.cpp:(.text._ZN17QFileSystemEngine16resolveGroupNameEj+0x158): warning: Using 'getgrgid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libQt5Core.a(qfilesystemengine_unix.o): in function `QFileSystemEngine::resolveUserName(unsigned int)':
qfilesystemengine_unix.cpp:(.text._ZN17QFileSystemEngine15resolveUserNameEj+0x5c): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libcrypto.a(b_addr.o): in function `BIO_lookup_ex':
b_addr.c:(.text+0xad4): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
/usr/bin/ld: /home/pi/qbittorrent-playground/qb-build/lib/libcrypto.a(b_sock.o): in function `BIO_gethostbyname':
b_sock.c:(.text+0x4c): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:616: qbittorrent-nox] Error 1
make[1]: Leaving directory '/home/pi/qbittorrent-playground/qb-build/qbittorrent/src'
make: *** [Makefile:59: sub-src-install_subtargets] Error 2

Testing: merged pull reqests into qbittorrent-nox-staticish-mk2.sh

@IceCodeNew please take a look at this script

https://github.com/userdocs/qbittorrent-nox-static/blob/master/qbittorrent-nox-staticish-mk2.sh

I have added most of the ideas you presented but in slightly different ways,

Contributor credit

https://github.com/userdocs/qbittorrent-nox-static/blob/master/qbittorrent-nox-staticish-mk2.sh#L9

Since the pull requests are closed and have overlapping i'll credit you this way?

Download and delete functions

https://github.com/userdocs/qbittorrent-nox-static/blob/master/qbittorrent-nox-staticish-mk2.sh#L245#L294

This is what i wanted to do before merging the ideas. Now there are two functions to manage instead of many commands. They are here now making relevant changes is easier.

better git commands, why?

I tested this and in the default mode where boost was downloaded from bintray the overall transfer of the script was 230M and the git commands make little difference. The problem occurred when this boost archive was unavailable and the script defaulted to boost from github. it then became 1250M. Using the the better boost commands the transfer is consistently 230M with either method but may take longer to complete when downloading boost from github.

curl flags

https://github.com/userdocs/qbittorrent-nox-static/blob/master/qbittorrent-nox-staticish-mk2.sh#L244

I have only used to for the main functions and not he url variables for now. but this is the idea.

proxy support

No system modifications. Specific to the script

https://github.com/userdocs/qbittorrent-nox-static/blob/master/qbittorrent-nox-staticish-mk2.sh#L49#L51
https://github.com/userdocs/qbittorrent-nox-static/blob/master/qbittorrent-nox-staticish-mk2.sh#L244
https://github.com/userdocs/qbittorrent-nox-static/blob/master/qbittorrent-nox-staticish-mk2.sh#L266

new flag

https://github.com/userdocs/qbittorrent-nox-static/blob/master/qbittorrent-nox-staticish-mk2.sh#L45

This is to use the qbittorrent master and/or libtorrent main branch (RC_1_2) when building.

Testing

Try it out and let me know if it manages to merged the changes you were contributing.

qbittorrent-nox seedbox

If the dev or anyone else could help out a bit:

I installed the latest x86_x64 static version on my seedbox slot and whenever I add multiple torrents / the DL/UL speeds get really fast it just turns off the WebUI completely (possibly due to the fact that libtorrent is single core, the thread is getting maximised due to the network saturation?)

Sometimes it even disconnects qbittorrent itself and it misses any torrents that might have been added during the downtime.

I found a different version from FeralHosting: https://www.feralhosting.com/wiki/software/qbittorrent

The version of that qbittorrent-nox is 4.1.6 and the size of it is only 10MB and it works great with no disconnecting of the WebUI or qbittorrent itself. Is there any chance you could build / or tell me how this was built, since I wasn't able to get down to 10MB with your latest x86_x64 static version even with the --strip option. I have also noticed that the 10MB version doesn't have RSS or Advanced Options, etc...

Any thoughts / ideas would be very welcome.

Cheers!

SIGSEGV on Rasbian

I know it's not written that this is officially supported, but I was able to get this build on my raspberry pi 4. However, when I try to run it, I get a segmentation fault after getting past the disclaimer.

I would like to troubleshoot this, but I am not exactly sure where to begin. I believe I have all the necessary dependencies installed.

If someone could give me a prod in the right direction, I can contribute back anything I discover about getting this running on the pi.

Allow environment variable to change the source code directory.

I want to build my own qbittorrent-nox-static(E.g, I modified some codes of qbittorrent locally, and I want to test on my machine. Or I use another qbittorrent fork like qbittorrent enhanced editon).

I hope there are some environment variable could do this.

Like:

QBITTORRENT_SOURCE_DIR=~/project/qbittorrent OPENSSL_SOURCE_DIR=/usr/src/openssl-1.1.1g ./qbittorrent-nox-static-musl.sh

crashing

Hello my qBittorrent is often crashing random (multiple times a day) with that message:

 bool Http::RequestParser::parsePostMessage(const QByteArray&) unknown content type: "application/json"
Http::RequestParser::ParseResult Http::RequestParser::doParse(const QByteArray&) message body parsing error
bool Http::RequestParser::parsePostMessage(const QByteArray&) unknown content type: "application/json"
Http::RequestParser::ParseResult Http::RequestParser::doParse(const QByteArray&) message body parsing error
bool Http::RequestParser::parsePostMessage(const QByteArray&) unknown content type: "application/json"
Http::RequestParser::ParseResult Http::RequestParser::doParse(const QByteArray&) message body parsing error
bool Http::RequestParser::parsePostMessage(const QByteArray&) unknown content type: "application/json"
Http::RequestParser::ParseResult Http::RequestParser::doParse(const QByteArray&) message body parsing error
Killed

Im using the newest version.

Standard tag name for one at least one of the builds

Hi 👋🏼

It would be great if you could standardize one of these releases (release-4.4.0_v2.0.5, release-4.4.0_v1.2.15) into a tag that does not include the librorrent version in the name.

For example, moving forward maybe all builds using libtorrent 2.x could be tagged release-4.4.0.

The reason I'm bringing this up is that I maintain docker images and the jq-fu to parse the tags is working but not very ideal to maintain moving forward.

See: https://github.com/k8s-at-home/container-images/blob/ad206320232ad918ea039105dfaa14504f9d7e3c/apps/qbittorrent/Dockerfile#L29L30

Thank you so much for building these binaries and releasing them here. 🙏🏼

QtLockedFile::lock(): file is not opened

Getting this output when trying to run one of your static precompiled executables:

./qbittorrent-nox 
QtLockedFile::lock(): file is not opened

*** Legal Notice ***
qBittorrent is a file sharing program. When you run a torrent, its data will be made available to others by means of upload. Any content you share is your sole responsibility.

No further notices will be issued.

Press 'y' key to accept and continue...
y
QtLockedFile::lock(): file is not opened
QtLockedFile::lock(): file is not opened

Doesn't seem to detect the settings folder/files already existing under my user's home folder, seems to start from scratch.
Any ideas what could cause this?

static-glibc.sh failed to linking qbittorrent

I'm using Scaleway DEV1-L instances, OS: Debian 10

I run the following command:

wget https://github.com/userdocs/qbittorrent-nox-static/raw/master/qbittorrent-nox-static-glibc.sh -O a
time bash a all -nodel

And this is the reult:

linking qbittorrent-nox
/usr/bin/ld: /root/qbittorrent-build/lib/libQt5Core.a(qlibrary_unix.o): in function `qdlerror()':
qlibrary_unix.cpp:(.text._ZL8qdlerrorv+0xc): undefined reference to `dlerror'
/usr/bin/ld: /root/qbittorrent-build/lib/libQt5Core.a(qlibrary_unix.o): in function `QLibraryPrivate::unload_sys()':
qlibrary_unix.cpp:(.text._ZN15QLibraryPrivate10unload_sysEv+0x13): undefined reference to `dlclose'
/usr/bin/ld: /root/qbittorrent-build/lib/libQt5Core.a(qlibrary_unix.o): in function `QLibraryPrivate::resolve_sys(char const*)':
qlibrary_unix.cpp:(.text._ZN15QLibraryPrivate11resolve_sysEPKc+0x5): undefined reference to `dlsym'
/usr/bin/ld: /root/qbittorrent-build/lib/libQt5Core.a(qlibrary_unix.o): in function `QLibraryPrivate::load_sys()':
qlibrary_unix.cpp:(.text._ZN15QLibraryPrivate8load_sysEv+0x608): undefined reference to `dlopen'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:594: qbittorrent-nox] Error 1
make[1]: Leaving directory '/root/qbittorrent-build/qbittorrent/src'
make: *** [Makefile:47: sub-src-make_first] Error 2

fatal error: layout/LETypes.h: No such file or directory

I'm wondering it's -DU_LAYOUTEX_IMPLEMENTATION causing this problem. And I'm unable to get fully understand what purpose does this option serve.


OS: Alpine Linux (edge)
Script used: https://github.com/userdocs/qbittorrent-nox-static/blob/ddaf7ce182bf840073943efce3c213e89c68b09c/qbittorrent-nox-static-musl.sh (latest version at this point)
Modifications or changes: nothing

log:

ar r ../lib/libicui18n.a ucln_in.ao fmtable.ao format.ao msgfmt.ao umsg.ao numfmt.ao unum.ao decimfmt.ao dcfmtsym.ao fmtable_cnv.ao choicfmt.ao datefmt.ao smpdtfmt.ao reldtfmt.ao dtfmtsym.ao udat.ao dtptngen.ao udatpg.ao nfrs.ao nfrule.ao nfsubs.ao rbnf.ao numsys.ao unumsys.ao ucsdet.ao ucal.ao calendar.ao gregocal.ao timezone.ao simpletz.ao olsontz.ao astro.ao taiwncal.ao buddhcal.ao persncal.ao islamcal.ao japancal.ao gregoimp.ao hebrwcal.ao indiancal.ao chnsecal.ao cecal.ao coptccal.ao dangical.ao ethpccal.ao coleitr.ao coll.ao sortkey.ao bocsu.ao ucoleitr.ao ucol.ao ucol_res.ao ucol_sit.ao collation.ao collationsettings.ao collationdata.ao collationtailoring.ao collationdatareader.ao collationdatawriter.ao collationfcd.ao collationiterator.ao utf16collationiterator.ao utf8collationiterator.ao uitercollationiterator.ao collationsets.ao collationcompare.ao collationfastlatin.ao collationkeys.ao rulebasedcollator.ao collationroot.ao collationrootelements.ao collationdatabuilder.ao collationweights.ao collationruleparser.ao collationbuilder.ao collationfastlatinbuilder.ao listformatter.ao ulistformatter.ao strmatch.ao usearch.ao search.ao stsearch.ao translit.ao utrans.ao esctrn.ao unesctrn.ao funcrepl.ao strrepl.ao tridpars.ao cpdtrans.ao rbt.ao rbt_data.ao rbt_pars.ao rbt_rule.ao rbt_set.ao nultrans.ao remtrans.ao casetrn.ao titletrn.ao tolowtrn.ao toupptrn.ao anytrans.ao name2uni.ao uni2name.ao nortrans.ao quant.ao transreg.ao brktrans.ao regexcmp.ao rematch.ao repattrn.ao regexst.ao regextxt.ao regeximp.ao uregex.ao uregexc.ao ulocdata.ao measfmt.ao currfmt.ao curramt.ao currunit.ao measure.ao utmscale.ao csdetect.ao csmatch.ao csr2022.ao csrecog.ao csrmbcs.ao csrsbcs.ao csrucode.ao csrutf8.ao inputext.ao wintzimpl.ao windtfmt.ao winnmfmt.ao basictz.ao dtrule.ao rbtz.ao tzrule.ao tztrans.ao vtzone.ao zonemeta.ao standardplural.ao upluralrules.ao plurrule.ao plurfmt.ao selfmt.ao dtitvfmt.ao dtitvinf.ao udateintervalformat.ao tmunit.ao tmutamt.ao tmutfmt.ao currpinf.ao uspoof.ao uspoof_impl.ao uspoof_build.ao uspoof_conf.ao smpdtfst.ao ztrans.ao zrule.ao vzone.ao fphdlimp.ao fpositer.ao ufieldpositer.ao decNumber.ao decContext.ao alphaindex.ao tznames.ao tznames_impl.ao tzgnames.ao tzfmt.ao compactdecimalformat.ao gender.ao region.ao scriptset.ao uregion.ao reldatefmt.ao quantityformatter.ao measunit.ao measunit_extra.ao sharedbreakiterator.ao scientificnumberformatter.ao dayperiodrules.ao nounit.ao number_affixutils.ao number_compact.ao number_decimalquantity.ao number_decimfmtprops.ao number_fluent.ao number_formatimpl.ao number_grouping.ao number_integerwidth.ao number_longnames.ao number_modifiers.ao number_notation.ao number_output.ao number_padding.ao number_patternmodifier.ao number_patternstring.ao number_rounding.ao number_scientific.ao number_utils.ao number_asformat.ao number_mapper.ao number_multiplier.ao number_currencysymbols.ao number_skeletons.ao number_capi.ao double-conversion-string-to-double.ao double-conversion-double-to-string.ao double-conversion-bignum-dtoa.ao double-conversion-bignum.ao double-conversion-cached-powers.ao double-conversion-fast-dtoa.ao double-conversion-strtod.ao string_segment.ao numparse_parsednumber.ao numparse_impl.ao numparse_symbols.ao numparse_decimal.ao numparse_scientific.ao numparse_currency.ao numparse_affixes.ao numparse_compositions.ao numparse_validators.ao numrange_fluent.ao numrange_impl.ao erarules.ao formattedvalue.ao formattedval_iterimpl.ao formattedval_sbimpl.ao formatted_string_builder.ao
ar: creating ../lib/libicui18n.a
ranlib ../lib/libicui18n.a
make[1]: Leaving directory '/root/qbittorrent-build/icu/source/i18n'
make[0]: Making `all' in `layoutex'
make[1]: Entering directory '/root/qbittorrent-build/icu/source/layoutex'
   (deps)        plruns.cpp
   (deps)        playout.cpp
   (deps)        LXUtilities.cpp
   (deps)        RunArrays.cpp
   (deps)        ParagraphLayout.cpp
playout.cpp:13:10: fatal error: layout/LETypes.h: No such file or directory
   13 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
plruns.cpp:9:10: fatal error: layout/LETypes.h: No such file or directory
    9 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
compilation terminated.
RunArrays.cpp:10:10: fatal error: layout/LETypes.h: No such file or directory
   10 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
LXUtilities.cpp:10:10: fatal error: layout/LETypes.h: No such file or directory
   10 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
ParagraphLayout.cpp:14:10: fatal error: layout/LETypes.h: No such file or directory
   14 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
   g++   ...  ParagraphLayout.cpp
   g++   ...  RunArrays.cpp
   g++   ...  LXUtilities.cpp
   g++   ...  playout.cpp
   g++   ...  plruns.cpp
RunArrays.cpp:10:10: fatal error: layout/LETypes.h: No such file or directory
   10 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
playout.cpp:13:10: fatal error: layout/LETypes.h: No such file or directory
   13 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
LXUtilities.cpp:10:10: fatal error: layout/LETypes.h: No such file or directory
   10 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
*** Failed compilation command follows: ----------------------------------------------------------
*** Failed compilation command follows: ----------------------------------------------------------
g++ --static -static -I/root/qbittorrent-build/include -ffunction-sections -fdata-sections -D_REENTRANT -DU_HAVE_ELF_H=1 -DU_HAVE_STRTOD_L=1 -DU_HAVE_XLOCALE_H=0 -I. -I./unicode -I../common -I./.. -DU_ATTRIBUTE_DEPRECATED= -DU_LAYOUTEX_IMPLEMENTATION -std=c++14 -W -Wall -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long -c -o RunArrays.ao RunArrays.cpp
g++ --static -static -I/root/qbittorrent-build/include -ffunction-sections -fdata-sections -D_REENTRANT -DU_HAVE_ELF_H=1 -DU_HAVE_STRTOD_L=1 -DU_HAVE_XLOCALE_H=0 -I. -I./unicode -I../common -I./.. -DU_ATTRIBUTE_DEPRECATED= -DU_LAYOUTEX_IMPLEMENTATION -std=c++14 -W -Wall -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long -c -o playout.ao playout.cpp
--- ( rebuild with "make VERBOSE=1 all" to show all parameters ) --------
--- ( rebuild with "make VERBOSE=1 all" to show all parameters ) --------
make[1]: *** [../config/mh-linux:49: RunArrays.ao] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [../config/mh-linux:49: playout.ao] Error 1
*** Failed compilation command follows: ----------------------------------------------------------
g++ --static -static -I/root/qbittorrent-build/include -ffunction-sections -fdata-sections -D_REENTRANT -DU_HAVE_ELF_H=1 -DU_HAVE_STRTOD_L=1 -DU_HAVE_XLOCALE_H=0 -I. -I./unicode -I../common -I./.. -DU_ATTRIBUTE_DEPRECATED= -DU_LAYOUTEX_IMPLEMENTATION -std=c++14 -W -Wall -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long -c -o LXUtilities.ao LXUtilities.cpp
--- ( rebuild with "make VERBOSE=1 all" to show all parameters ) --------
make[1]: *** [../config/mh-linux:49: LXUtilities.ao] Error 1
ParagraphLayout.cpp:14:10: fatal error: layout/LETypes.h: No such file or directory
   14 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
plruns.cpp:9:10: fatal error: layout/LETypes.h: No such file or directory
    9 | #include "layout/LETypes.h"
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.
*** Failed compilation command follows: ----------------------------------------------------------
g++ --static -static -I/root/qbittorrent-build/include -ffunction-sections -fdata-sections -D_REENTRANT -DU_HAVE_ELF_H=1 -DU_HAVE_STRTOD_L=1 -DU_HAVE_XLOCALE_H=0 -I. -I./unicode -I../common -I./.. -DU_ATTRIBUTE_DEPRECATED= -DU_LAYOUTEX_IMPLEMENTATION -std=c++14 -W -Wall -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long -c -o plruns.ao plruns.cpp
--- ( rebuild with "make VERBOSE=1 all" to show all parameters ) --------
make[1]: *** [../config/mh-linux:49: plruns.ao] Error 1
*** Failed compilation command follows: ----------------------------------------------------------
g++ --static -static -I/root/qbittorrent-build/include -ffunction-sections -fdata-sections -D_REENTRANT -DU_HAVE_ELF_H=1 -DU_HAVE_STRTOD_L=1 -DU_HAVE_XLOCALE_H=0 -I. -I./unicode -I../common -I./.. -DU_ATTRIBUTE_DEPRECATED= -DU_LAYOUTEX_IMPLEMENTATION -std=c++14 -W -Wall -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long -c -o ParagraphLayout.ao ParagraphLayout.cpp
--- ( rebuild with "make VERBOSE=1 all" to show all parameters ) --------
make[1]: *** [../config/mh-linux:49: ParagraphLayout.ao] Error 1
make[1]: Leaving directory '/root/qbittorrent-build/icu/source/layoutex'
make: *** [Makefile:153: all-recursive] Error 2

Relative discussion:
https://bugs.freedesktop.org/show_bug.cgi?id=64878

Script fails with: v1.2.11 not found in upstream origin

Hi,

I'm trying to build qbittorrent-nox on Alpine Linux 3.12 but the script is failing.

I fire up a container:

docker run -it --name qBittorrent alpine:latest

Run a few commands:

apk add bash curl
temp_dir="$(mktemp -d)"
mkdir "${temp_dir}"
cd "${temp_dir}"
wget -qO ./qbittorrent-nox-static-musl.sh https://git.io/JvLcZ
chmod 700 ./qbittorrent-nox-static-musl.sh
./qbittorrent-nox-static-musl.sh
./qbittorrent-nox-static-musl.sh all

Then after about 10-20mins it fails with an error:

Installing libtorrent

Cloning into '/root/qbittorrent-build/libtorrent'...
warning: Could not find remote branch v1.2.11
v1.2.11 to clone.
fatal: Remote branch v1.2.11
v1.2.11 not found in upstream origin

Maybe something has changed upstream?

Pre-built binaries: SOCKS5 proxy error

Hardware: Raspberry Pi 4 2GB
OS: Raspberry Pi OS 64-bit (Debian 10.10)

Now that binaries are being built and published with each release (which is awesome, by the way) I've encountered some interesting behavior trying to use the pre-built binaries on the hardware/software above.

Problem: After configuring qBittorrent to use a SOCKS5 proxy using any of the "pre built" qbittorrent-nox binaries (both libtorrent 1.x and 2.x) causes the following error: SOCKS5 proxy error. Message: SOCKS5 error. op: hostname_lookup ec: Host not found (authoritative) ep: 0.0.0.0:40224

I initially thought it was possibly a LibTorrent problem so I tried both versions but encountered the same behavior on any of the binaries built for each release.

What's interesting, however, is if I build the qbittorrent-nox binary on my Pi4 using the qbittorrent-nox-static.sh I'm able to produce a 4.3.6 qBittorrent-nox binary that runs and allows a proxy to be configured without issue. I'm wondering if we could possibly track down what dependency may be causing an issue between what I'm building locally and the binaries that get produced for each release.

Let me know what kind of other information may be useful and we can go from there. It would be great to get a binary built in the releases that would work from the get-go on the Raspberry Pi. Cheers.

it seems not to support s390x?

local build have succeeded,but the binary built from github action can't start up.I just change the arch_type to s390x in the workflow file.Maybe I missed something?Thanks

Changing the web iu css

Where can I find the Layout.css that it uses to render the webpage? I can't seem to find it

nice

error while loading shared libraries: libicui18n.so.63: cannot open shared object file: No such file or directory

usbgang btw

Allow applying libtorrent patches before build

I wanted to have the option to apply a custom patch to libtorrent before it's built, similar to the option available in swizzin.

Preferably, a custom patch folder containing multiple patches could also be specified instead of only allowing a single patch.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.