rsms / inter

The Inter font family
https://rsms.me/inter/
SIL Open Font License 1.1
17.82k stars 399 forks source link

dockermake and init.sh not working on Mac #277

Closed m-f-u closed 4 years ago

m-f-u commented 4 years ago

Issue

Hello I'm trying to setup the environment for this wonderful project but have trouble doing so using both approaches (dockermake and init.sh).

I followed the instructions given in https://github.com/rsms/inter/issues/115 to delete python and install it again using homebrew because I ran into similar issues, but without success.

Errors

Dockermake gives me: make: *** No rule to make target 'check_all_text', needed by 'test'. Stop.

And ./init.sh gives me: ./init.sh: line 406: build/etc/generated.make: No such file or directory

Specs

I'm on Catalina 10.15.4 – my xcode was recently updated in case that's a requirement. My Python versions are now as follows: ➜ ~ pip --version pip 9.0.1 from /Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg (python 2.7) ➜ ~ pip3 --version pip 20.0.2 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

I have little to no experience with libraries and terminal use. Is there something obvious I'm missing?

Details

Using dockermake:

inter2 git:(master) ./dockermake -j test Unable to find image 'rsms/inter-build:latest' locally latest: Pulling from rsms/inter-build 9cc2ad81d40d: Pull complete e6cb98e32a52: Pull complete ae1b8d879bad: Pull complete 42cfa3699b05: Pull complete 053cac798c4e: Pull complete 628d49203d62: Pull complete f4fe4266bb72: Pull complete 06eb5f97087f: Pull complete 3de6f1dca12f: Pull complete 1437e1d864af: Pull complete da4cf055dff5: Pull complete b7f4efc28c6f: Pull complete b3a70fa99998: Pull complete 7592cc7e1ffe: Pull complete 643a1808ae16: Pull complete 2c0f35ae6035: Pull complete Digest: sha256:d523363a71a6d531ddc07f5b12fb729992b0115a933e4dfac2f5ccd439ff81dd Status: Downloaded newer image for rsms/inter-build:latest make: *** No rule to make target 'check_all_text', needed by 'test'. Stop.

Using the toolchain:

