Inter: fail to build 3.8, 3.9, and 3.10

Created on 7 Aug 2019  路  12Comments  路  Source: rsms/inter

I'm trying to build the source on Debian GNU/Linux, and it fails with these messages:

INFO:ufo2ft:Building OpenType tables
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/lexer.py", line 230, in __next__
    self.lexers_.append(self.make_lexer_(path))
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/lexer.py", line 247, in make_lexer_
    fileobj = open(filename, "r", encoding="utf-8")
  File "/usr/lib/python3/dist-packages/fontTools/misc/py23.py", line 250, in open
    file, mode, buffering, encoding, errors, newline, closefd)
FileNotFoundError: [Errno 2] No such file or directory: 'instance_ufo/features/ccmp.fea'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/fontmake", line 11, in <module>
    load_entry_point('fontmake==2.0.0a1', 'console_scripts', 'fontmake')()
  File "/usr/lib/python3/dist-packages/fontmake/__main__.py", line 384, in main
    project.run_from_glyphs(glyphs_path, **args)
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 641, in run_from_glyphs
    self.run_from_designspace(designspace_path, **kwargs)
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 784, in run_from_designspace
    **kwargs,
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 836, in _run_from_designspace_stat
    **kwargs,
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 897, in run_from_ufos
    self.build_otfs(ufos, **kwargs)
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 191, in build_otfs
    self.save_otfs(ufos, **kwargs)
  File "/usr/lib/python3/dist-packages/fontTools/misc/loggingTools.py", line 375, in wrapper
    return func(*args, **kwds)
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 456, in save_otfs
    for font, ufo in zip(fonts, ufos):
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 323, in _iter_compile
    yield compile_func(ufo, **options)
  File "/usr/lib/python3/dist-packages/ufo2ft/__init__.py", line 132, in compileOTF
    featureCompilerClass=featureCompilerClass,
  File "/usr/lib/python3/dist-packages/ufo2ft/__init__.py", line 500, in compileFeatures
    return featureCompiler.compile()
  File "/usr/lib/python3/dist-packages/ufo2ft/featureCompiler.py", line 120, in compile
    self.setupFeatures()
  File "/usr/lib/python3/dist-packages/ufo2ft/featureCompiler.py", line 215, in setupFeatures
    featureFile = parseLayoutFeatures(self.ufo)
  File "/usr/lib/python3/dist-packages/ufo2ft/featureCompiler.py", line 43, in parseLayoutFeatures
    doc = parser.parse()
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 75, in parse
    statements.append(self.parse_feature_block_())
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 1247, in parse_feature_block_
    cv_feature)
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 1374, in parse_block_
    self.expect_symbol_("{")
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 1542, in expect_symbol_
    self.advance_lexer_()
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 1614, in advance_lexer_
    self.next_token_location_) = next(self.lexer_)
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/lexer.py", line 235, in __next__
    raise IncludedFeaNotFound(fname_token, fname_location)
fontTools.feaLib.error.IncludedFeaNotFound: instance_ufo/Inter-Thin.ufo:73:8: features/ccmp.fea
Needs Info

All 12 comments

I'm getting issues with this version too, except layercontents.plist is missing for Inter-Thin.ufo.I'm using Docker Toolbox, which uses Tiny Core Linux, although it should still work regardless.

I haven鈥檛 updated the docker image to work with some recent changes to the build system. Does it build if you setup with ./init.sh etc?

I haven't tried yet with the shell script. I'll try that.

I would prefer to build without docker, just with fontmake -i -o otf -g src/Inter.glyphs

The docker image hasn鈥檛 been updated in a while. I鈥檒l make this issue into a todo to build an updated image.

@alexmyczko Can you provide the output of git rev-parse HEAD and also the steps you took before hitting the errors above?

git rev-parse HEAD would say nothing, since I download the tarball release as in https://github.com/rsms/inter/archive/v3.9.tar.gz

still happens with current master

@alexmyczko Can you please provide the steps you took before hitting the errors above? (i.e. exactly what commands you ran in what order, and if possible, also the output you see.)

