Package Details: fontmatrix 0.6.0-7

Git Clone URL: https://aur.archlinux.org/fontmatrix.git (read-only)
Package Base: fontmatrix
Description: Font manager for Linux
Upstream URL: https://github.com/fontmatrix/fontmatrix
Licenses: GPL
Submitter: michalm
Maintainer: oberon2007
Last Packager: oberon2007
Votes: 128
Popularity: 1.407545
First Submitted: 2008-01-21 20:01
Last Updated: 2017-03-03 23:00

Latest Comments

oberon2007 commented on 2017-03-03 23:04

@krakn the tag points to an 8 year old commit ;) So ... back to last available git.

oberon2007 commented on 2017-03-03 23:01

Thank you, @anne, the PKGBUILD was a mess, sorry for that! ;)
Fixed now.

anne commented on 2017-03-03 22:23

makepkg failed because $_git was not defined. I added to PKGBUILD:
_git=$pkgver
but I suspect this isn't the best possible fix. It did enable me
to compile the package, though.

krakn commented on 2017-02-20 14:22

An official tag has been made: https://github.com/fontmatrix/fontmatrix/issues/6#issuecomment-280970196

krakn commented on 2016-12-07 18:32

lgtm!

oberon2007 commented on 2016-12-07 11:22

Fixed the package. There hasn't been any substancial change in the code since years so I guess we can consider the last available commit stable even when they won't tag a new release. I've urged them again to do so in any case... ;)

krakn commented on 2016-08-08 19:08

https://github.com/fontmatrix/fontmatrix/issues/6

Opened a question upstream for possibly tagging a more recent source.

In the meantime: https://aur.archlinux.org/packages/fontmatrix-git/ works just fine.

JohnRobson commented on 2016-06-02 02:01