➜ inter2 git:(master) ./init.sh using pip 20.0.2 from /usr/local/lib/python3.7/site-packages/pip (python 3.7) using virtualenv: /Users/felix/Library/Python/3.7/bin/virtualenv Setting up virtualenv in 'build/venv' created virtual environment CPython3.7.7.final.0-64 in 531ms creator CPython3Posix(dest=/Users/felix/Github/inter2/build/venv, clear=False, global=False) seeder FromAppData(download=False, pip=latest, setuptools=latest, wheel=latest, via=copy, app_data_dir=/Users/felix/Library/Application Support/virtualenv/seed-app-data/v1.0.1) activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator build/venv/lib/python -> python3.7 build/venv/bin/pip install -r ./requirements.txt Collecting fonttools[lxml,ufo,unicode]==4.0.2 Using cached fonttools-4.0.2-py3-none-any.whl (717 kB) Collecting cu2qu==1.6.6 Using cached cu2qu-1.6.6-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (249 kB) Collecting glyphsLib==5.0.1 Using cached glyphsLib-5.0.1-py3-none-any.whl (734 kB) Collecting ufo2ft[pathops]==2.9.1 Using cached ufo2ft-2.9.1-py2.py3-none-any.whl (69 kB) Collecting defcon[lxml]==0.6.0 Using cached defcon-0.6.0-py2.py3-none-any.whl (191 kB) Collecting skia-pathops==0.2.0.post2 Using cached skia_pathops-0.2.0.post2-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (827 kB) Collecting MutatorMath==2.1.2 Using cached MutatorMath-2.1.2-py2.py3-none-any.whl (31 kB) Collecting brotli==1.0.7 Using cached Brotli-1.0.7-cp37-cp37m-macosx_10_6_intel.macosx_10_9_intel.macosx_10_9_x86_64.macosx_10_10_intel.macosx_10_10_x86_64.whl (796 kB) Collecting lxml<5,>=4.0; extra == "lxml" Using cached lxml-4.5.0-cp37-cp37m-macosx_10_9_x86_64.whl (4.5 MB) Collecting fs<3,>=2.2.0; extra == "ufo" Using cached fs-2.4.11-py2.py3-none-any.whl (127 kB) Collecting unicodedata2>=12.0.0; (python_version < "3.8" and platform_python_implementation != "PyPy") and extra == "unicode" Using cached unicodedata2-13.0.0.post2-cp37-cp37m-macosx_10_9_x86_64.whl (417 kB) Collecting compreffor>=0.4.6 Using cached compreffor-0.5.0-cp37-cp37m-macosx_10_6_intel.whl (123 kB) Collecting booleanOperations>=0.8.2 Using cached booleanOperations-0.9.0-py3-none-any.whl (18 kB) Collecting fontMath>=0.4.8 Using cached fontMath-0.5.2-py2.py3-none-any.whl (30 kB) Collecting appdirs~=1.4.3 Using cached appdirs-1.4.3-py2.py3-none-any.whl (12 kB) Collecting pytz Using cached pytz-2020.1-py2.py3-none-any.whl (510 kB) Collecting six~=1.10 Using cached six-1.14.0-py2.py3-none-any.whl (10 kB) Requirement already satisfied: setuptools in ./build/venv/lib/python3.7/site-packages (from fs<3,>=2.2.0; extra == "ufo"->fonttools[lxml,ufo,unicode]==4.0.2->-r ./requirements.txt (line 1)) (46.1.3) Collecting pyclipper>=1.1.0.post1 Using cached pyclipper-1.1.0.post3-cp37-cp37m-macosx_10_6_intel.whl (290 kB) Installing collected packages: lxml, appdirs, pytz, six, fs, unicodedata2, fonttools, cu2qu, defcon, glyphsLib, compreffor, pyclipper, booleanOperations, skia-pathops, ufo2ft, fontMath, MutatorMath, brotli Successfully installed MutatorMath-2.1.2 appdirs-1.4.3 booleanOperations-0.9.0 brotli-1.0.7 compreffor-0.5.0 cu2qu-1.6.6 defcon-0.6.0 fontMath-0.5.2 fonttools-4.0.2 fs-2.4.11 glyphsLib-5.0.1 lxml-4.5.0 pyclipper-1.1.0.post3 pytz-2020.1 six-1.14.0 skia-pathops-0.2.0.post2 ufo2ft-2.9.1 unicodedata2-13.0.0.post2 WARNING: You are using pip version 20.0.2; however, version 20.1 is available. You should consider upgrading via the '/Users/felix/Github/inter2/build/venv/bin/python -m pip install --upgrade pip' command. Fetching woff2 from https://github.com/google/woff2.git Cloning into 'build/deps/woff2'... remote: Enumerating objects: 1126, done. remote: Total 1126 (delta 0), reused 0 (delta 0), pack-reused 1126 Receiving objects: 100% (1126/1126), 3.45 MiB | 2.62 MiB/s, done. Resolving deltas: 100% (678/678), done. Submodule 'brotli' (https://github.com/google/brotli.git) registered for path 'brotli' Cloning into '/Users/felix/Github/inter2/build/deps/woff2/brotli'... remote: Enumerating objects: 19, done.
remote: Counting objects: 100% (19/19), done.
remote: Compressing objects: 100% (18/18), done.
remote: Total 6021 (delta 2), reused 4 (delta 0), pack-reused 6002
Receiving objects: 100% (6021/6021), 30.60 MiB | 5.31 MiB/s, done. Resolving deltas: 100% (3858/3858), 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 '/Users/felix/Github/inter2/build/deps/woff2/brotli/research/esaxx'... remote: Enumerating objects: 32, done.
remote: Total 32 (delta 0), reused 0 (delta 0), pack-reused 32
Cloning into '/Users/felix/Github/inter2/build/deps/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 | 582.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' Note: switching to 'a0d0ed7da27b708c0a4e96ad7a998bddc933c06e'.

You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example:

git switch -c

Or undo this operation with:

git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at a0d0ed7 Merge pull request #114 from garretrieger/master Building woff2 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 /Library/Developer/CommandLineTools/usr/bin/make -C brotli clean rm -rf bin libbrotli.a c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/font.o src/font.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/glyph.o src/glyph.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/normalize.o src/normalize.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/table_tags.o src/table_tags.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/transform.o src/transform.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_dec.o src/woff2_dec.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_enc.o src/woff2_enc.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_common.o src/woff2_common.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_out.o src/woff2_out.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/variable_length.o src/variable_length.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_compress.o src/woff2_compress.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_decompress.o src/woff2_decompress.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_info.o src/woff2_info.cc /Library/Developer/CommandLineTools/usr/bin/make -C brotli lib 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/dictionary.c -o bin/obj/c/common/dictionary.o cc -O2 -Ic/include \ -c c/common/transform.c -o bin/obj/c/common/transform.o cc -O2 -Ic/include \ -c c/dec/bit_reader.c -o bin/obj/c/dec/bit_reader.o c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/convert_woff2ttf_fuzzer.o src/convert_woff2ttf_fuzzer.cc cc -O2 -Ic/include \ -c c/dec/decode.c -o bin/obj/c/dec/decode.o c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/convert_woff2ttf_fuzzer_new_entry.o src/convert_woff2ttf_fuzzer_new_entry.cc cc -O2 -Ic/include \ -c c/dec/huffman.c -o bin/obj/c/dec/huffman.o cc -O2 -Ic/include \ -c c/dec/state.c -o bin/obj/c/dec/state.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/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 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/brotli_bit_stream.c -o bin/obj/c/enc/brotli_bit_stream.o cc -O2 -Ic/include \ -c c/enc/cluster.c -o bin/obj/c/enc/cluster.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/compress_fragment_two_pass.c -o bin/obj/c/enc/compress_fragment_two_pass.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/encode.c -o bin/obj/c/enc/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/entropy_encode.c -o bin/obj/c/enc/entropy_encode.o cc -O2 -Ic/include \ -c c/enc/histogram.c -o bin/obj/c/enc/histogram.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/memory.c -o bin/obj/c/enc/memory.o cc -O2 -Ic/include \ -c c/enc/metablock.c -o bin/obj/c/enc/metablock.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/utf8_util.c -o bin/obj/c/enc/utf8_util.o rm -f libbrotli.a ar -crs libbrotli.a bin/obj/c/common/dictionary.o bin/obj/c/common/transform.o bin/obj/c/dec/bit_reader.o bin/obj/c/dec/decode.o bin/obj/c/dec/huffman.o bin/obj/c/dec/state.o bin/obj/c/enc/backward_references.o bin/obj/c/enc/backward_references_hq.o bin/obj/c/enc/bit_cost.o bin/obj/c/enc/block_splitter.o bin/obj/c/enc/brotli_bit_stream.o bin/obj/c/enc/cluster.o bin/obj/c/enc/compress_fragment.o bin/obj/c/enc/compress_fragment_two_pass.o bin/obj/c/enc/dictionary_hash.o bin/obj/c/enc/encode.o bin/obj/c/enc/encoder_dict.o bin/obj/c/enc/entropy_encode.o bin/obj/c/enc/histogram.o bin/obj/c/enc/literal_cost.o bin/obj/c/enc/memory.o bin/obj/c/enc/metablock.o bin/obj/c/enc/static_dict.o bin/obj/c/enc/utf8_util.o c++ 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 c++ 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_decompress.o -o woff2_decompress c++ 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_info.o -o woff2_info ar cr src/convert_woff2ttf_fuzzer.a 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/convert_woff2ttf_fuzzer.o ar cr src/convert_woff2ttf_fuzzer_new_entry.a 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/convert_woff2ttf_fuzzer_new_entry.o build/venv/bin/woff2_compress -> ../../deps/woff2/woff2_compress Fetching https://github.com/khaledhosny/ots/releases/download/v7.1.7/ots-7.1.7-osx.zip ######################################################################### 100,0%######################################################################### 100,0% Archive: ots.zip creating: ots-7.1.7-osx/ inflating: ots-7.1.7-osx/ots-idempotent
inflating: ots-7.1.7-osx/ots-perf
inflating: ots-7.1.7-osx/ots-sanitize
inflating: ots-7.1.7-osx/ots-validator-checker
build/venv/bin/ots-idempotent -> ../../deps/ots-7.1.7/ots-idempotent build/venv/bin/ots-perf -> ../../deps/ots-7.1.7/ots-perf build/venv/bin/ots-sanitize -> ../../deps/ots-7.1.7/ots-sanitize build/venv/bin/ots-validator-checker -> ../../deps/ots-7.1.7/ots-validator-checker Fetching https://download.savannah.gnu.org/releases/freetype/ttfautohint-1.8.2-tty-osx.tar.gz ######################################################################### 100,0% build/venv/bin/ttfautohint -> ../../deps/ttfautohint-1.8.2 Building ttf2woff make: `ttf2woff' is up to date. build/venv/bin/ttf2woff -> ../../../misc/ttf2woff/ttf2woff Generating 'build/etc/generated.make' ./init.sh: line 406: build/etc/generated.make: No such file or directory