$ wget https://github.com/rsms/inter/archive/v3.10.tar.gz
$ tar xzf v3.10.tar.gz
$ cd inter-3.10
$ fontmake -i -o otf -g src/Inter.glyphs
...
INFO:ufo2ft.filters:Running DecomposeComponentsFilter on Inter-Thin
INFO:ufo2ft.filters:Running RemoveOverlapsFilter on Inter-Thin
/INFO:ufo2ft:Building OpenType tables
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/lexer.py", line 234, in __next__
    self.lexers_.append(self.make_lexer_(path))
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/lexer.py", line 251, in make_lexer_
    fileobj = open(filename, "r", encoding="utf-8")
FileNotFoundError: [Errno 2] No such file or directory: 'instance_ufo/features/ccmp.fea'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/fontmake", line 11, in <module>
    load_entry_point('fontmake==2.0.0a1', 'console_scripts', 'fontmake')()
  File "/usr/lib/python3/dist-packages/fontmake/__main__.py", line 384, in main
    project.run_from_glyphs(glyphs_path, **args)
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 641, in run_from_glyphs
    self.run_from_designspace(designspace_path, **kwargs)
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 784, in run_from_designspace
    **kwargs,
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 836, in _run_from_designspace_static
    **kwargs,
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 897, in run_from_ufos
    self.build_otfs(ufos, **kwargs)
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 191, in build_otfs
    self.save_otfs(ufos, **kwargs)
  File "/usr/lib/python3/dist-packages/fontTools/misc/loggingTools.py", line 374, in wrapper
    return func(*args, **kwds)
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 456, in save_otfs
    for font, ufo in zip(fonts, ufos):
  File "/usr/lib/python3/dist-packages/fontmake/font_project.py", line 323, in _iter_compile
    yield compile_func(ufo, **options)
  File "/usr/lib/python3/dist-packages/ufo2ft/__init__.py", line 132, in compileOTF
    featureCompilerClass=featureCompilerClass,
  File "/usr/lib/python3/dist-packages/ufo2ft/__init__.py", line 500, in compileFeatures
    return featureCompiler.compile()
  File "/usr/lib/python3/dist-packages/ufo2ft/featureCompiler.py", line 120, in compile
    self.setupFeatures()
  File "/usr/lib/python3/dist-packages/ufo2ft/featureCompiler.py", line 215, in setupFeatures
    featureFile = parseLayoutFeatures(self.ufo)
  File "/usr/lib/python3/dist-packages/ufo2ft/featureCompiler.py", line 43, in parseLayoutFeatures
    doc = parser.parse()
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 73, in parse
    statements.append(self.parse_feature_block_())
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 1245, in parse_feature_block_
    cv_feature)
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 1372, in parse_block_
    self.expect_symbol_("{")
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 1540, in expect_symbol_
    self.advance_lexer_()
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/parser.py", line 1605, in advance_lexer_
    self.next_token_location_) = next(self.lexer_)
  File "/usr/lib/python3/dist-packages/fontTools/feaLib/lexer.py", line 239, in __next__
    raise IncludedFeaNotFound(fname_token, fname_location)
fontTools.feaLib.error.IncludedFeaNotFound: instance_ufo/Inter-Thin.ufo:73:8: features/ccmp.fea

I haven鈥檛 updated the docker image to work with some recent changes to the build system. Does it build if you setup with ./init.sh etc?

yes that works, but i don't want to use docker, nor venv to build the font

ah and it is fontmake 2.01

it just works providing the *.fea files at the place fontmake looks for them https://github.com/googlefonts/fontmake/issues/581

@alexmyczko Sorry for the bump, but could you send me the script you use to build the fonts? I've been having trouble getting the build script to work, so I'd like to use fontmake instead.

@alexmyczko Using only fontmake, you are likely getting font files with incorrect metadata, and if you build variable fonts, some glyphs will be rotated and/or slanted the wrong way.

@Xylobol fontbuild is a wrapper around fontmake.

See https://github.com/rsms/inter/issues/200 for a conversation

Was this page helpful?
0 / 5 - 0 ratings

Related issues

pakastin picture pakastin  路  8Comments

itsnwa picture itsnwa  路  4Comments

cssobral2013 picture cssobral2013  路  3Comments

csampersand picture csampersand  路  3Comments

sk1nzz picture sk1nzz  路  4Comments