Hi Friends,
I just cloned and make and it fails without any useful message about the error:
➜ devel2-tools git clone --depth=1 --recursive https://github.com/google/woff2.git
Cloning into 'woff2'...
remote: Enumerating objects: 45, done.
remote: Counting objects: 100% (45/45), done.
remote: Compressing objects: 100% (43/43), done.
remote: Total 45 (delta 1), reused 14 (delta 1), pack-reused 0
Unpacking objects: 100% (45/45), done.
Submodule 'brotli' (https://github.com/google/brotli.git) registered for path 'brotli'
Cloning into '/home/mnesarco/devel2-tools/woff2/brotli'...
remote: Enumerating objects: 35, done.
remote: Counting objects: 100% (35/35), done.
remote: Compressing objects: 100% (34/34), done.
remote: Total 6275 (delta 6), reused 3 (delta 0), pack-reused 6240
Receiving objects: 100% (6275/6275), 30.77 MiB | 1.30 MiB/s, done.
Resolving deltas: 100% (4028/4028), done.
Submodule path 'brotli': checked out '533843e3546cd24c8344eaa899c6b0b681c8d222'
Submodule 'research/esaxx' (https://github.com/hillbig/esaxx) registered for path 'brotli/research/esaxx'
Submodule 'research/libdivsufsort' (https://github.com/y-256/libdivsufsort.git) registered for path 'brotli/research/libdivsufsort'
Cloning into '/home/mnesarco/devel2-tools/woff2/brotli/research/esaxx'...
remote: Enumerating objects: 32, done.
remote: Total 32 (delta 0), reused 0 (delta 0), pack-reused 32
Cloning into '/home/mnesarco/devel2-tools/woff2/brotli/research/libdivsufsort'...
remote: Enumerating objects: 210, done.
remote: Total 210 (delta 0), reused 0 (delta 0), pack-reused 210
Receiving objects: 100% (210/210), 98.95 KiB | 365.00 KiB/s, done.
Resolving deltas: 100% (129/129), done.
Submodule path 'brotli/research/esaxx': checked out 'ca7cb332011ec37a8436487f210f396b84bd8273'
Submodule path 'brotli/research/libdivsufsort': checked out '5f60d6f026c30fb4ac296f696b3c8b0eb71bd428'
➜ devel2-tools cd woff2
➜ woff2 git:(master) ls
brotli cmake CMakeLists.txt CONTRIBUTING.md include LICENSE Makefile README.md src
➜ woff2 git:(master) make clean all
rm -f src/font.o src/glyph.o src/normalize.o src/table_tags.o src/transform.o src/woff2_dec.o src/woff2_enc.o src/woff2_common.o src/woff2_out.o src/variable_length.o src/woff2_compress.o src/woff2_decompress.o src/woff2_info.o woff2_compress woff2_decompress woff2_info
make -C brotli clean
make[1]: Entering directory '/home/mnesarco/devel2-tools/woff2/brotli'
rm -rf bin libbrotli.a
make[1]: Leaving directory '/home/mnesarco/devel2-tools/woff2/brotli'
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/font.o src/font.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/glyph.o src/glyph.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/normalize.o src/normalize.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/table_tags.o src/table_tags.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/transform.o src/transform.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/woff2_dec.o src/woff2_dec.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/woff2_enc.o src/woff2_enc.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/woff2_common.o src/woff2_common.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/woff2_out.o src/woff2_out.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/variable_length.o src/variable_length.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/woff2_compress.o src/woff2_compress.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/woff2_decompress.o src/woff2_decompress.cc
g++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -fno-tree-vrp -std=c++11 -I./brotli/c/include/ -I./src -I./include -c -o src/woff2_info.o src/woff2_info.cc
make -C brotli lib
make[1]: Entering directory '/home/mnesarco/devel2-tools/woff2/brotli'
mkdir -p bin/obj/c/common
mkdir -p bin/obj/c/dec
mkdir -p bin/obj/c/enc
mkdir -p bin/obj/c/tools
mkdir -p bin/tmp
cc -O2 -Ic/include \
-c c/common/transform.c -o bin/obj/c/common/transform.o
cc -O2 -Ic/include \
-c c/common/dictionary.c -o bin/obj/c/common/dictionary.o
cc -O2 -Ic/include \
-c c/dec/state.c -o bin/obj/c/dec/state.o
cc -O2 -Ic/include \
-c c/dec/huffman.c -o bin/obj/c/dec/huffman.o
cc -O2 -Ic/include \
-c c/dec/decode.c -o bin/obj/c/dec/decode.o
cc -O2 -Ic/include \
-c c/dec/bit_reader.c -o bin/obj/c/dec/bit_reader.o
cc -O2 -Ic/include \
-c c/enc/compress_fragment.c -o bin/obj/c/enc/compress_fragment.o
cc -O2 -Ic/include \
-c c/enc/literal_cost.c -o bin/obj/c/enc/literal_cost.o
cc -O2 -Ic/include \
-c c/enc/brotli_bit_stream.c -o bin/obj/c/enc/brotli_bit_stream.o
cc -O2 -Ic/include \
-c c/enc/dictionary_hash.c -o bin/obj/c/enc/dictionary_hash.o
cc -O2 -Ic/include \
-c c/enc/utf8_util.c -o bin/obj/c/enc/utf8_util.o
cc -O2 -Ic/include \
-c c/enc/histogram.c -o bin/obj/c/enc/histogram.o
cc -O2 -Ic/include \
-c c/enc/cluster.c -o bin/obj/c/enc/cluster.o
cc -O2 -Ic/include \
-c c/enc/backward_references.c -o bin/obj/c/enc/backward_references.o
cc -O2 -Ic/include \
-c c/enc/encode.c -o bin/obj/c/enc/encode.o
cc -O2 -Ic/include \
-c c/enc/entropy_encode.c -o bin/obj/c/enc/entropy_encode.o
cc -O2 -Ic/include \
-c c/enc/encoder_dict.c -o bin/obj/c/enc/encoder_dict.o
cc -O2 -Ic/include \
-c c/enc/static_dict.c -o bin/obj/c/enc/static_dict.o
cc -O2 -Ic/include \
-c c/enc/metablock.c -o bin/obj/c/enc/metablock.o
cc -O2 -Ic/include \
-c c/enc/block_splitter.c -o bin/obj/c/enc/block_splitter.o
cc -O2 -Ic/include \
-c c/enc/memory.c -o bin/obj/c/enc/memory.o
cc -O2 -Ic/include \
-c c/enc/compress_fragment_two_pass.c -o bin/obj/c/enc/compress_fragment_two_pass.o
cc -O2 -Ic/include \
-c c/enc/backward_references_hq.c -o bin/obj/c/enc/backward_references_hq.o
cc -O2 -Ic/include \
-c c/enc/bit_cost.c -o bin/obj/c/enc/bit_cost.o
rm -f libbrotli.a
ar -crs libbrotli.a bin/obj/c/common/transform.o bin/obj/c/common/dictionary.o bin/obj/c/dec/state.o bin/obj/c/dec/huffman.o bin/obj/c/dec/decode.o bin/obj/c/dec/bit_reader.o bin/obj/c/enc/compress_fragment.o bin/obj/c/enc/literal_cost.o bin/obj/c/enc/brotli_bit_stream.o bin/obj/c/enc/dictionary_hash.o bin/obj/c/enc/utf8_util.o bin/obj/c/enc/histogram.o bin/obj/c/enc/cluster.o bin/obj/c/enc/backward_references.o bin/obj/c/enc/encode.o bin/obj/c/enc/entropy_encode.o bin/obj/c/enc/encoder_dict.o bin/obj/c/enc/static_dict.o bin/obj/c/enc/metablock.o bin/obj/c/enc/block_splitter.o bin/obj/c/enc/memory.o bin/obj/c/enc/compress_fragment_two_pass.o bin/obj/c/enc/backward_references_hq.o bin/obj/c/enc/bit_cost.o
make[1]: Leaving directory '/home/mnesarco/devel2-tools/woff2/brotli'
g++ src/font.o src/glyph.o src/normalize.o src/table_tags.o src/transform.o src/woff2_dec.o src/woff2_enc.o src/woff2_common.o src/woff2_out.o src/variable_length.o brotli/bin/obj/c/common/*.o brotli/bin/obj/c/enc/*.o brotli/bin/obj/c/dec/*.o src/woff2_compress.o -o woff2_compress
/usr/bin/ld: brotli/bin/obj/c/common/dictionary.o: relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/common/transform.o: relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/backward_references.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/backward_references_hq.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/bit_cost.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/block_splitter.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/brotli_bit_stream.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/cluster.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/compress_fragment.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/compress_fragment_two_pass.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/encode.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/encoder_dict.o: relocation R_X86_64_32S against hidden symbol `kStaticDictionaryHash' can not be used when making a PIE object
/usr/bin/ld: brotli/bin/obj/c/enc/entropy_encode.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/histogram.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/literal_cost.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/memory.o: relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/metablock.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/enc/static_dict.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/dec/decode.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/dec/huffman.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: brotli/bin/obj/c/dec/state.o: relocation R_X86_64_32 against `.text' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status
Makefile:56: recipe for target 'woff2_compress' failed
make: *** [woff2_compress] Error 1
Hi Friends, I just cloned and make and it fails without any useful message about the error: