1. 程式人生 > >嵌入式linux實現vnc功能

嵌入式linux實現vnc功能

現在有一個想法準備在嵌入式裝置和pc之間通過網路實現一種類似遠端桌面的功能,在pc端可以看到嵌入式裝置顯示的內容,並且可以使用滑鼠和鍵盤操作嵌入式裝置的程式。

查看了網路上的一些資料後,準備使用vnc功能來實現,在嵌入式裝置端啟動vncserver,在pc端啟動vncclient,建立連線後能實現需要的功能。準備嘗試的方法有兩種:

一種是在編譯Qt時加入vnc的支援。參考的資料是

http://doc.qt.io/archives/qt-4.8/qt-embedded-vnc.html

http://www.friendlyarm.net/forum/topic/5029

http://bbs.csdn.net/topics/380149017

具體做法是編譯Qt時加入編譯選項

-qt-gfx-vnc

-plugin-gfx-vnc

-qt-gfx-linuxfb

-plugin-gfx-linuxfb

編譯完成後把生成的libqgfxvnc.so和libqscreenlinuxfb.so拷貝到開發板 qt路徑/plugins/gfxdrivers/

然後在嵌入式裝置啟動應用程式 ./myapp -qws -display VNC:0

這時出現了

VNC: driver not found 

Aborted

最後這個問題沒有解決掉,放棄了這個方法。

第二種方法是使用x11vnc。參考的資料是

https://forum.qt.io/topic/66162/running-vnc-server-on-embedded-linux/2

http://blog.csdn.net/xiaolangyangyang/article/details/52950690

具體做法是

1.先下載x11vnc原始碼地址在http://www.karlrunge.com/x11vnc/#downloading

2.編譯原始碼:

# tar -xjvf x11vnc-0.9.13.tar.gz# cd x11vnc-0.9.13# CC=arm-fsl-linux-gnueabi-gcc CFLAGS=-O2 ./configure --host=arm-linux --without-x --prefix=./_INSTALL/# make# make install

3.拷貝生成的x11vnc到裝置上。

4.啟動x11vnc。

/app/x11vnc-noipv6 -rawfb /dev/fb0 -pipeinput UINPUT:touch,tslib_cal=/etc/pointercal,direct_abs=/dev/input/event2,nouinput,dragskip=4 -clip 640x480+0+0

其中校準檔案tslib_cal和觸控式螢幕裝置direct_abs的路徑要換成自己裝置中的路徑。

5.在pc端通過vnc客戶端工具如vncviewer連線裝置,這時就能看到裝置顯示的內容了,而且可以通過滑鼠操作裝置了。

相關推薦

嵌入式linux實現vnc功能

現在有一個想法準備在嵌入式裝置和pc之間通過網路實現一種類似遠端桌面的功能,在pc端可以看到嵌入式裝置顯示的內容,並且可以使用滑鼠和鍵盤操作嵌入式裝置的程式。查看了網路上的一些資料後,準備使用vnc功能來實現,在嵌入式裝置端啟動vncserver,在pc端啟動vncclien

嵌入式linux實現pppoe撥號上網

嵌入式linux實現pppoe撥號上網一.交叉編譯內核make menuconfig -> Device Drivers -> Network device support -> PPP (point-to-point protocol) 中,選中所有ppp選項。退出,保存配置,修改M

如何使用linux實現路由器功能Linux運維

Linux運維 Linux雲計算 Linux入門 0基礎學Linux 網絡之間的通信主要依靠路由器,除了日常使用的路由器設備外,Linux系統也可以進行路由器的配置,只需在Linux主機上添加一些簡單的路由條目,這些Linux主機就可以充當簡單路由器的功能,以下以CentOS6環境下實現路

嵌入式linux 實現mdev SD卡和U盤自動掛載和解除安裝的方法 mdev.conf

首先先參考這些部落格做一些瞭解:http://linux.chinaunix.net/techdoc/install/2009/11/18/1144936.shtml http://www.cnblogs.com/leaven/archive/2010/09/17/1828

嵌入式Linux下PWM功能除錯

轉載地址:http://www.eefocus.com/toradex/blog/17-05/420816_04520.html By Toradex秦海 1). 簡介 PWM(Pulse-width modulation)介面是嵌入式裝置最為常用的介面之一,常用於電機驅動

用ssh2連線linux實現putty功能範例程式碼

開發十年,就只剩下這套架構體系了! >>>   

嵌入式Linux上通過boa服務器實現cgi/html的web上網【轉】

但是 資料 mail 並發 work 資源 原因 基礎 err 轉自:http://blog.csdn.net/tianmohust/article/details/6595996 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 嵌入式Linux上通

如何在 vmware esxi 中開放 VNC功能及端口實現遠程管理 完整篇

