1,在如下地址checkout源代码,我checkout的版本为0.9.7
http://code.google.com/p/android-vnc-server/source/checkout

2,在源代码目录下,新建jni目录,将checkout的源代码都剪切至该目录

3,在jni目录,新建Application.mk文件,添加APP_ABI := aremabi armeabi-v7a,保存文件退出

4,修改LibVNCServer-0.9.7/libvncserver/main.c文件中的第245行,将sprintf(stderr,buf); 修改为sprintf(stderr,"%s",buf); 不然编译的时候会出错。

5,使用vi打开Android.mk,发现它需要使用第三方的库文件libz.so和libjpeg.a,libz.so在ndk中已经支持,我们需要先编译libjpeg,才能继续往下执行

6,去这里查看如何编译arm版的libjpeg(http://blog.csdn.net/gengshenghong/article/details/7016617)

7,在jni目录项新建一个include文件夹,将libjpeg的头文件拷贝至该目录(jconfig.h, jerror.h, jmorecfg.h, jpeglib.h)

8,将编译的libjpeg.a静态库拷贝至jni目录

9,修改Android.mk文件的LOCAL_C_INCLUDE := $(LOCAL_PATH) $(LOCAL_PATH)/LibVNCServer-0.9.7/libvncserver $(LOCAL_PATH)/LibVNCServer-0.9.7 include 
注释掉 LOCAL_SHARED_LIBRARIES := libz 和 LOCAL_STATIC_LIBRARIES := libjpeg
添加LOCAL_LDLIBS := libjpeg.a -lz
保存修改。

10,使用vi打开include/jmorecfg.h文件,修改第263行代码,将其中的typedef enum { FALSE = 0, TRUE = 1 } boolean; 修改为:
typedef enum { false = 0, true = 1 } boolean; 不修改的话,会提示error: expected identifier before numeric constant错误。

11,至此,使用ndk-build就能编译androidvncserver了。

参考文章:http://xuxd32.blog.163.com/blog/static/48121933201172411850206/
http://stackoverflow.com/questions/15172387/error-while-installing-tiff-3-8-2http://blog.csdn.net/gengshenghong/article/details/7016617http://bbs.gfan.com/android-116468-1-1.html

编译Android VNC Server的更多相关文章

  1. 编译Android VNC Server【转】

    本文转载自:http://www.cnblogs.com/fengfeng/p/3289292.html 1,在如下地址checkout源代码,我checkout的版本为0.9.7http://cod ...

  2. 电脑控制手机的另一选择——android vnc server

    近来发现的Android上的原生VNC Server,就是说只要手机上安装并运行这个软件,即可实现电脑上查看并控制手机了. 首先是手机端. 1)下载androidvncserver: http://c ...

  3. ANDROID 开机启动VNC SERVER

    ANDROID 开机启动VNC SERVER 背景信息: 最近在做一个项目,在项目需求中有这么一项“要把VNC SERVER 添加到android里并让其开机自启动”.其实做这个项目也挺缚手缚脚的,因 ...

  4. 在Mac mini上编译Android源码

    参考文章 1.Android 6.0 源代码编译实践 2.编译Android源码致命错误解决方案 实践过程 1.Mac下安装Ubuntu双系统 (1)Ubuntu版本:Ubuntu 15.10 注:实 ...

  5. 深入浅出 - Android系统移植与平台开发(五)- 编译Android源码(转)

    2.3编译Android源码 Android源码体积非常庞大,由Dalvik虚拟机.Linux内核.编译系统.框架代码.Android定制C库.测试套件.系统应用程序等部分组成,在编译Android源 ...

  6. Droid VNC Server

    这个app可以在Android开启VNC Server,让其他的VNC Client远程连接手机,不过前提是要ROOT.哎,可惜了. 当然还有另一款替代品Total Control http://ww ...

  7. Android问题-DelphiXE8安装后编译Android提示SDK无法更新问题(XE10也可以解决)

    资料来原:http://www.chenruixuan.com/archives/479.html (DelphiXE8 更新SDK)http://www.dfwlt.com/forum.php?mo ...

  8. Ubuntu12.04编译Android4.0.1源码全过程-----附wubi安装ubuntu编译android源码硬盘空间不够的问题解决

    昨晚在编译源码,make一段时间之后报错如下: # A fatal error has been detected by the Java Runtime Environment: # # SIGSE ...

  9. Ubentu编译Android源码(AOSP)

    前言: 一直想要编译一下Android 源码,之前去google 看,下载要下载repo. 当时很懵逼,repo 是个什么?(repo 是一个python 脚本,因为Android 源码git 仓库太 ...

随机推荐

  1. crontab定时执行

    一.crond简介 crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动cro ...

  2. Java代码输出到txt文件(申请专利贴源码的必备利器)

    最近公司在申请专利,编写不少文档,项目的代码量实在是过于庞大.如果一个一个的复制粘贴虽然能够完成,但是对于程序员而言实在没有这个必要.shell或者python就能解决这个问题.由于我个人对于shel ...

  3. 鴻雁 Anser cygnoides

    鴻雁 Anser cygnoides,其中 Anser 是屬名.雁屬的模式種是 Anser anser 灰雁,在中國也有分佈,但不如鴻雁和中國人關係密切.中國人所說的「大雁」一般指鴻雁,偶爾指灰雁或是 ...

  4. 微信授权获取用户openid前端实现

    近来,倒霉的后台跟我说让我拿个openid做微信支付使用,寻思很简单,开始干活.   首先引导用户打开如下链接,只需要将appid修改为自己的就可以,redirect_url写你的重定向url   h ...

  5. 在ubuntu中添加widows启动项的简单方法

    打开终端执行: sudo vim /boot/grub/grub.cfg 或者 sudo gedit /boot/grub/grub.cfg 打开文件grub.cfg. 在文件中添加:添加的时候注意和 ...

  6. C#引用比较和内容比较

    1.静态方法Object.ReferenceEqual,实际实现为引用比较.   2.静态方法Object.Equal, 实际实现为引用比较.(实际调用了实例方法Equal)   3.Object实例 ...

  7. CPP strcat函数使用

    strcat函数原型 char * strcat ( char * destination, const char * source ); strcat常见写法 // main.cpp // 字符数组 ...

  8. Scala的静态方法和实例方法

    Scala的对象学习 Scala没有静态方法或静态字段,可以使用object这个语法达到相同的目的,对象定义了某个类的单个实例 object Accounts { private var lastNu ...

  9. 20155307 2016-2017-2 《Java程序设计》第9周学习总结

    20155307 2016-2017-2 <Java程序设计>第9周学习总结 教材学习内容总结 JDBC(Java DataBase Connectivity)即java数据库连接,是一种 ...

  10. 20145207《Java程序设计》实验四( Android程序设计)实验报告

    <Java 程序设计>实验四( Android程序设计)实验报告 目录 改变 Android开发基础实验要求 实验成果 课后思考 改变 修改了之前仅仅是贴了图片,连代码都没粘的状态.增加了 ...