svgalib編譯安裝:
一、要先安裝libx86-1:
tar xzf libx86_1.1+ds1.orig.tar.gz
gunzip libx86_1.1+ds1-6.diff.gz
cd libx86-1.1/
patch -p1 < ../libx86_1.1+ds1-6.diff
make // 出錯,修改lrmi.h,新增巨集, 參考561491.patch
lrmi.h新增如下**:
#if defined(__linux__) && !defined(tf_mask)
#define tf_mask x86_eflags_tf
#define if_mask x86_eflags_if
#define vif_mask x86_eflags_vif
#define iopl_mask x86_eflags_iopl
#endif
#define real_mem_base
((void *)0x10000)
#define real_mem_size
0x10000
#define real_mem_blocks
0x100
修改後:
make
sudo make install
svgalib_1.4.3.orig.tar.gz
svgalib_1.4.3-30.debian.tar.gz
svgalib_1.4.3-30.dsc
打補丁tar xzf svgalib_1.4.3.orig.tar.gz
tar xzf svgalib_1.4.3-30.debian.tar.gz
cd svgalib-1.4.3.orig/
for file in ../debian/patches/*.patch; do patch -p1 < $file; done
編譯安裝:
sudo make install
把庫考到/lib:
sudo cp svgalib-1.4.3.orig/sharedlib/*so* /lib
測試:官方例子:
#include #include int main(void)
非常簡單,沒什麼好說的。
我把svgalib應用在我前面用hzk16實現的電子書上,就可以在pc的tty終端顯示電子書了。主要把之前對fbmem的put pixel改為 vga_drawpixel(),其他地方相應改一下即可。下面是我寫的兩個函式:
svga_clean()函式,代替原來的memset(fbmem, 0, screen_size);:
void svga_clean(void)
crt_show_pixel(int x,int y,int color)函式代替原來的lcd_put_pixel():
void ctr_show_pixel(int x,int y,int color)
lcd_init()函式中把對lcd的操去掉,直接設定幾個解析度引數即可:
int lcd_init(void)
main()函式中新增對svga的一些初始化**:
vga_init();
vga_setmode(g320x200x256);
gl_setpalettecolor(4, 0xe7>>2, 0xdb>>2, 0xb5>>2); /* 0xe7dbb5 */ /* 泛黃的紙 */
svga_clean();
gcc -o svgatest main.c function.c -lvga -lvgagl
要在tty文字模式下執行程式,程式會進入圖形模式來顯示。
如其他地方有問題的話,適當修改一下即可。
使用svgalib在虛擬機器tty終端下顯示電子書效果:
對電子書有疑問的,可以參考我前面的電子書**:
對svgalib使用有疑問的可以參考svgalibtutorials:
php安裝與應用
1 服務端指令碼。這是 php 最傳統,也是最主要的目標領域。開展這項工作需要具備以下三點 a php 解析器 cgi 或者伺服器模組 b web 伺服器 c web 瀏覽器。需要在執行 web 伺服器時,安裝並配置 php,然後,可以用 web 瀏覽器來訪問 php 程式的輸出,即瀏覽服務端的 p...
twemproxy安裝與簡單應用
twemproxy可用於redis分片 github cd twemproxy autoreconf fvi configure make sudo make install 2 檢視幫助手冊 nutcracker v 3 啟動兩個redis例項,8100 8200 cp conf nutcrack...
sphinx 的安裝與應用
1 php的windoes sphinx擴充套件安裝 php的linux sphinx擴充套件安裝 wget tarzxf sphinx 1.3.0.tgz cdsphinx 1.3.0 usr local php bin phpize configure with php config usr l...