如何在 vmware esxi 中開放 vnc功能及端口實現遠程管理 完整篇 VMWare esxi中開放 VNC功能及端口實現遠程管理 完整篇在多個論壇上看了相關文章,總的寫得不完整。現將各方資源整編寫完整版。詳文如下! 步驟1. 修改ESXi主機的firewall配置在ESXi主機的/etc/vmware

如何在 vmware esxi 中開放 VNC功能及端口實現遠程管理 完整篇

按鈕 inbound strong tle col tty view dir firewall VMWare esxi中開放 VNC功能及端口實現遠程管理 完整篇 在多個論壇上看了相關文章,總的寫得不完整。現將各方資源整編寫完整版。詳文如下! 步驟1. 修改ESXi主機

[嵌入式Linux專案實戰開發]基於QT4.7.4的音樂播放器實現與設計【2018年給力專案】

[嵌入式Linux專案實戰開發]基於QT4.7.4的音樂播放器實現與設計【2018年給力專案】是【創科之龍】團隊aiku嵌入式視訊教程系列製作的現有的音樂播放器。 主要功能實現: 1.新建工程,基類選擇Qwidget。雙擊開啟介面檔案,在介面檔案中建立label顯示時間、若干個tool

嵌入式Linux】ARM開發板通過NFS掛載Linux主機實現檔案共享

一般在Linux主機上arm-linux-gcc編譯程式,然後將該生成的可執行檔案傳送給ARM開發板,ARM開發板再執行該檔案。 (主機Linux系統)--->(ARM開發板Linux系統)  傳送檔案的過程可以採用NFS,FTP等多種方法 採用NFS實現遠端掛載,ARM

ICMP->linux c PING功能實現

報文格式: \ 程式碼 #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/socket.h> #include <

嵌入式Linux利用ppp實現4G模組聯網

之前做專案時需要用到SIM7100模組,便快速瞭解下ppp撥號,實現了功能,但是功能雖然實現了,卻依然有許多疑問,這段時間有點時間,打算更加詳細的研究下。 編譯ppp2.4.5 下載:官方地址 編譯:#1.解壓ppp程式包 tar -xzvf ppp-2.4.

實現"通過串列埠升級嵌入式目標板軟體"功能的一些心得體會

  最近由於專案需要,在AT91FR40162平臺上實現了通過串列埠傳輸目標板二進位制可執行檔案並更新固化到儲存執行程式碼的片內ROM中。在這之前,我進入公司以來,這個平臺上,通過模擬器把程式下載到目標板是更新目標板固化程式的唯一途徑。隨著對嵌入式系統的逐步瞭解,我認識到存在不通過模擬器升級程式的方法:我們日

linux 實現主動arp resolve 功能

實現目的: 提供一個介面,根據目的ip地址,獲取相應的mac地址。 實現方法: 首先,根據目的ip,通過路由表找到出口裝置;然後,通過socket傳送icmp echo request報文,因為目的ip對應的mac地址還沒有,所以linux&nbs

嵌入式Linux作業系統移植IMX6開發板之實現USB 自動掛載

本篇文章講述如何實現USB自動掛載,U盤即插即用,不用手動掛載的方法,以及給出U盤自動掛載的原理。 目前做的IMX6開發板,移植Linux系統,原始碼(linux核心為3.0.35)由廠家提供(後面會提供核心,uboot,檔案系統原始碼)。主要功能是實現機器人

Linux 安裝 VNC Server 實現圖形化訪問配置說明

CentOS 6.5 系統環境下,可以參閱如下步驟進行 VNC Server 的安裝配置。 安裝 使用如下指令安裝 VNC Server: yum install -y tigervnc-server 配置 配置為開機自啟動 使用如下指令將服務配置為開機自動

嵌入式Linux Qt多個按鍵先後檢測的實現方法

QT的按鍵是基於事件進行觸發的。     在產品開發中,假設我們要在APP的某個頁面中,同時按下多個按鍵進入工廠測試模式。又假設我們要寫一個魂鬥羅或者超級瑪麗的遊戲,我們需要按方向鍵讓小人走,按某個鍵跳或者射擊,這都需要先後檢測按鍵是否按下。     我的實現方法如下:

基於嵌入式Linux的LCD背光調節及驅動的實現

0 引言   在手持式裝置中,液晶顯示屏的使用越來越廣泛。由於LCD自身是不能發光的,它需要一個強勁的光源來給它提供背光,以便清晰地顯示資訊。這樣的光源是非常耗電的,通常液晶顯示屏的功耗常常佔到系統總功耗的60%以上。以群創的7寸屏為例,通常背光燈的功耗為2.

使用u-boot的tftp下載功能燒寫程式到Nand Flash ——韋東山嵌入式Linux學習筆記09

本文實驗環境: 1. windows 7(64bit) 2. JZ2440(V2) (2)啟動軟體tftpd32,選擇要下載的程式所在的目錄 (3)假設下載檔案leds.bin,在u-boot的命令列,輸入 tftp 30000000 le