# 在 Ubuntu 18.04 環境下編譯 OxOOL

- 請參考 [在 Ubuntu 18.04 環境下安裝(社群版)](https://docs.ossii.com.tw/books/oxoffice-online-%E6%8A%80%E8%A1%93%E6%89%8B%E5%86%8A/page/%E5%9C%A8-ubuntu-1804-%E7%92%B0%E5%A2%83%E4%B8%8B%E5%AE%89%E8%A3%9D%28%E7%A4%BE%E7%BE%A4%E7%89%88%29) 這篇文章的 Ubuntu 18.04 安裝 OxOOL 套件的過程。

- 先關閉原本安裝的 OxOOL

```Shell
sudo systemctl stop oxool
sudo systemctl disable oxool
```

- 安裝 git 指令

```Shell
sudo apt install git -y
```

- 將 OxOOL 源始碼 clone 回來

```Shell
git clone https://github.com/OSSII/oxool-community.git
```

- 安裝 Ubuntu 18.04 編譯環境所需的套件

```Shell
cd oxool-community
./install_build_require_ubuntu.sh
```

- 安裝並設定 Node.js

```Shell
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt install -y nodejs
```

- 編譯及測試執行 OxOOL

切換到 oxool-cummunity 程式的主目錄下，開始編譯程式。

```Shell
cd oxool-community
./autogen.sh # 過程中若是提示找不到 fontconfig，請安裝 libfontconfig1-dev；若提示缺少 Poco 標頭，則請安裝 libpoco-dev
make -j2
```

如果成功就會看到以下訊息請您輸入編譯帳號的密碼：

```
[sudo] password for oxoffice:
```

輸入後，會繼續編譯直到完成，然後輸入以下指令測試是否能運行成功：

```Shell
make run
```

如果看到以下訊息，就代表已經可以成功測試了。

```
Ready to accept connections on port 9980.
```

- 打包 OxOOL deb 套件

請在專案的根目錄執行

```Shell
debuild -b -uc -us # 若您已先執行過上面的編譯動作，在執行此步驟前請先在您的 oxool-community 目錄執行 git clean -fdx 指令，如此才能正常打包
```

最後打包的 deb 結果會生成在專案的上層目錄

```Shell
cd ..
ls oxool_3.x.x-1.community_amd64.deb
```

套件直接就可以拿來安裝～編譯完成。