rsms commented 4 years ago

I haven’t updated dockermake in a while and need to do some work to make that work again. I might kill it.

However, init.sh should work — but you found a bug! Thank you! I’ll get a fix in this weekend. In the meantime, to get you unblocked, do this:

mkdir -p build/etc build/ufo
./init.sh
make
m-f-u commented 4 years ago

Thank you for your help!

Using init and make doesn't work for me either unfortunately.

It seems I have the same issue as a contributor beforehand, pip is referring to Python 2 instead of 3, I don't manage to get it fixed however.

➜ inter2 git:(master) ✗ mkdir -p build/etc build/ufo ./init.sh make using pip 20.1 from /Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/pip (python 3.8) using virtualenv: /Users/felix/Library/Python/3.8/bin/virtualenv Setting up virtualenv in 'build/venv' created virtual environment CPython3.8.2.final.0-64 in 642ms creator CPython3Posix(dest=/Users/felix/Github/inter2/build/venv, clear=False, global=False) seeder FromAppData(download=False, pip=latest, setuptools=latest, wheel=latest, via=copy, app_data_dir=/Users/felix/Library/Application Support/virtualenv/seed-app-data/v1.0.1) activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator build/venv/lib/python -> python3.8 build/venv/bin/pip install -r ./requirements.txt Collecting fonttools[lxml,ufo,unicode]==4.0.2 Using cached fonttools-4.0.2-py3-none-any.whl (717 kB) Collecting cu2qu==1.6.6 Using cached cu2qu-1.6.6-cp38-cp38-macosx_10_9_x86_64.whl (181 kB) Collecting glyphsLib==5.0.1 Using cached glyphsLib-5.0.1-py3-none-any.whl (734 kB) Collecting ufo2ft[pathops]==2.9.1 Using cached ufo2ft-2.9.1-py2.py3-none-any.whl (69 kB) Collecting defcon[lxml]==0.6.0 Using cached defcon-0.6.0-py2.py3-none-any.whl (191 kB) Processing /Users/felix/Library/Caches/pip/wheels/f8/f8/1a/4debdbce7385e94e1b2e032a97329dfb6fb2d1ad878240207a/skia_pathops-0.2.0.post2-cp38-cp38-macosx_10_9_x86_64.whl Collecting MutatorMath==2.1.2 Using cached MutatorMath-2.1.2-py2.py3-none-any.whl (31 kB) Collecting brotli==1.0.7 Using cached Brotli-1.0.7-cp38-cp38-macosx_10_9_x86_64.whl (412 kB) Collecting lxml<5,>=4.0; extra == "lxml" Using cached lxml-4.5.0-cp38-cp38-macosx_10_9_x86_64.whl (4.6 MB) Collecting fs<3,>=2.2.0; extra == "ufo" Using cached fs-2.4.11-py2.py3-none-any.whl (127 kB) Collecting booleanOperations>=0.8.2 Using cached booleanOperations-0.9.0-py3-none-any.whl (18 kB) Collecting compreffor>=0.4.6 Using cached compreffor-0.5.0-cp38-cp38-macosx_10_9_x86_64.whl (75 kB) Collecting fontMath>=0.4.8 Using cached fontMath-0.5.2-py2.py3-none-any.whl (30 kB) Requirement already satisfied: setuptools in ./build/venv/lib/python3.8/site-packages (from fs<3,>=2.2.0; extra == "ufo"->fonttools[lxml,ufo,unicode]==4.0.2->-r ./requirements.txt (line 1)) (46.1.3) Collecting appdirs~=1.4.3 Downloading appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB) Collecting pytz Using cached pytz-2020.1-py2.py3-none-any.whl (510 kB) Collecting six~=1.10 Using cached six-1.14.0-py2.py3-none-any.whl (10 kB) Collecting pyclipper>=1.1.0.post1 Using cached pyclipper-1.1.0.post3-cp38-cp38-macosx_10_9_x86_64.whl (138 kB) Installing collected packages: lxml, appdirs, pytz, six, fs, fonttools, cu2qu, defcon, glyphsLib, pyclipper, booleanOperations, compreffor, skia-pathops, ufo2ft, fontMath, MutatorMath, brotli Successfully installed MutatorMath-2.1.2 appdirs-1.4.4 booleanOperations-0.9.0 brotli-1.0.7 compreffor-0.5.0 cu2qu-1.6.6 defcon-0.6.0 fontMath-0.5.2 fonttools-4.0.2 fs-2.4.11 glyphsLib-5.0.1 lxml-4.5.0 pyclipper-1.1.0.post3 pytz-2020.1 six-1.14.0 skia-pathops-0.2.0.post2 ufo2ft-2.9.1 WARNING: You are using pip version 20.0.2; however, version 20.1 is available. You should consider upgrading via the '/Users/felix/Github/inter2/build/venv/bin/python -m pip install --upgrade pip' command. Fetching woff2 from https://github.com/google/woff2.git Cloning into 'build/deps/woff2'... remote: Enumerating objects: 1126, done. remote: Total 1126 (delta 0), reused 0 (delta 0), pack-reused 1126 Receiving objects: 100% (1126/1126), 3.45 MiB | 2.82 MiB/s, done. Resolving deltas: 100% (678/678), done. Submodule 'brotli' (https://github.com/google/brotli.git) registered for path 'brotli' Cloning into '/Users/felix/Github/inter2/build/deps/woff2/brotli'... remote: Enumerating objects: 19, done.
remote: Counting objects: 100% (19/19), done.
remote: Compressing objects: 100% (18/18), done.
remote: Total 6021 (delta 2), reused 4 (delta 0), pack-reused 6002
Receiving objects: 100% (6021/6021), 30.60 MiB | 5.38 MiB/s, done. Resolving deltas: 100% (3858/3858), 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 '/Users/felix/Github/inter2/build/deps/woff2/brotli/research/esaxx'... remote: Enumerating objects: 32, done.
remote: Total 32 (delta 0), reused 0 (delta 0), pack-reused 32
Cloning into '/Users/felix/Github/inter2/build/deps/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 | 596.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' Note: switching to 'a0d0ed7da27b708c0a4e96ad7a998bddc933c06e'.

