Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Link order is broken in dev #3177

Closed
SirLynix opened this issue Dec 17, 2022 · 2 comments
Closed

Link order is broken in dev #3177

SirLynix opened this issue Dec 17, 2022 · 2 comments
Labels
Milestone

Comments

@SirLynix
Copy link
Member

Xmake Version

XMake dev

Operating System Version and Architecture

Ubuntu 20.04

Describe Bug

Since xmake dev last changes (I think #3144 is the issue), some package are broken, such as brotli.

lynix@SirDesktop:/mnt/c/Projets/Perso/NazaraNext/NazaraEngine$ xmake update -s dev
update version dev from official source ..
  => download https://github.com/xmake-io/xmake.git .. ok
  => install script to /home/lynix/.local/share/xmake .. ok
lynix@SirDesktop:/mnt/c/Projets/Perso/NazaraNext/NazaraEngine$ xrepo remove --all --yes brotli
lynix@SirDesktop:/mnt/c/Projets/Perso/NazaraNext/NazaraEngine$ xmake require -fvD brotli
/usr/bin/git rev-parse HEAD
note: install or modify (m) these packages (pass -y to skip confirm)?
in xmake-repo:
  -> brotli 1.0.9
please input: y (y/n/m)
y
checkinfo: @programdir/core/sandbox/modules/os.lua:258: /bin/ping: socket: Operation not permitted

stack traceback:
    [C]: in function 'error'
    [@programdir/core/base/os.lua:897]:
    [@programdir/core/sandbox/modules/os.lua:258]: in function 'run'
    [@programdir/modules/detect/tools/find_ping.lua:41]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]:
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:65]: in function '_do_check'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:88]: in function '_check'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:208]: in function '_find'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:304]:
    [@programdir/modules/lib/detect/find_tool.lua:33]: in function '_find_from_modules'
    [@programdir/modules/lib/detect/find_tool.lua:48]: in function '_find_tool'
    [@programdir/modules/lib/detect/find_tool.lua:100]:
    [@programdir/modules/net/ping.lua:56]:
    [@programdir/modules/net/fasturl.lua:48]: in function 'sort'
    [...modules/private/action/require/impl/install_packages.lua:46]: in function '_sort_packages_urls'
    [...modules/private/action/require/impl/install_packages.lua:774]:
    [@programdir/modules/private/action/require/install.lua:85]:
    [@programdir/actions/require/main.lua:123]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]:
    [@programdir/core/base/task.lua:501]: in function 'run'
    [@programdir/core/main.lua:278]: in function 'cotask'
    [@programdir/core/base/scheduler.lua:404]:

checkinfo: @programdir/core/sandbox/modules/os.lua:258: ping: socket: Operation not permitted

stack traceback:
    [C]: in function 'error'
    [@programdir/core/base/os.lua:897]:
    [@programdir/core/sandbox/modules/os.lua:258]: in function 'run'
    [@programdir/modules/detect/tools/find_ping.lua:41]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]:
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:65]: in function '_do_check'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:88]: in function '_check'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:237]: in function '_find'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:304]:
    [@programdir/modules/lib/detect/find_tool.lua:33]: in function '_find_from_modules'
    [@programdir/modules/lib/detect/find_tool.lua:48]: in function '_find_tool'
    [@programdir/modules/lib/detect/find_tool.lua:100]:
    [@programdir/modules/net/ping.lua:56]:
    [@programdir/modules/net/fasturl.lua:48]: in function 'sort'
    [...modules/private/action/require/impl/install_packages.lua:46]: in function '_sort_packages_urls'
    [...modules/private/action/require/impl/install_packages.lua:774]:
    [@programdir/modules/private/action/require/install.lua:85]:
    [@programdir/actions/require/main.lua:123]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]:
    [@programdir/core/base/task.lua:501]: in function 'run'
    [@programdir/core/main.lua:278]: in function 'cotask'
    [@programdir/core/base/scheduler.lua:404]:

