Como dizer ao libgs para usar outra implementação freetype?

0

Então, após um ano de uso, minha impressora decidiu não imprimir mais. Depois de solucionar um pouco, notei que o log de erros do cups mostra algo como

gs: symbol lookup error: <path>/libgs.so.9: undefined symbol: FT_Property_Set

Eu achei isso muito estranho. Como o FT_Property_Set é obviamente parte da biblioteca freetype, verifiquei:

ldd <path>/libgs.so.9
  ..
  libfreetype.so.6 => <path>/freetype-infinality/libfreetype.so.6
  ..

e depois um grep de readelf -Ws <path>/freetype-infinality/libfreetype.so.6 Na verdade, mostrou que não definiu FT_Property_Set. Eu também tenho o Implementação freetype "normal" instalada e grepping readelf -Ws <path>/libfreetype.so.6.14.0 mostrou que definiu FT_Property_Set. Então, depois de remover a versão infinality, libgs usou o libfreetype normal.so e eu poderia continuar imprimindo. Minha pergunta é se eu poderia ter dito que as libgs de alguma forma apenas usem a biblioteca freetype normal sem excluir a infinalidade (para que outros programas ainda usem isso)?

    
por WonderingUser 20.08.2017 / 15:24

1 resposta

1

Uma solução é definir LD_PRELOAD como libfreetype.so original. Outra é recompilar a infinalidade com o último libfreetype (2.8.1).

    
por 13.11.2017 / 01:17