You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example:

git switch -c

Or undo this operation with:

git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at a0d0ed7 Merge pull request #114 from garretrieger/master Building woff2 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 /Library/Developer/CommandLineTools/usr/bin/make -C brotli clean rm -rf bin libbrotli.a c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/font.o src/font.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/glyph.o src/glyph.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/normalize.o src/normalize.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/table_tags.o src/table_tags.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/transform.o src/transform.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_dec.o src/woff2_dec.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_enc.o src/woff2_enc.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_common.o src/woff2_common.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_out.o src/woff2_out.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/variable_length.o src/variable_length.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_compress.o src/woff2_compress.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_decompress.o src/woff2_decompress.cc c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/woff2_info.o src/woff2_info.cc /Library/Developer/CommandLineTools/usr/bin/make -C brotli lib 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/dictionary.c -o bin/obj/c/common/dictionary.o cc -O2 -Ic/include \ -c c/common/transform.c -o bin/obj/c/common/transform.o c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D __STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/convert_woff2ttf_fuzzer.o src/convert_woff2ttf_fuzzer.cc cc -O2 -Ic/include \ -c c/dec/bit_reader.c -o bin/obj/c/dec/bit_reader.o c++ -fno-omit-frame-pointer -no-canonical-prefixes -DFONT_COMPRESSION_BIN -D STDC_FORMAT_MACROS -std=c++11 -I./brotli/c/include/ -I./src -I./include -DOS_MACOSX -c -o src/convert_woff2ttf_fuzzer_new_entry.o src/convert_woff2ttf_fuzzer_new_entry.cc cc -O2 -Ic/include \ -c c/dec/decode.c -o bin/obj/c/dec/decode.o cc -O2 -Ic/include \ -c c/dec/huffman.c -o bin/obj/c/dec/huffman.o cc -O2 -Ic/include \ -c c/dec/state.c -o bin/obj/c/dec/state.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/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 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/brotli_bit_stream.c -o bin/obj/c/enc/brotli_bit_stream.o cc -O2 -Ic/include \ -c c/enc/cluster.c -o bin/obj/c/enc/cluster.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/compress_fragment_two_pass.c -o bin/obj/c/enc/compress_fragment_two_pass.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/encode.c -o bin/obj/c/enc/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/entropy_encode.c -o bin/obj/c/enc/entropy_encode.o cc -O2 -Ic/include \ -c c/enc/histogram.c -o bin/obj/c/enc/histogram.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/memory.c -o bin/obj/c/enc/memory.o cc -O2 -Ic/include \ -c c/enc/metablock.c -o bin/obj/c/enc/metablock.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/utf8_util.c -o bin/obj/c/enc/utf8_util.o rm -f libbrotli.a ar -crs libbrotli.a bin/obj/c/common/dictionary.o bin/obj/c/common/transform.o bin/obj/c/dec/bit_reader.o bin/obj/c/dec/decode.o bin/obj/c/dec/huffman.o bin/obj/c/dec/state.o bin/obj/c/enc/backward_references.o bin/obj/c/enc/backward_references_hq.o bin/obj/c/enc/bit_cost.o bin/obj/c/enc/block_splitter.o bin/obj/c/enc/brotli_bit_stream.o bin/obj/c/enc/cluster.o bin/obj/c/enc/compress_fragment.o bin/obj/c/enc/compress_fragment_two_pass.o bin/obj/c/enc/dictionary_hash.o bin/obj/c/enc/encode.o bin/obj/c/enc/encoder_dict.o bin/obj/c/enc/entropy_encode.o bin/obj/c/enc/histogram.o bin/obj/c/enc/literal_cost.o bin/obj/c/enc/memory.o bin/obj/c/enc/metablock.o bin/obj/c/enc/static_dict.o bin/obj/c/enc/utf8_util.o c++ 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 c++ 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_decompress.o -o woff2_decompress c++ 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_info.o -o woff2_info ar cr src/convert_woff2ttf_fuzzer.a 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/convert_woff2ttf_fuzzer.o ar cr src/convert_woff2ttf_fuzzer_new_entry.a 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/convert_woff2ttf_fuzzer_new_entry.o build/venv/bin/woff2_compress -> ../../deps/woff2/woff2_compress Fetching https://github.com/khaledhosny/ots/releases/download/v7.1.7/ots-7.1.7-osx.zip ######################################################################### 100,0%######################################################################### 100,0% Archive: ots.zip creating: ots-7.1.7-osx/ inflating: ots-7.1.7-osx/ots-idempotent
inflating: ots-7.1.7-osx/ots-perf
inflating: ots-7.1.7-osx/ots-sanitize
inflating: ots-7.1.7-osx/ots-validator-checker
build/venv/bin/ots-idempotent -> ../../deps/ots-7.1.7/ots-idempotent build/venv/bin/ots-perf -> ../../deps/ots-7.1.7/ots-perf build/venv/bin/ots-sanitize -> ../../deps/ots-7.1.7/ots-sanitize build/venv/bin/ots-validator-checker -> ../../deps/ots-7.1.7/ots-validator-checker Fetching https://download.savannah.gnu.org/releases/freetype/ttfautohint-1.8.2-tty-osx.tar.gz ######################################################################### 100,0% build/venv/bin/ttfautohint -> ../../deps/ttfautohint-1.8.2 Building ttf2woff make: `ttf2woff' is up to date. build/venv/bin/ttf2woff -> ../../../misc/ttf2woff/ttf2woff Generating 'build/etc/generated.make' misc/fontbuild glyphsync -o build/ufo src/Inter.glyphs generating build/ufo/Inter.designspace from src/Inter.glyphs Instance user-space location (400) redefined by 'Regular' Traceback (most recent call last): File "misc/fontbuild", line 625, in Main().main(sys.argv) File "misc/fontbuild", line 127, in main getattr(self, cmd)(argv[i:]) File "misc/fontbuild", line 422, in cmd_glyphsync p.start() File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/process.py", line 121, in start self._popen = self._Popen(self) File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 224, in _Popen return _default_context.get_context().Process._Popen(process_obj) File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/context.py", line 283, in _Popen return Popen(process_obj) File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/popen_spawn_posix.py", line 32, in init super().init(process_obj) File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/popen_fork.py", line 19, in init self._launch(process_obj) File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/popen_spawn_posix.py", line 47, in _launch reduction.dump(process_obj, fp) File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/multiprocessing/reduction.py", line 60, in dump ForkingPickler(file, protocol).dump(obj) TypeError: cannot pickle 'weakref' object make: *** [build/ufo/Inter.designspace] Error 1

