windows下的Cygwin安装及NDK开发

来源:互联网 发布:迪士尼游玩攻略 知乎 编辑:程序博客网 时间:2024/05/21 08:46

          由于NDK开发大都涉及到C/C++在GCC环境下编译、运行,所以在Windows环境下,需要用Cygwin模拟Linux编译环境。然后鉴于很多人是在windows的开发下。然后对linux下的指令也不是很熟悉,作为一个开发安卓app的还是有必要去了解一下,至少很多东西都是搭载在linux的环境下,感觉开发在linux下还是相当不错的。

下载:

Cygwin的下载地址:http://www.cygwin.com/

然后进去你就能看到这个:


自己根据你windows系统来下载相应的安装程序。

安装:

第一步:运行setup.exe程序,直接点击Next进入下一步。

第二步:选择安装方式。第一次可以采用Direct Connection在线下载安装,如有现成的离线包,可以选择离线安装(Install from Local Directory)。

在线安装的地址我们选择http://mirrors.kernel.org

第三步:选择安装目录。比如E:\Cygwin,注意此目录是指Cygwin最终的安装目录,不是下载文件暂存目录。

第四步:设置本地包暂存路径。暂存目录默认是放到setup.exe的同级目录下,建议放到指定的文件夹,如E:\Cygwin64。安装完成后把这个文件夹打包备份,以后再配置时不用重新下载。

第五步:也是最重要的一步,在显示的列表中选择要安装的包。NDK必需的包有:

  autoconf2.1、automake1.10、binutils、gcc-core、gcc- g++、gcc4-core、gcc4-g++、gdb、pcre、pcre-devel、gawk、make共12个包,

  我这里是直接选择devel 、shells、admin、system这几个目录,将default变为install,然后,点击下一步,最后直到安装完成。(可能你需要安装不同的东西,随你自己的意愿)

媽蛋,也是醉了,居然安装到90%卡死了,再次安装,前后花了5小时,真心的伤不起。

大哭安装完毕还是要测试是否成功,

第一次运行时,它会自动创建用户信息,用户信息存放在“.\Cygwin\home”中。

在运行“Cygwin.bat”打开的命令行窗口输入:“cygcheck -c cygwin”命令,会打印出当前Cygwin的版本和运行状态,如果status是ok的话,则cygwin运行正常。

终于是不负苦心人,再分别输入:“make –v”和,“gcc –v”,“g++ -v”,“gdb -v”命令如果检测成功,会有make和gcc相关版本信息打印出来。


设置NDK路径:

上一篇有讲,自己去看。打开cygwin,输入cd $NDK_ROOT,如果输出上面配置的信息,则表明环境变量设置成功了。

接下来我们用Cygwin来进行NDK开发测试:

(1)现在我们用安装好的NDK来编译一个简单的程序吧,我们选择ndk自带的例子hello-jni,我的位于E:\eclipse\eclipse-jee-juno-SR2-win32-x86_64\eclipse\android-ndk-r10e\samples\hello-jni(根据你具体的安装位置而定),

(2)运行cygwin,输入命令cd $NDK_ROOT/samples/hello-jni,进入到E:\eclipse\eclipse-jee-juno-SR2-win32-x86_64\eclipse\android-ndk-r10e\samples\hello-jni目录。

(3)输入$NDK_ROOT/ndk-build,执行成功后,它会自动生成一个libs目录,把编译生成的.so文件放在里面。($NDK是调用我们之前配置好的环境变量,ndk-build是调用ndk的编译程序。


 (4)此时去hello-jni的libs目录下看有没有生成的.so文件,如果有,你的ndk就运行正常啦!

~/.bashrc  配置

# -*- coding: chinese-gbk -*LC_CTYPE=zh_CN.gbkCHARSET=GBK #glib2需要使用找个环境变量确定文件名的编码export LC_CTYPE CHARSETexport LESSCHARSET=latin1export INPUTRC=$HOME/.inputrcexport TERM=rxvt# aliasalias rm='rm -i'alias cp='cp -i'alias mv='mv -i'alias df='df -h'alias du='du -h'# Misc :)alias less='less -r --raw-control-chars'                          # raw control charactersalias whence='type -a'                        # where, of a sortalias grep='grep --color'                     # show differences in colour# Some shortcuts for different directory listingsalias ls='ls -hF --color=tty --show-control-chars'                 # classify files in colouralias dir='ls --color=auto --format=vertical --show-control-chars'alias vdir='ls --color=auto --format=long --show-control-chars'alias ll='ls -la --show-control-chars'                              # long listalias la='ls -A --show-control-chars'                              # all but . and ..alias l='ls -lF --show-control-chars'                              ## 添加清屏处理alias clear='clearn'alias clr='clearn'# 添加whereis的别名alias whereis='which'alias autoexec=autoexec.bat

~/.inputrc

# -*- coding: chinese-gbk -*-# base-files version 3.6-1# Insert Key"e[2~":paste-from-clipboard# equivalent to "C-?": delete-char"e[3~": delete-char# VT"e[1~": beginning-of-line"e[4~": end-of-line# kvt"e[H": beginning-of-line"e[F": end-of-line# rxvt and konsole (i.e. the KDE-app...)"e[7~": beginning-of-line"e[8~": end-of-line# VT220"eOH": beginning-of-line"eOF": end-of-line# Allow 8-bit input/outputset meta-flag on# 关闭bash命令行8字节字符转义符的转换set convert-meta off# 使bash命令行支持8字节字符输入set input-meta on# 使bash命令行支持8字节字符输出set output-meta on
最后可能就是有可能出现中文乱码问题:

那进入终端后,右键-》option->Text->gbk—》apply就好了

效果看这样

完全不会乱码了吧。



2 0
原创粉丝点击