Hyperscan學習之原始碼安裝---redhat
阿新 • • 發佈:2019-02-15
前言
最近專案上需要一個高效能的正則表示式匹配介面,想到了之前聽人提到過的Hyperscan庫,安裝時候遇到了各種各樣的問題,而且好多問題百度無解,特拿出來跟大家分享一下;
安裝前準備
系統:rehat7.0(其他unix系統應該也類似)需要安裝的依賴包:
- 檢查你係統中下列軟體的版本,不符合版本要求的下載符合要求版本的安裝
Dependency Version Notes CMake >=2.8.11 Ragel 6.9 Boost >=1.57 Boost headers required Pcap >=0.8 Optional: needed for example code only
安裝過程以及遇到的問題
以下只列出我在安裝時候安裝的軟體- colm-0.13.0.5 這個是安裝Rangel的依賴的包;在Rangel原始碼包中給出的README裡提到了這個軟體,但是比較坑人的是README中給出的的是0.13.0.3的下載地址,安裝之後在安裝Rangel時會提示colm版本過低,要求版本不低於0.13.0.5;很坑人啊!!
這是我第二次在ubuntu下安裝遇到的錯誤,重新./configure一下 就可以了 - Ragel-7.0.0.10這個依賴在安裝時只要你的colm版本安裝正確,那麼安裝以後順風順水一輪過,正常步驟安裝即可;
如果出現這個問題ldconfig一下解決 - boost_1_60_0這個原始碼安裝包比較大,安裝過程比較怪:
# tar -zxvf boost_1_60_0.tar && cd boost_1_60_0
# ./bootstrap.sh 生成了bjam 和b2 安裝工具
# ./b2
# ./b2 install - Hyperscan重頭戲來了
# tar -zxvf hyperscan-4.5.0.tar.gz
# cd hyperscan-4.5.0
# mkdir build
# cd build
# cmake ../ && cmake -build && make install
################################################
比較幸運的人可能直接就安裝成功了,可惜我不是
安裝過程中我遇到了 libcolm-0.13.0.5.so 連結失敗的問題,解決的方法是將/usr/local/lib64/libcolm-0.13.0.5.so 拷貝到/usr/lib64/下一份 就解決了,原因我猜是連結庫指定路徑和安裝colm生成的庫的路徑不同;