checking for ping ... no
/bin/tar -xf v1.0.9.tar.gz -C source.tmp
xmake repo --diagnosis --verbose --add nazara-engine-repo /mnt/c/Projets/Perso/NazaraNext/NazaraEngine/.xmake/linux/x86_64/repositories/nazara-engine-repo
checking for unzip ... /usr/bin/unzip
checking for git ... /usr/bin/git
checking for gzip ... /bin/gzip
checking for tar ... /bin/tar
add local repository(nazara-engine-repo): /mnt/c/Projets/Perso/NazaraNext/NazaraEngine/.xmake/linux/x86_64/repositories/nazara-engine-repo ok!
xmake f --diagnosis --verbose -y -c --plat=linux --arch=x86_64 --mode=release --kind=static --cxflags=-fPIC --buildir=build_3b9db5e5 --cxflags=-fPIC --buildir=xbuild --vers=1.0.9
checking for gcc ... /usr/bin/gcc
checkinfo: cannot runv(dmd --version), No such file or directory
checking for dmd ... no
checkinfo: cannot runv(ldc2 --version), No such file or directory
checking for ldc2 ... no
checkinfo: cannot runv(gdc --version), No such file or directory
checking for gdc ... no
checkinfo: cannot runv(zig version), No such file or directory
checking for zig ... no
checkinfo: cannot runv(zig version), No such file or directory
checking for zig ... no
configure
{
    plat = linux
    host = linux
    kind = static
    network = public
    ccache = false
    mode = release
    theme = default
    arch = x86_64
    vers = 1.0.9
    proxy_pac = pac.lua
    clean = true
    ndk_stdcxx = true
    buildir = xbuild
    cxflags = -fPIC
}
xmake build --diagnosis --verbose
checking for gcc ... /usr/bin/gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for /usr/bin/gcc ... ok
checking for flags (-fPIC) ... ok
> gcc "-fPIC"
checking for flags (-O3) ... ok
> gcc "-O3"
checking for flags (-DNDEBUG) ... ok
> gcc "-DNDEBUG" "-m64"
[  9%]: compiling.release c/enc/backward_references.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/backward_references.c.o c/enc/backward_references.c
[  9%]: compiling.release c/enc/dictionary_hash.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/dictionary_hash.c.o c/enc/dictionary_hash.c
[  9%]: compiling.release c/enc/metablock.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/metablock.c.o c/enc/metablock.c
[  9%]: compiling.release c/enc/encode.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/encode.c.o c/enc/encode.c
[  9%]: compiling.release c/dec/state.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/state.c.o c/dec/state.c
[  9%]: compiling.release c/enc/utf8_util.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/utf8_util.c.o c/enc/utf8_util.c
[  9%]: compiling.release c/common/platform.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/platform.c.o c/common/platform.c
[  9%]: compiling.release c/dec/bit_reader.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/bit_reader.c.o c/dec/bit_reader.c
[  9%]: compiling.release c/enc/encoder_dict.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/encoder_dict.c.o c/enc/encoder_dict.c
[  9%]: compiling.release c/enc/block_splitter.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/block_splitter.c.o c/enc/block_splitter.c
[  9%]: compiling.release c/enc/entropy_encode.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/entropy_encode.c.o c/enc/entropy_encode.c
[  9%]: compiling.release c/common/constants.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/constants.c.o c/common/constants.c
[  9%]: compiling.release c/enc/static_dict.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/static_dict.c.o c/enc/static_dict.c
[  9%]: compiling.release c/enc/literal_cost.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/literal_cost.c.o c/enc/literal_cost.c
[  9%]: compiling.release c/enc/bit_cost.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/bit_cost.c.o c/enc/bit_cost.c
[  9%]: compiling.release c/enc/memory.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/memory.c.o c/enc/memory.c
[  9%]: compiling.release c/enc/histogram.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/histogram.c.o c/enc/histogram.c
[  9%]: compiling.release c/enc/backward_references_hq.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/backward_references_hq.c.o c/enc/backward_references_hq.c
[  9%]: compiling.release c/enc/compress_fragment_two_pass.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/compress_fragment_two_pass.c.o c/enc/compress_fragment_two_pass.c
[  9%]: compiling.release c/enc/cluster.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/cluster.c.o c/enc/cluster.c
[  9%]: compiling.release c/common/transform.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/transform.c.o c/common/transform.c
[  9%]: compiling.release c/enc/brotli_bit_stream.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/brotli_bit_stream.c.o c/enc/brotli_bit_stream.c
[  9%]: compiling.release c/enc/compress_fragment.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/compress_fragment.c.o c/enc/compress_fragment.c
[  9%]: compiling.release c/tools/brotli.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotli/linux/x86_64/release/c/tools/brotli.c.o c/tools/brotli.c
[  9%]: compiling.release c/dec/huffman.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/huffman.c.o c/dec/huffman.c
[  9%]: compiling.release c/dec/decode.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/decode.c.o c/dec/decode.c
[  9%]: compiling.release c/enc/command.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/command.c.o c/enc/command.c
[  9%]: compiling.release c/common/context.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/context.c.o c/common/context.c
[  9%]: compiling.release c/common/dictionary.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/dictionary.c.o c/common/dictionary.c
[  9%]: compiling.release c/enc/fast_log.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/fast_log.c.o c/enc/fast_log.c
checking for flags (-MMD -MF) ... ok
> gcc "-MMD" "-MF" "/dev/null" "-m64"
checking for flags (-fdiagnostics-color=always) ... ok
> gcc "-fdiagnostics-color=always" "-m64"
checking for ar ... /usr/bin/ar
checking for the static library archiver (ar) ... ar
[ 80%]: archiving.release libbrotlicommon.a
/usr/bin/ar -cr xbuild/linux/x86_64/release/libbrotlicommon.a xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/context.c.o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/dictionary.c.o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/constants.c.o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/transform.c.o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/platform.c.o
[ 85%]: archiving.release libbrotlidec.a
/usr/bin/ar -cr xbuild/linux/x86_64/release/libbrotlidec.a xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/decode.c.o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/bit_reader.c.o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/huffman.c.o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/state.c.o
[ 85%]: archiving.release libbrotlienc.a
/usr/bin/ar -cr xbuild/linux/x86_64/release/libbrotlienc.a xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/backward_references.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/fast_log.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/histogram.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/cluster.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/command.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/compress_fragment_two_pass.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/entropy_encode.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/bit_cost.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/memory.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/backward_references_hq.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/dictionary_hash.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/encoder_dict.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/block_splitter.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/compress_fragment.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/literal_cost.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/brotli_bit_stream.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/encode.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/static_dict.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/utf8_util.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/metablock.c.o
checking for g++ ... /usr/bin/g++
checking for the linker (ld) ... g++
checking for /usr/bin/g++ ... ok
checking for flags (-fPIC) ... ok
> g++ "-fPIC"
[ 95%]: linking.release brotli
/usr/bin/g++ -o xbuild/linux/x86_64/release/brotli xbuild/.objs/brotli/linux/x86_64/release/c/tools/brotli.c.o -m64 -Lxbuild/linux/x86_64/release -s -lbrotlicommon -lbrotlidec -lbrotlienc
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(decode.c.o): in function `DecodeLiteralBlockSwitch':
decode.c:(.text+0x90c): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: decode.c:(.text+0xa00): undefined reference to `_kBrotliContextLookupTable'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(decode.c.o): in function `SafeDecodeLiteralBlockSwitch':
decode.c:(.text+0xb3f): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: decode.c:(.text+0xc78): undefined reference to `_kBrotliContextLookupTable'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(decode.c.o): in function `DecodeCommandBlockSwitch':
decode.c:(.text+0xf34): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(decode.c.o): in function `SafeDecodeCommandBlockSwitch':
decode.c:(.text+0x1116): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(decode.c.o): in function `DecodeDistanceBlockSwitch':
decode.c:(.text+0x14b4): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(decode.c.o): in function `SafeDecodeDistanceBlockSwitch':
decode.c:(.text+0x16a6): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(decode.c.o): in function `ProcessCommands':
decode.c:(.text+0x33ef): undefined reference to `BrotliTransformDictionaryWord'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(decode.c.o): in function `SafeProcessCommands':
decode.c:(.text+0x3ec4): undefined reference to `BrotliTransformDictionaryWord'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(decode.c.o): in function `BrotliDecoderDecompressStream':
decode.c:(.text+0x5269): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: decode.c:(.text+0x556c): undefined reference to `_kBrotliContextLookupTable'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlienc.a(encode.c.o): in function `WriteMetaBlockInternal':
encode.c:(.text+0x878): undefined reference to `_kBrotliContextLookupTable'
/usr/bin/ld: encode.c:(.text+0xc64): undefined reference to `_kBrotliContextLookupTable'
/usr/bin/ld: encode.c:(.text+0x18fb): undefined reference to `_kBrotliContextLookupTable'
/usr/bin/ld: encode.c:(.text+0x1d14): undefined reference to `_kBrotliContextLookupTable'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlienc.a(encode.c.o):encode.c:(.text+0x2510): more undefined references to `_kBrotliContextLookupTable' follow
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlidec.a(state.c.o): in function `BrotliDecoderStateInit':
state.c:(.text+0xe5): undefined reference to `BrotliGetDictionary'
/usr/bin/ld: state.c:(.text+0xf1): undefined reference to `BrotliGetTransforms'
/usr/bin/ld: state.c:(.text+0x114): undefined reference to `BrotliDefaultAllocFunc'
/usr/bin/ld: state.c:(.text+0x123): undefined reference to `BrotliDefaultFreeFunc'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlienc.a(histogram.c.o): in function `BrotliBuildHistogramsWithContext':
histogram.c:(.text+0x191): undefined reference to `_kBrotliContextLookupTable'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlienc.a(memory.c.o): in function `BrotliInitMemoryManager':
memory.c:(.text+0x24): undefined reference to `BrotliDefaultAllocFunc'
/usr/bin/ld: memory.c:(.text+0x33): undefined reference to `BrotliDefaultFreeFunc'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlienc.a(encoder_dict.c.o): in function `BrotliInitEncoderDictionary':
encoder_dict.c:(.text+0x1c): undefined reference to `BrotliGetDictionary'
/usr/bin/ld: encoder_dict.c:(.text+0x24): undefined reference to `BrotliGetTransforms'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlienc.a(brotli_bit_stream.c.o): in function `StoreSymbol':
brotli_bit_stream.c:(.text+0x348): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlienc.a(brotli_bit_stream.c.o): in function `BuildAndStoreBlockSplitCode':
brotli_bit_stream.c:(.text+0x1acc): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: brotli_bit_stream.c:(.text+0x1d7d): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: xbuild/linux/x86_64/release/libbrotlienc.a(brotli_bit_stream.c.o): in function `BrotliStoreMetaBlock':
brotli_bit_stream.c:(.text+0x29cf): undefined reference to `_kBrotliContextLookupTable'
/usr/bin/ld: brotli_bit_stream.c:(.text+0x32cc): undefined reference to `_kBrotliPrefixCodeRanges'
/usr/bin/ld: brotli_bit_stream.c:(.text+0x37e5): undefined reference to `_kBrotliPrefixCodeRanges'
collect2: error: ld returned 1 exit status
error: @programdir/modules/private/async/runjobs.lua:256: @programdir/actions/build/kinds/binary.lua:74: @programdir/core/sandbox/modules/os.lua:372: execv(/usr/bin/g++ -o xbuild/linux/x86_64/release/brotli xbuild/.objs/brotli/linux/x86_64/release/c/tools/brotli.c.o -m64 -Lxbuild/linux/x86_64/release -s -lbrotlicommon -lbrotlidec -lbrotlienc) failed(1)
stack traceback:
    [C]: in function 'error'
    [@programdir/core/base/os.lua:897]:
    [@programdir/core/sandbox/modules/os.lua:372]: in function 'execv'
    [@programdir/modules/core/tools/gcc.lua:393]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]:
    [@programdir/actions/build/kinds/binary.lua:74]: in function 'callback'
    [@programdir/modules/core/project/depend.lua:193]: in function 'on_changed'
    [@programdir/actions/build/kinds/binary.lua:55]: in function '_do_link_target'
    [@programdir/actions/build/kinds/binary.lua:102]:
    [@programdir/actions/build/kinds/binary.lua:129]: in function '_link_target'
    [@programdir/actions/build/kinds/binary.lua:157]: in function 'jobfunc'
    [@programdir/modules/private/async/runjobs.lua:232]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]: in function 'trycall'
    [@programdir/core/sandbox/modules/try.lua:117]: in function 'try'
    [@programdir/modules/private/async/runjobs.lua:218]: in function 'cotask'
    [@programdir/core/base/scheduler.lua:404]:

stack traceback:
        [C]: in function 'error'
        @programdir/core/base/os.lua:897: in function 'os.raiselevel'
        (...tail calls...)
        @programdir/modules/private/async/runjobs.lua:256: in field 'catch'
        @programdir/core/sandbox/modules/try.lua:123: in global 'try'
        @programdir/modules/private/async/runjobs.lua:218: in upvalue 'cotask'
        @programdir/core/base/scheduler.lua:404: in function <@programdir/core/base/scheduler.lua:397>
error: @programdir/core/sandbox/modules/os.lua:372: execv(xmake build --diagnosis --verbose) failed(255)
stack traceback:
    [C]: in function 'error'
    [@programdir/core/base/os.lua:897]:
    [@programdir/core/sandbox/modules/os.lua:372]:
    [@programdir/core/sandbox/modules/os.lua:285]: in function 'vrunv'
    [@programdir/modules/package/tools/xmake.lua:283]: in function 'install'
    [...make/repositories/xmake-repo/packages/b/brotli/xmake.lua:68]: in function 'script'
    [...dir/modules/private/action/require/impl/utils/filter.lua:125]: in function 'call'
    [.../modules/private/action/require/impl/actions/install.lua:304]:

  => install brotli 1.0.9 .. failed
error: @programdir/modules/private/async/runjobs.lua:256: .../modules/private/action/require/impl/actions/install.lua:410: install failed!
stack traceback:
    [C]: in function 'error'
    [@programdir/core/base/os.lua:897]:
    [.../modules/private/action/require/impl/actions/install.lua:410]: in function 'catch'
    [@programdir/core/sandbox/modules/try.lua:123]: in function 'try'
    [.../modules/private/action/require/impl/actions/install.lua:268]:
    [...modules/private/action/require/impl/install_packages.lua:479]: in function 'jobfunc'
    [@programdir/modules/private/async/runjobs.lua:232]:

stack traceback:
        [C]: in function 'error'
        @programdir/core/base/os.lua:897: in function 'os.raiselevel'
        (...tail calls...)
        @programdir/modules/private/async/runjobs.lua:256: in field 'catch'
        @programdir/core/sandbox/modules/try.lua:123: in global 'try'
        @programdir/modules/private/async/runjobs.lua:218: in upvalue 'cotask'
        @programdir/core/base/scheduler.lua:404: in function <@programdir/core/base/scheduler.lua:397>

The issue here is the link order (-lbrotlicommon -lbrotlidec -lbrotlienc), it should be -lbrotlienc -lbrotlidec -lbrotlicommon since brotlienc and brotlidec depends on brotlicommon (see here).

Expected Behavior

Here's the expect and working compilation (xmake 2.7.3):

lynix@SirDesktop:/mnt/c/Projets/Perso/NazaraNext/NazaraEngine$ xmake require -vD brotli
checking for gcc ... /usr/bin/gcc
checkinfo: cannot runv(dmd --version), No such file or directory
checking for dmd ... no
checkinfo: cannot runv(ldc2 --version), No such file or directory
checking for ldc2 ... no
checkinfo: cannot runv(gdc --version), No such file or directory
checking for gdc ... no
checkinfo: cannot runv(zig version), No such file or directory
checking for zig ... no
checkinfo: cannot runv(zig version), No such file or directory
checking for zig ... no
checking for unzip ... /usr/bin/unzip
checking for git ... /usr/bin/git
checking for gzip ... /bin/gzip
checking for tar ... /bin/tar
/usr/bin/git rev-parse HEAD
/usr/bin/git rev-parse HEAD
finding zlib from xmake ..
checking for xmake::zlib ... no
finding zlib from pacman ..
finding assimp from xmake ..
checking for xmake::assimp ... assimp v5.2.3
finding chipmunk2d from xmake ..
checking for xmake::chipmunk2d ... chipmunk2d 7.0.3
finding dr_wav from xmake ..
checking for xmake::dr_wav ... dr_wav 0.12.19
finding efsw from xmake ..
checking for xmake::efsw ... efsw 1.1.0
finding entt from xmake ..
checking for xmake::entt ... entt v3.10.1
finding fmt from xmake ..
checking for xmake::fmt ... fmt 9.1.0
finding frozen from xmake ..
checking for xmake::frozen ... frozen 1.1.1
finding kiwisolver from xmake ..
checking for xmake::kiwisolver ... kiwisolver 1.4.4
finding libogg from xmake ..
checking for xmake::libogg ... no
finding libogg from pacman ..
finding libflac from xmake ..
checking for xmake::libflac ... no
finding flac from pacman ..
checking for cmake ... /usr/bin/cmake
checkinfo: cannot runv(pacman --version), No such file or directory
checking for pacman ... no
checking for pacman::zlib ... no
finding zlib1g-dev from apt ..
checking for pacman::flac ... no
finding libflac++-dev from apt ..
checking for pacman::libogg ... no
finding libogg-dev from apt ..
checking for dpkg ... /usr/bin/dpkg
checking for dpkg ... /usr/bin/dpkg
checking for cmake ... /usr/bin/cmake
checking for apt::libflac++-dev ... no
finding libflac-dev from apt ..
checking for pkg-config ... /usr/bin/pkg-config
checking for pkg-config ... /usr/bin/pkg-config
finding util-macros from xmake ..
checking for xmake::util-macros ... no
checking for apt::zlib1g-dev ... zlib1g-dev 1.2.11
checking for apt::libogg-dev ... libogg-dev 1.3.4
finding xorgproto from xmake ..
checking for xmake::xorgproto ... no
finding x11proto-dev from apt ..
finding xtrans from xmake ..
checking for xmake::xtrans ... no
finding xtrans-dev from apt ..
checking for apt::libflac-dev ... libflac-dev 1.3.3
finding libffi from xmake ..
checking for xmake::libffi ... no
finding libffi-dev from apt ..
checking for apt::xtrans-dev ... xtrans-dev
finding openssl from xmake ..
checking for xmake::openssl ... openssl 1.1.1-q
finding ca-certificates from xmake ..
checking for xmake::ca-certificates ... ca-certificates 20220604
checkinfo: cannot runv(emerge --version), No such file or directory
checking for emerge ... no
finding util-macros from brew ..
checking for python ... /home/lynix/.xmake/packages/p/python/3.10.6/e357df3d007a461995be04740991afd2/bin/python
checking for apt::libffi-dev ... libffi-dev 3.3
finding python from xmake ..
checking for xmake::python ... python 3.10.6
finding xcb-proto from xmake ..
checking for xmake::xcb-proto ... no
finding xcb-proto from brew ..
finding libpthread-stubs from xmake ..
checking for xmake::libpthread-stubs ... no
finding libpthread-stubs from brew ..
checking for brew ... no
finding util-macros from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding util-macros from conan ..
finding util-macros from pkgconfig ..
finding libpthread-stubs from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding libpthread-stubs from conan ..
finding libpthread-stubs from pkgconfig ..
finding util-macros from system ..
checking for util-macros ... no
finding libxau from xmake ..
checking for xmake::libxau ... no
finding libxau-dev from apt ..
finding libpthread-stubs from system ..
checking for brew ... no
finding xcb-proto from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding xcb-proto from conan ..
finding xcb-proto from pkgconfig ..
checking for libpthread-stubs ... no
finding libxdmcp from xmake ..
checking for xmake::libxdmcp ... no
finding libxdmcp-dev from apt ..
finding xcb-proto from system ..
checking for apt::libxau-dev ... libxau-dev 1.0.9
finding libxcb from xmake ..
checking for xmake::libxcb ... no
finding libxcb1-dev from apt ..
checking for xcb-proto ... no
finding libx11 from xmake ..
checking for xmake::libx11 ... no
finding libx11-dev from apt ..
checking for apt::libxdmcp-dev ... libxdmcp-dev 1.1.2
finding libxext from xmake ..
checking for xmake::libxext ... no
finding libxext-dev from apt ..
checking for apt::libxcb1-dev ... libxcb1-dev 1.14
finding libsdl from xmake ..
checking for xmake::libsdl ... libsdl 2.26.0
finding minimp3 from xmake ..
checking for xmake::minimp3 ... minimp3 2021.05.29
finding ordered_map from xmake ..
checking for xmake::ordered_map ... ordered_map v1.0.0
finding stb from xmake ..
checking for xmake::stb ... stb 2021.09.10
finding bzip2 from xmake ..
checking for xmake::bzip2 ... no
finding bzip2 from pacman ..
checking for pacman::bzip2 ... no
finding libbz2-dev from apt ..
checking for apt::libx11-dev ... libx11-dev 1.7.2
finding libpng from xmake ..
checking for xmake::libpng ... no
finding libpng from pacman ..
checking for pacman::libpng ... no
finding libpng-dev from apt ..
checking for apt::libxext-dev ... libxext-dev 1.3.3
finding brotli from xmake ..
checking for xmake::brotli ... no
finding libbrotlidec from pkgconfig ..
checking for apt::libbz2-dev ... no
finding bzip2 from brew ..
finding bzip2 from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding bzip2 from conan ..
finding bzip2 from pkgconfig ..
checking for pkgconfig::libbrotlidec ... libbrotlidec 1.0.9
finding libbrotlienc from pkgconfig ..
finding bzip2 from system ..
checking for pkgconfig::libbrotlienc ... libbrotlienc 1.0.9
finding libbrotlicommon from pkgconfig ..
checking for apt::libpng-dev ... libpng-dev 1.6.37
finding freetype from xmake ..
checking for xmake::freetype ... no
finding freetype2 from pkgconfig ..
checking for bzip2 ... no
finding libvorbis from xmake ..
checking for xmake::libvorbis ... no
finding vorbisfile from brew ..
finding vorbisfile from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding vorbisfile from conan ..
finding vorbisfile from pkgconfig ..
checking for pkgconfig::libbrotlicommon ... libbrotlicommon 1.0.9
checking for xmake-repo::brotli ... brotli 1.0.9
checking for pkgconfig::freetype2 ... freetype2 23.4.17
finding openal-soft from xmake ..
checking for xmake::openal-soft ... no
finding openal from pacman ..
checking for pacman::openal ... no
finding libopenal-dev from apt ..
finding newtondynamics3 from xmake ..
checking for xmake::newtondynamics3 ... newtondynamics3 v3.14d
finding nazarautils from xmake ..
checking for xmake::nazarautils ... nazarautils 2022.11.19
finding nlohmann_json from xmake ..
checking for xmake::nlohmann_json ... nlohmann_json v3.11.2
finding nzsl from xmake ..
checking for xmake::nzsl ... nzsl 2022.11.19
finding libuuid from xmake ..
checking for xmake::libuuid ... no
finding libuuid from brew ..
finding libuuid from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding libuuid from conan ..
finding libuuid from pkgconfig ..
checking for vorbisfile ... pkgconfig::vorbisfile 1.3.7
finding vorbisenc from brew ..
finding vorbisenc from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding vorbisenc from conan ..
finding vorbisenc from pkgconfig ..
checking for apt::libopenal-dev ... libopenal-dev 1.19.1
checking for vorbisenc ... pkgconfig::vorbisenc 1.3.7
finding vorbis from brew ..
finding vorbis from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding vorbis from conan ..
finding vorbis from pkgconfig ..
checking for ninja ... /usr/bin/ninja
checking for libuuid ... pkgconfig::libuuid 2.36.1
checking for vorbis ... pkgconfig::vorbis 1.3.7
checking for xmake-repo::libvorbis ... libvorbis 1.3.7
finding libxml2 from xmake ..
checking for xmake::libxml2 ... no
finding libxml-2.0 from pkgconfig ..
checking for ninja ... /usr/bin/ninja
finding expat from xmake ..
checking for xmake::expat ... no
finding expat from brew ..
finding expat from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding expat from conan ..
finding expat from pkgconfig ..
checking for expat ... pkgconfig::expat 2.2.10
checking for pkgconfig::libxml-2.0 ... no
finding libxml2-dev from apt ..
checking for m4 ... /home/lynix/.xmake/packages/m/m4/1.4.19/8b7c7260096844c1a8b1c8d773e64b3d/bin/m4
checking for meson ... no
checking for apt::libxml2-dev ... no
finding libxml2 from pacman ..
checking for pacman::libxml2 ... no
finding libxml2 from find_libxml2 ..
finding libxml2 from brew ..
finding libxml2 from vcpkg ..
checkinfo: vcpkg root directory not found, maybe you need set $VCPKG_ROOT!
finding libxml2 from conan ..
finding libxml2 from pkgconfig ..
checking for apt::x11proto-dev ... x11proto-dev 2.1.1
finding wayland from xmake ..
checking for xmake::wayland ... no
finding libwayland-dev from apt ..
finding libxml2 from system ..
finding libxml2/libxml-2.0 from brew ..
checking for libxml2 ... no
checkinfo: cannot runv(meson --version), No such file or directory
checking for meson ... no
checking for bison ... no
checking for apt::libwayland-dev ... libwayland-dev 1.18.0
checkinfo: cannot runv(bison --version), No such file or directory
checking for bison ... no
lynix@SirDesktop:/mnt/c/Projets/Perso/NazaraNext/NazaraEngine$ xmake require -fvD brotli
/usr/bin/git rev-parse HEAD
note: install or modify (m) these packages (pass -y to skip confirm)?
in xmake-repo:
  -> brotli 1.0.9
please input: y (y/n/m)
y
checkinfo: @programdir/core/sandbox/modules/os.lua:258: /bin/ping: socket: Operation not permitted

stack traceback:
    [C]: in function 'error'
    [@programdir/core/base/os.lua:897]:
    [@programdir/core/sandbox/modules/os.lua:258]: in function 'run'
    [@programdir/modules/detect/tools/find_ping.lua:41]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]:
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:65]: in function '_do_check'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:88]: in function '_check'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:208]: in function '_find'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:304]:
    [@programdir/modules/lib/detect/find_tool.lua:33]: in function '_find_from_modules'
    [@programdir/modules/lib/detect/find_tool.lua:48]: in function '_find_tool'
    [@programdir/modules/lib/detect/find_tool.lua:100]:
    [@programdir/modules/net/ping.lua:56]:
    [@programdir/modules/net/fasturl.lua:48]: in function 'sort'
    [...modules/private/action/require/impl/install_packages.lua:46]: in function '_sort_packages_urls'
    [...modules/private/action/require/impl/install_packages.lua:774]:
    [@programdir/modules/private/action/require/install.lua:85]:
    [@programdir/actions/require/main.lua:123]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]:
    [@programdir/core/base/task.lua:501]: in function 'run'
    [@programdir/core/main.lua:278]: in function 'cotask'
    [@programdir/core/base/scheduler.lua:404]:

checkinfo: @programdir/core/sandbox/modules/os.lua:258: ping: socket: Operation not permitted

stack traceback:
    [C]: in function 'error'
    [@programdir/core/base/os.lua:897]:
    [@programdir/core/sandbox/modules/os.lua:258]: in function 'run'
    [@programdir/modules/detect/tools/find_ping.lua:41]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]:
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:65]: in function '_do_check'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:88]: in function '_check'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:237]: in function '_find'
    [.../core/sandbox/modules/import/lib/detect/find_program.lua:304]:
    [@programdir/modules/lib/detect/find_tool.lua:33]: in function '_find_from_modules'
    [@programdir/modules/lib/detect/find_tool.lua:48]: in function '_find_tool'
    [@programdir/modules/lib/detect/find_tool.lua:100]:
    [@programdir/modules/net/ping.lua:56]:
    [@programdir/modules/net/fasturl.lua:48]: in function 'sort'
    [...modules/private/action/require/impl/install_packages.lua:46]: in function '_sort_packages_urls'
    [...modules/private/action/require/impl/install_packages.lua:774]:
    [@programdir/modules/private/action/require/install.lua:85]:
    [@programdir/actions/require/main.lua:123]:
    [C]: in function 'xpcall'
    [@programdir/core/base/utils.lua:280]:
    [@programdir/core/base/task.lua:501]: in function 'run'
    [@programdir/core/main.lua:278]: in function 'cotask'
    [@programdir/core/base/scheduler.lua:404]:

checking for ping ... no
checking for curl ... /usr/bin/curl
/usr/bin/curl -SL -A "Xmake/2.7.3+HEAD.b35ff31 (Linux;5.15.79.1-microsoft-standard-WSL2) curl/7.74.0" https://github.com/google/brotli/archive/v1.0.9.tar.gz -o v1.0.9.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  475k    0  475k    0     0   582k      0 --:--:-- --:--:-- --:--:-- 1170k
/bin/tar -xf v1.0.9.tar.gz -C source.tmp
  => download https://github.com/google/brotli/archive/v1.0.9.tar.gz .. ok
xmake repo --diagnosis --verbose --add nazara-engine-repo /mnt/c/Projets/Perso/NazaraNext/NazaraEngine/.xmake/linux/x86_64/repositories/nazara-engine-repo
checking for unzip ... /usr/bin/unzip
checking for git ... /usr/bin/git
checking for gzip ... /bin/gzip
checking for tar ... /bin/tar
add local repository(nazara-engine-repo): /mnt/c/Projets/Perso/NazaraNext/NazaraEngine/.xmake/linux/x86_64/repositories/nazara-engine-repo ok!
xmake f --diagnosis --verbose -y -c --plat=linux --arch=x86_64 --mode=release --kind=static --buildir=xbuild --cxflags=-fPIC --vers=1.0.9 --cxflags=-fPIC
checking for gcc ... /usr/bin/gcc
checkinfo: cannot runv(dmd --version), No such file or directory
checking for dmd ... no
checkinfo: cannot runv(ldc2 --version), No such file or directory
checking for ldc2 ... no
checkinfo: cannot runv(gdc --version), No such file or directory
checking for gdc ... no
checkinfo: cannot runv(zig version), No such file or directory
checking for zig ... no
checkinfo: cannot runv(zig version), No such file or directory
checking for zig ... no
configure
{
    cxflags = -fPIC
    proxy_pac = pac.lua
    ccache = false
    buildir = xbuild
    host = linux
    clean = true
    kind = static
    vers = 1.0.9
    arch = x86_64
    theme = default
    network = public
    ndk_stdcxx = true
    plat = linux
    mode = release
}
xmake build --diagnosis --verbose
checking for gcc ... /usr/bin/gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for the c compiler (cc) ... gcc
checking for /usr/bin/gcc ... ok
checking for flags (-fPIC) ... ok
> gcc "-fPIC"
checking for flags (-O3) ... ok
> gcc "-O3"
checking for flags (-DNDEBUG) ... ok
> gcc "-DNDEBUG" "-m64"
[  9%]: compiling.release c/dec/decode.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/decode.c.o c/dec/decode.c
[  9%]: compiling.release c/enc/static_dict.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/static_dict.c.o c/enc/static_dict.c
[  9%]: compiling.release c/enc/brotli_bit_stream.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/brotli_bit_stream.c.o c/enc/brotli_bit_stream.c
[  9%]: compiling.release c/common/constants.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/constants.c.o c/common/constants.c
[  9%]: compiling.release c/dec/bit_reader.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/bit_reader.c.o c/dec/bit_reader.c
[  9%]: compiling.release c/tools/brotli.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotli/linux/x86_64/release/c/tools/brotli.c.o c/tools/brotli.c
[  9%]: compiling.release c/enc/encoder_dict.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/encoder_dict.c.o c/enc/encoder_dict.c
[  9%]: compiling.release c/enc/fast_log.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/fast_log.c.o c/enc/fast_log.c
[  9%]: compiling.release c/enc/entropy_encode.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/entropy_encode.c.o c/enc/entropy_encode.c
[  9%]: compiling.release c/enc/block_splitter.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/block_splitter.c.o c/enc/block_splitter.c
[  9%]: compiling.release c/common/dictionary.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/dictionary.c.o c/common/dictionary.c
[  9%]: compiling.release c/enc/dictionary_hash.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/dictionary_hash.c.o c/enc/dictionary_hash.c
[  9%]: compiling.release c/enc/encode.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/encode.c.o c/enc/encode.c
[  9%]: compiling.release c/enc/command.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/command.c.o c/enc/command.c
[  9%]: compiling.release c/enc/bit_cost.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/bit_cost.c.o c/enc/bit_cost.c
[  9%]: compiling.release c/enc/compress_fragment.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/compress_fragment.c.o c/enc/compress_fragment.c
[  9%]: compiling.release c/dec/state.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/state.c.o c/dec/state.c
[  9%]: compiling.release c/enc/backward_references_hq.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/backward_references_hq.c.o c/enc/backward_references_hq.c
[  9%]: compiling.release c/dec/huffman.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/huffman.c.o c/dec/huffman.c
[  9%]: compiling.release c/common/context.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/context.c.o c/common/context.c
[  9%]: compiling.release c/enc/histogram.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/histogram.c.o c/enc/histogram.c
[  9%]: compiling.release c/enc/cluster.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/cluster.c.o c/enc/cluster.c
[  9%]: compiling.release c/enc/backward_references.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/backward_references.c.o c/enc/backward_references.c
[  9%]: compiling.release c/enc/utf8_util.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/utf8_util.c.o c/enc/utf8_util.c
[  9%]: compiling.release c/common/transform.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/transform.c.o c/common/transform.c
[  9%]: compiling.release c/enc/metablock.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/metablock.c.o c/enc/metablock.c
[  9%]: compiling.release c/enc/memory.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/memory.c.o c/enc/memory.c
[  9%]: compiling.release c/enc/literal_cost.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/literal_cost.c.o c/enc/literal_cost.c
[  9%]: compiling.release c/enc/compress_fragment_two_pass.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/compress_fragment_two_pass.c.o c/enc/compress_fragment_two_pass.c
[  9%]: compiling.release c/common/platform.c
/usr/bin/gcc -c -m64 -fPIC -fvisibility=hidden -O3 -Ic/include -DNDEBUG -o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/platform.c.o c/common/platform.c
checking for flags (-MMD -MF) ... ok
> gcc "-MMD" "-MF" "/dev/null" "-m64"
checking for flags (-fdiagnostics-color=always) ... ok
> gcc "-fdiagnostics-color=always" "-m64"
checking for ar ... /usr/bin/ar
checking for the static library archiver (ar) ... ar
[ 80%]: archiving.release libbrotlicommon.a
/usr/bin/ar -cr xbuild/linux/x86_64/release/libbrotlicommon.a xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/context.c.o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/dictionary.c.o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/constants.c.o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/transform.c.o xbuild/.objs/brotlicommon/linux/x86_64/release/c/common/platform.c.o
[ 85%]: archiving.release libbrotlidec.a
/usr/bin/ar -cr xbuild/linux/x86_64/release/libbrotlidec.a xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/decode.c.o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/bit_reader.c.o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/huffman.c.o xbuild/.objs/brotlidec/linux/x86_64/release/c/dec/state.c.o
[ 85%]: archiving.release libbrotlienc.a
/usr/bin/ar -cr xbuild/linux/x86_64/release/libbrotlienc.a xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/backward_references.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/fast_log.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/histogram.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/cluster.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/command.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/compress_fragment_two_pass.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/entropy_encode.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/bit_cost.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/memory.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/backward_references_hq.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/dictionary_hash.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/encoder_dict.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/block_splitter.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/compress_fragment.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/literal_cost.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/brotli_bit_stream.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/encode.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/static_dict.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/utf8_util.c.o xbuild/.objs/brotlienc/linux/x86_64/release/c/enc/metablock.c.o
checking for g++ ... /usr/bin/g++
checking for the linker (ld) ... g++
checking for /usr/bin/g++ ... ok
checking for flags (-fPIC) ... ok
> g++ "-fPIC"
[ 95%]: linking.release brotli
/usr/bin/g++ -o xbuild/linux/x86_64/release/brotli xbuild/.objs/brotli/linux/x86_64/release/c/tools/brotli.c.o -m64 -Lxbuild/linux/x86_64/release -s -lbrotlienc -lbrotlidec -lbrotlicommon

build cache stats:
cache directory: xbuild/.build_cache
cache hit rate: 0%
cache hit: 0
cache miss: 0
new cached files: 0
remote cache hit: 0
remote new cached files: 0
preprocess failed: 0
compile fallback count: 0

[100%]: build ok!
xmake install -y -o /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554 --diagnosis --verbose
installing brotlicommon ..
installing brotlicommon to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554 ..
> copy xbuild/linux/x86_64/release/libbrotlicommon.a to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib
> copy c/include/brotli/port.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/port.h
> copy c/include/brotli/types.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/types.h
> copy c/include/brotli/decode.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/decode.h
> copy c/include/brotli/encode.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/encode.h
generating /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib/pkgconfig/libbrotlicommon.pc ..
installing brotlidec ..
installing brotlidec to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554 ..
> copy xbuild/linux/x86_64/release/libbrotlidec.a to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib
> copy c/include/brotli/port.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/port.h
> copy c/include/brotli/types.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/types.h
> copy c/include/brotli/decode.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/decode.h
> copy c/include/brotli/encode.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/encode.h
generating /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib/pkgconfig/libbrotlidec.pc ..
installing brotlienc ..
installing brotlienc to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554 ..
> copy xbuild/linux/x86_64/release/libbrotlienc.a to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib
> copy c/include/brotli/port.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/port.h
> copy c/include/brotli/types.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/types.h
> copy c/include/brotli/decode.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/decode.h
> copy c/include/brotli/encode.h to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include/brotli/encode.h
generating /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib/pkgconfig/libbrotlienc.pc ..
installing brotli ..
installing brotli to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554 ..
> copy xbuild/linux/x86_64/release/brotli to /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/bin
install ok!
finding brotli from xmake ..
checking for xmake::brotli ... brotli 1.0.9
{
  sysincludedirs = {
    "/home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include"
  },
  version = "1.0.9",
  links = {
    "brotlienc",
    "brotlidec",
    "brotlicommon"
  },
  linkdirs = {
    "/home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib"
  },
  libfiles = {
    "/home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib/libbrotlienc.a",
    "/home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib/libbrotlidec.a",
    "/home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib/libbrotlicommon.a"
  },
  static = true
}

brotli --version
brotli 1.0.9
checking for gcc ... /usr/bin/gcc
checking for the c compiler (cc) ... gcc
checking for /usr/bin/gcc ... ok
checking for flags (-fPIC) ... ok
> gcc "-fPIC"
> /usr/bin/gcc -c -m64 -isystem /home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/include -o /dev/shm/.xmake1000/221217/_5C4A9CE6F45B4620894C397475271F30.o /dev/shm/.xmake1000/221217/_A5AF2B0855FD4880A6AE5812C1A078B0.c
checking for flags (-fdiagnostics-color=always) ... ok
> gcc "-fdiagnostics-color=always" "-m64"
checking for g++ ... /usr/bin/g++
checking for the linker (ld) ... g++
checking for /usr/bin/g++ ... ok
checking for flags (-fPIC) ... ok
> g++ "-fPIC"
> /usr/bin/g++ -o /dev/shm/.xmake1000/221217/_5C4A9CE6F45B4620894C397475271F30.b /dev/shm/.xmake1000/221217/_5C4A9CE6F45B4620894C397475271F30.o -m64 -L/home/lynix/.xmake/packages/b/brotli/1.0.9/3b9db5e5305546c49319c77c65eae554/lib -lbrotlienc -lbrotlidec -lbrotlicommon
> checking for c includes(brotli/encode.h)
> checking for c links(brotlienc, brotlidec, brotlicommon)
> checking for c snippet(            void)
  => install brotli 1.0.9 .. ok

Project Configuration

No response

Additional Information and Error Logs

No response

@SirLynix SirLynix added the bug label Dec 17, 2022
waruqi added a commit that referenced this issue Dec 18, 2022
@waruqi
Copy link
Member

waruqi commented Dec 18, 2022

try it again.

@waruqi waruqi added this to the v2.7.4 milestone Dec 18, 2022
@waruqi waruqi mentioned this issue Dec 18, 2022
@SirLynix
Copy link
Member Author

Fixed, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants