嵌入式linux实现vnc功能

31 篇文章 0 订阅

现在有一个想法准备在嵌入式设备和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连接设备,这时就能看到设备显示的内容了,而且可以通过鼠标操作设备了。

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值