m-f-u commented 4 years ago

I also tried it with a fresh install, I get the same error:

TypeError: cannot pickle 'weakref' object make: *** [build/ufo/Inter.designspace] Error 1

m-f-u commented 4 years ago

I deleted homebrew, and my python installations and istalled everything from scratch. I still get this error at the end of the first init.sh command:

build/venv/bin/ttf2woff -> ../../../misc/ttf2woff/ttf2woff Generating 'build/etc/generated.make' ./init.sh: line 406: build/etc/generated.make: No such file or directory

But following your command, it does now luckily compile fonts: mkdir -p build/etc build/ufo ./init.sh make

During the compiling process I get a lot of warnings. An excerpt:

misc/fontbuild compile -o build/fonts/const/Inter-Light.ttf build/ufo/Inter-Light.ufo warning: getGitHash() failed: [<class 'subprocess.CalledProcessError'>, <class 'FileNotFoundError'>] write build/fonts/const/Inter-Light.ttf misc/fontbuild compile -o build/fonts/const/Inter-LightItalic.ttf build/ufo/Inter-LightItalic.ufo warning: getGitHash() failed: [<class 'subprocess.CalledProcessError'>, <class 'FileNotFoundError'>] write build/fonts/const/Inter-LightItalic.ttf misc/fontbuild compile -o build/fonts/const/Inter-ExtraLight.ttf build/ufo/Inter-ExtraLight.ufo warning: getGitHash() failed: [<class 'subprocess.CalledProcessError'>, <class 'FileNotFoundError'>]

Are these known issues? I didn't find them here.

rsms commented 4 years ago

Dockermake has been removed, at least for now. If you are using an OS where you are unable to run init.sh but you have Docker installed, you could simply run a linux and build from there. Something like this:

cd inter
docker run --rm -it -v "$PWD:/inter" python bash -c 'apt-get -qq update && apt-get install -y curl unzip build-essential ca-certificates ttfautohint && cd /inter && make'

See misc/docker for the script that builds the "inter dockermake" container.