Love2d是一款游戲引擎,基於C/C++編寫,使用Lua腳本進行封裝,簡單易用、跨平台。
Pocketchip換源、更新以后,通過sudo apt-get -f install love
安裝的版本實在是太老了(0.9)。
當然,0.10.2比0.9稍微新一點,但是還是相對太老了,我試過,No909.love
無法正常運行,因為它是基於11.1版本編寫的。
所以這次我嘗試安裝最新的11.3版本。目標是能夠運行GameShell默認自帶的No909.love
。
准備工作
1. 下載Love2D_11.3版本的Linux源碼
首先當然要下載最新的11.3的Love2d。
但是11開始不提供armhf版本的deb安裝包了,所以我們選擇源碼編譯安裝。
2. 安裝C/C++編譯器與Make
由於Love2D是C/C++寫的,就需要gcc
和g++
,當然,由於Love2D源碼安裝使用了make
,我們也要安裝make
工具。其實很多軟件包的依賴項都是gcc、g++和make,所以我們必須先裝好它們。
sudo apt-get install gcc g++ make
3. 安裝pkg-config
Pocketchip沒有自帶pkg-config
,我們也要安裝它,其他軟件包也需要它。
sudo apt-get install pkg-config
4. 安裝Lua環境及LuaJIT
sudo apt-get install lua5.2
安裝Lua5.2
LuaJIT需要下載這個文件LuaJIT-2.0.5.tar.gz
LuaJIT的安裝很簡單,先解壓這個壓縮包:
tar -xzvf LuaJIT-2.0.5.tar.gz
然后進入LuaJIT的根目錄cd LuaJIT-2.0.5
最后make & sudo make install
即可。
5. 安裝SDL2
大部分使用C/C++編寫的跨平台腳本游戲引擎,例如Pygame、Love2D等,都使用了SDL2。
我們要安裝它:
sudo apt-get install libsdl2-dev
6. 安裝OpenAL
Love2D音頻采用OpenAL,所以我們也要安裝它:
sudo apt-get install libopenal-dev
7. 安裝FreeType2
1. 安裝python2 python3環境
FreeType2需要Python2 Python3 以及對應的pip和pip3。
我們安裝它們:
sudo apt-get install python python-pip python3 python3-pip
2. 下載FreeType2源碼
解壓:
tar -xzvf freetype-2.10.1.tar.gz
進入FreeType2根目錄:
cd freetype-2.10.1
安裝:
make & sudo make install
安裝過程比較慢,可以看看書。
8. 安裝libmodplug、libvorbis、libmpg123以及libtheora
sudo apt-get install libmodplug-dev libvorbis-dev libmpg123-dev libtheora-dev
一切就緒,開始源碼安裝!
先解壓love-11.3-linux-src.tar.gz
:
(tips: 這里看起來是tar.gz,你以為是gzip壓縮的,其實不然hhh)
tar -xvf love-11.3-linux-src.tar.gz
然后進入它的根目錄:
cd love-11.3
最后可以先確認一下有沒有問題:
./configure
提示no
不代表報錯,最后執行完,沒有錯誤提示的話就行
最后
make & sudo make install
安裝過程更慢,可以睡個覺,第二天再看安裝好了沒吧,記得給pocketchip供電(開玩笑,不過的確要比較久,大概一個多小時,因為要編譯的有很多...,用時間換最新的Love2d,不虧!)。
安裝成功!現在是2020.04.10的01:59,終於等到你!
測試運行No.909
把GameShell里的No.909和對應的Logo拷貝到Pocketchip,我這里安裝了增強版桌面,可以添加圖標,指定運行的shell,和GameShell添加自定義應用類似:
運行:
成功!
這說明Love2D的新游戲(分辨率合適)都能用Pocketchip玩了,怎么樣,很贊吧!
但是實測,需要優化,幀數感人...,可能和GPU渲染有關。
用Terminal運行會報這個錯,暫時不知道如何解決...
期待我優化后再發博客吧!今天就到這里,睡覺去...