2016-12-27 6 views
1

Wenn ich von traditionellem Chinesisch zu vereinfachtem Chinesisch umwandle. Ich benutze ubuntu und installiere OpenCC 1.0.4 (nach Quellcode). Ich benutze Python OpenCC 0.2 (pip opencc installieren)opencc python verursacht Segmentierungsfehler

ich in Python-Umgebung versucht (python3.4 +)

>>> import opencc 
>>> opencc.convert('乾坤一擲') 
>>> opencc.convert('乾坤一掷', config='s2t.json') 

Alle Ursache Segmentation Fault.

Allerdings, wenn ich verwenden opencc aus dem System-C-Bibliothek über

[[email protected]]$ opencc -i text.txt" 

wo text.txt die traditionellen chinesischen Wörter enthält. Es ist in Ordnung.

Jeder hat diese und jede Lösung gefunden? Danke

Antwort

0

Ich löste mein eigenes Problem.

Die Ursache dieses Problems ist wie folgt,

Unter meinem Ubuntu 16.04 LTS, sind dort/usr/lib/und/usr/lib/x86_64-linux-gnu/

Wenn ich installiert opencc 1.0.4 vom Quellcode (https://github.com/BYVoid/OpenCC) über Makefile, die Bibliothek wurde nur in/usr/lib/installiert, was libopencc.so unter/usr/lib/x86_64-linux-gnu/unmodified verließ. Und diese lib unter/usr/lib/x86_64-linux-gnu/ist zu alt für OpenCC 0.2 und wird immer noch von der Python-Laufzeit verwendet.

Ref: https://github.com/lepture/opencc-python/blob/master/opencc.py#L20

Die Lösung: Link zu dem /usr/lib/x86_64-linux-gnu/libopencc.so neuen libopencc.so von opencc 1.0.4.

Was ich wirklich getan habe: Kopieren Sie die Datei /usr/lib/libopencc.so.1.0.0 nach/usr/lib/x86_64-linux-gnu /, die die alte libopencc.so.1.0.0 ersetzt.

Verwandte Themen