Linguistics เป็น Package สำหรับทำเรื่องการ Process ทางภาษา (Natural Language Processing) บน Ruby ซึ่งถ้าใช้ร่วมกับ LinkParser ของ Abiword ก็จะได้ Tools สำหรับ parse ภาษาอังกฤษบน Ruby ซึ่งวิธีติดตั้งก็ตามต่อไปนี้:
ติดตั้งตัว Linguistics
- โหลดตัว binary จากหน้า Homepage (ตอนที่ใช้ลงเวอร์ชัน 1.0.5)
- ลง gem
sudo gem install Linguistics -n <<path ที่ gem อยู่ ณ ปัจจุบัน>>
ติดตั้ง Ruby – LinkParser
- ถ้าเกิดมี liblink-grammar เวอร์ชันที่ไม่ตรงกันอยู่ใน /usr/local/lib อยู่แล้ว อย่าเพิ่งลงเพราะจะอันตรายมาก ถ้าไม่ได้ลง abiword และพยายามลง liblink-grammar คนละเวอร์ชันมาก่อน ให้ลบทิ้งให้หมด ลบ liblink-grammar ใน /usr/local/lib ด้วย
sudo rm -rf /usr/local/lib/liblink-grammar*
- โหลด tarball snapshot มา (ตอนผมลองแล้วโหลด snap ไม่ได้ต้องโหลด trunk มาเลย)
- แตก tarball แล้ว cd เข้าโฟลเดอร์
- เช็ค package ว่ามีครบรึยัง ตามคำสั่งข้างล่าง
sudo gem install darkfish-rdoc diff-lcs rcov rspec mkrf
- ตาม Build instruction เลย (อ้างอิงจากเวอร์ชัน link-grammar รุ่น 4.3.9 ถ้าเปลี่ยน version คิดว่าต้องเปลี่ยนตาม)
$ tar -xvzf link-grammar-4.3.9.tar.gz $ cd link-grammar-4.3.9 # If you want the LinkParser::Linkage#current_sublinkage method to work, you # must apply the included patch. If you don't care about that method, you # can skip the next step: $ patch -p1 < ../link-grammar-4.3.9.patch $ ./configure; make; sudo make install $ cd .. $ rake $ sudo rake install - ตอนสั่ง rake (จาก tarball ที่ให้ไว้หน้าแรก) ผมเจอปัญหาต่อไปนี้:
- มันไม่ให้ svn file มา แต่ว่ามีถามหา svn revision ได้ error ข้างล่าง:
svn: '/opt/Ruby-LinkParser-20080526.4' is not a working copy rake aborted! undefined method `[]' for false:FalseClass /opt/Ruby-LinkParser-20080526.4/misc/rake/svn.rb:99:in `get_svn_rev'
วิธีแก้ (ถึกๆ) Hard – Code Rakefile เซต pkg_revision = 0
บรรทัดนี้:pkg_build = get_svn_rev( BASEDIR ) || 0
แก้เป็น
pkg_build = 0
- liblink-grammar.so.4: cannot open shared object file อันนี้อ้างอิงกับ ticket 3 ต้องสั่ง
LD_LIBRARY_PATH=/usr/local/lib rake แทนการสั่ง rake เฉยๆ
- มันไม่ให้ svn file มา แต่ว่ามีถามหา svn revision ได้ error ข้างล่าง:
