Shogun編譯過(guò)程

PIP安裝慢的解決方法

虛擬機(jī)安裝

需要VMware 和 ubuntu iso文件
選擇虛擬機(jī)的原因是方便在不同電腦上運(yùn)行代碼
ubuntuiso文件國(guó)內(nèi)下載
虛擬機(jī)安裝教程

Ubuntu環(huán)境設(shè)置

環(huán)境 ubuntu16.04 虛擬機(jī)
把虛擬內(nèi)存調(diào)到2G以上
進(jìn)入之后換源

sudo cp /etc/apt/sources.list /etc/apt/sources_init.list
sudo gedit /etc/apt/sources.list
清華源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse

sudo apt-get update
sudo apt-get -f install
sudo apt-get upgrade

換源遇到如下問(wèn)題及解決方案:

E: Sub-process returned an error code

或者可以不用手動(dòng)更換源的方式

更換pip源

1.  根目錄創(chuàng)建.pip文件:mkdir ~/.pip
2.  創(chuàng)建文件pip.conf:gedit .pip/pip.conf
3.  
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com
    清華的源

Shogun的安裝

官網(wǎng)給的具體的編譯流程和命令
多次安裝的教訓(xùn)總結(jié)出來(lái),根據(jù)github上的issue的查看
shogun因?yàn)閟vmlight類(lèi)存在license問(wèn)題,所以如果想使用多核的功能
這個(gè)工具箱最好還是手動(dòng)編譯
在經(jīng)歷了多次糟糕手動(dòng)編譯過(guò)程后
最好先安裝編譯所需要的第三方包,比如doxygen這個(gè)包,我在cmake過(guò)程中一直提示找不到,然而我通過(guò)apt-get install 還是 pip install 的方式 都無(wú)法正常安裝
所以最后還是先安裝所需要的第三方包
可以通過(guò)cmake . -LH的方式查看cmake 的 選項(xiàng)

doxygen包的安裝出現(xiàn)的問(wèn)題:

使用ubuntu默認(rèn)的源,換源后就安裝不上了
下面這種方式可以解決包之間依賴(lài)關(guān)系但是并不能解決當(dāng)前所遇到的問(wèn)題
aptitude

其他包的安裝

首先安裝swig
安裝swig
如果需要generate examples 需要安裝ctags 和ply
sudo apt-get install protobuf-compiler
sudo apt-get install doxygen
所需要的包
sudo apt-get install ccache
sudo apt-get install python-dev python-numpy
除此之外,應(yīng)該還需要
Atlas
sudo apt-get install libatlas-base-dev

JSON
sudo apt-get install libjsoncpp-dev

OPENCL

shogun安裝步驟

一:克隆整個(gè)項(xiàng)目

git clone https://github.com/shogun-toolbox/shogun.git

二:解決glpk的問(wèn)題,詳情去官網(wǎng)git的issue中搜索glpk的問(wèn)題

cd shogun 
git submodule update --init

或者
下載Shogun's GPL code
解壓上述下載的兩個(gè)文件,將shogun-gpl-6.1.3內(nèi)的三個(gè)文件‘shogun’、‘LICENSE.MD'、'README.MD'復(fù)制到shogun-shogun_6.1.3/src/gpl文件內(nèi)

但是必須做下面這一步

下載GLPK安裝包,
./configure
  make
  sudo make install
  sudo ldconfig

安裝
mkdir build
cd build
cmake命令如下

cmake  -DPYTHON_INCLUDE_DIR=/usr/include/python3.5 /usr/lib/python3.5/config-3.5m-x86_64-linux-gnu/libpython3.5.so -DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 -DPYTHON_PACKAGES_PATH=/usr/local/lib/python3.5/dist-packages -BUILD_META_EXAMPLES=ON -DINTERFACE_PYTHON=ON -DLICENSE_GPL_SHOGUN=ON -DUSE_SVMLIGHT=ON ..

make
sudo make install

添加環(huán)境變量:

sudo gedit ~/.bashrc
export PYTHONPATH="/home/zzz/shogun/build/src/interfaces/python/shogun.py:$PYTHONPATH"
export LD_LIBRARY_PATH="/home/zzz/shogun/build/src/shogun:$LD_LIBRARY_PATH"
source ~/.bashrc


通過(guò)sudo權(quán)限將shogun.py、_shogun.so兩個(gè)文件復(fù)制到Python的安裝環(huán)境下

sudo cp shogun/build/src/interfaces/python/shogun.py /usr/local/lib/python3.5/dist-packages/

sudo cp shogun/build/src/interfaces/python/_shogun.so /usr/local/lib/python3.5/dist-packages/

安裝pycharm并導(dǎo)入路徑

官網(wǎng)下載pycharm社區(qū)版,直接解壓
設(shè)置系統(tǒng)路徑,則可以終端啟動(dòng)

sudo gedit ~/.bashrc
export PATH=/home/zzz/pycharm/pycharm-community-2019.1.1/bin:$PATH
source ~/.bashrc

輸出可以導(dǎo)入shogun的python路徑,并在pycharm中的interpreter中選擇這個(gè)版本的python

import sys
path = sys.executable
print(path)

在setting中找到project interpreter 并更改為可導(dǎo)入shogun 的python 版本
在添加窗口中可能找不到shogun,不用在意,直接在腳本中寫(xiě)import shogun 應(yīng)該就可以運(yùn)行

教程

教程

查看編譯選項(xiàng)
cmake . -LH

shogun問(wèn)題搜索

shogun使用

官方例程
sudo apt-get Install python3-scipy
這就是安裝的python3的包的命令
官方pythonAPI說(shuō)明

編譯中遇到的無(wú)法解釋的現(xiàn)象,記錄一下步驟

第一次編譯時(shí)沒(méi)有問(wèn)題,但是沒(méi)有安裝glpk,cmake make make install 都沒(méi)有問(wèn)題
直接安裝了 pycharm 直接使用了, mkl.train()的時(shí)候報(bào)錯(cuò)需要重新編譯 并且安裝 glpk
但是重新編譯時(shí)在出現(xiàn)了no match for operator 這樣的錯(cuò)誤

所以重新配了一遍,安裝glpk后,所有需要的包安裝后,編譯沒(méi)有問(wèn)題,在安裝了pycharm
這次就沒(méi)有問(wèn)題了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容