[ 79%] Building CXX object src/CMakeFiles/fontmatrix.dir/fmshaper.cpp.o
[ 80%] Building CXX object src/CMakeFiles/fontmatrix.dir/icushaper.cpp.o
[ 80%] Building CXX object src/CMakeFiles/fontmatrix.dir/moc_aboutwidget.cxx.o
/tmp/yaourt-tmp-us/aur-fontmatrix/src/fontmatrix-0.6.0-Source/src/icushaper.cpp: In constructor ‘IcuShaper::IcuShaper(FMOtf*, QString)’:
/tmp/yaourt-tmp-us/aur-fontmatrix/src/fontmatrix-0.6.0-Source/src/icushaper.cpp:28:34: error: invalid new-expression of abstract class type ‘IcuFontImpl’
icuFont = new IcuFontImpl ( otf );
^
In file included from /tmp/yaourt-tmp-us/aur-fontmatrix/src/fontmatrix-0.6.0-Source/src/icushaper.cpp:14:0:
/tmp/yaourt-tmp-us/aur-fontmatrix/src/fontmatrix-0.6.0-Source/src/icushaper.h:23:7: note: because the following virtual functions are pure within ‘IcuFontImpl’:
class IcuFontImpl : public LEFontInstance
^~~~~~~~~~~
In file included from /tmp/yaourt-tmp-us/aur-fontmatrix/src/fontmatrix-0.6.0-Source/src/icushaper.h:20:0,
from /tmp/yaourt-tmp-us/aur-fontmatrix/src/fontmatrix-0.6.0-Source/src/icushaper.cpp:14:
/usr/include/layout/LEFontInstance.h:165:25: note: virtual const void* icu_57::LEFontInstance::getFontTable(LETag, size_t&) const
virtual const void* getFontTable(LETag tableTag, size_t &length) const = 0;
^~~~~~~~~~~~
src/CMakeFiles/fontmatrix.dir/build.make:2001: recipe for target 'src/CMakeFiles/fontmatrix.dir/icushaper.cpp.o' failed
make[2]: *** [src/CMakeFiles/fontmatrix.dir/icushaper.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CMakeFiles/Makefile2:237: recipe for target 'src/CMakeFiles/fontmatrix.dir/all' failed
make[1]: *** [src/CMakeFiles/fontmatrix.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2
==> ERROR: A failure occurred in build().
Aborting...
==> ERROR: Makepkg was unable to build fontmatrix.

Maelan commented on 2015-08-12 19:56

There is a compile-time error, apparently because of an incompatible change in ICU API.

<<<
[ 72%] Building CXX object src/CMakeFiles/fontmatrix.dir/icushaper.cpp.o
src/fontmatrix-0.6.0-Source/src/icushaper.cpp: In constructor 'IcuShaper::IcuShaper(FMOtf*, QString)':
src/fontmatrix-0.6.0-Source/src/icushaper.cpp:28:34: error: invalid new-expression of abstract class type 'IcuFontImpl'
icuFont = new IcuFontImpl ( otf );
^
In file included from src/fontmatrix-0.6.0-Source/src/icushaper.cpp:14:0:
src/fontmatrix-0.6.0-Source/src/icushaper.h:23:7: note: because the following virtual functions are pure within 'IcuFontImpl':
class IcuFontImpl : public LEFontInstance
^
In file included from src/fontmatrix-0.6.0-Source/src/icushaper.h:20:0,
from src/fontmatrix-0.6.0-Source/src/icushaper.cpp:14:
/usr/include/layout/LEFontInstance.h:165:25: note: virtual const void* icu_55::LEFontInstance::getFontTable(LETag, size_t&) const
virtual const void* getFontTable(LETag tableTag, size_t &length) const = 0;
^
src/CMakeFiles/fontmatrix.dir/build.make:2001: recipe for target 'src/CMakeFiles/fontmatrix.dir/icushaper.cpp.o' failed
make[2]: *** [src/CMakeFiles/fontmatrix.dir/icushaper.cpp.o] Error 1
CMakeFiles/Makefile2:200: recipe for target 'src/CMakeFiles/fontmatrix.dir/all' failed
>>>

More specifically, a (virtual) method defined in ‘/usr/include/layout/LEFontInstance.h’ now takes an additional parameter ‘length’. Here is a patch to fix this. I do not guarantee it works correctly (not sure what to do with ‘length’ so I simply ignore it), but at least it compiles.

<<<
diff -aur a/src/icushaper.cpp b/src/icushaper.cpp
--- a/src/icushaper.cpp 2015-08-12 19:25:11.243994493 +0200
+++ b/src/icushaper.cpp 2015-08-12 20:06:16.214099942 +0200
@@ -248,7 +248,7 @@

}

-const void * IcuFontImpl::getFontTable ( LETag tableTag ) const
+const void * IcuFontImpl::getFontTable ( LETag tableTag, size_t &length_foo ) const
{
// qDebug()<< "IcuFontImpl::getFontTable" << OTF_tag_name( tableTag );
FT_Face face ( otf->face() );
diff -aur a/src/icushaper.h b/src/icushaper.h
--- a/src/icushaper.h 2015-08-12 20:01:47.920755132 +0200
+++ b/src/icushaper.h 2015-08-12 20:06:33.224100670 +0200
@@ -27,7 +27,7 @@
~IcuFontImpl();
// implements pure virtual methods of LEFontInstance

- const void* getFontTable(LETag tableTag ) const;
+ const void* getFontTable(LETag tableTag, size_t &length) const;
le_bool canDisplay (LEUnicode32 ch) const {return true;}
le_int32 getUnitsPerEM () const;
LEGlyphID mapCharToGlyph (LEUnicode32 ch) const ;
>>>

However, it still fails at the linking stage, and since the CMakefile.txt seems to have changed quite a lot, the patch given by albfan does not apply anymore. Don’t know how to fix it.

<<<
[ 15%] Linking CXX executable fontmatrix
/usr/bin/ld: CMakeFiles/fontmatrix.dir/icushaper.cpp.o: undefined reference to symbol '_ZN6icu_557UMemorynwEj'
/usr/lib/libicuuc.so.55: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
src/CMakeFiles/fontmatrix.dir/build.make:3246: recipe for target 'src/fontmatrix' failed
>>>

kozaki commented on 2015-04-06 15:30

Tried to patch following albfan's post and [https://wiki.archlinux.org/index.php/Patching_in_ABS]. But makepkg -o exited as it was unable to find any *.patch
Here's the (same) error that prevented compiling fontmatrix:
---
-- WARNING: you are using the obsolete 'PKGCONFIG' macro, use FindPkgConfig
<SNIP SNIP>
Linking CXX executable fontmatrix
/usr/bin/ld: CMakeFiles/fontmatrix.dir/icushaper.cpp.o: référence au symbole non défini «_ZN6icu_547UMemorynwEm»
/usr/lib/libicuuc.so.54: error adding symbols: DSO missing from command line
collect2: erreur: ld a retourné 1 code d'état d'exécution
src/CMakeFiles/fontmatrix.dir/build.make:3190: recipe for target 'src/fontmatrix' failed
make[2]: *** [src/fontmatrix] Error 1
CMakeFiles/Makefile2:180: recipe for target 'src/CMakeFiles/fontmatrix.dir/all' failed
make[1]: *** [src/CMakeFiles/fontmatrix.dir/all] Error 2
Makefile:136: recipe for target 'all' failed
make: *** [all] Error 2
==> ERREUR : Une erreur s’est produite dans build().
---

All comments