android平台工程创建
1、androidSDK+NDK安装
1)、安装javajdk(如果已经安装了,可以不用此步骤)
进入:或者直接点击下载。
选择JDKDOWNLOAD(android开发无需JRE)
32位windows7选择Windowsx86,64位windows7选择Windowsx64。
安装后,配置环境变量:
新建环境变量:JAVA_HOME值为:D:ProgramFilesJavajdk1.7.0
新建环境变量:CLASSPATH值为:.%JAVA_HOME%lib(注意:点号表示当前目录,不能省略)
在系统变量Path的值的前面加入以下内容:%JAVA_HOME%_x0008_in(注意:这里的分号不能省略)到这里,JDK安装完毕。
单击“开始”—>“运行”—>输入:cmd命令,在CMD窗口中输入:java-version
出现如下界面,就表示安装成功:
2)、下载eclipse
进入以下页面:
或直接复制此地址下载:或点击直接下载
下载解压到E:android-ndk-r8
AndroidNDK包含build、docs、samples、sources、GNUmakefile、ndk-build、ndk-gdb及readme等内容。
2、Cygwin安装
由于NDK开发大都涉及到C/C++在GCC环境下编译、运行,所以在Windows环境下,需要模拟Linux模拟编译环境,下载地址:
下载后是个setup.exe文件,使用过程如下:
第一步:运行setup程序,直接点击Next进入下一步。
第二步:选择安装方式,第一次可以采用DirectConnection在线下载安装,如有现成的离线包,可以选择离线安装(InstallfromLocalDirectory)。
第三步:选择安装目录,比如C:Cygwin,注意此目录是指Cygwin最终的安装目录,不是下载文件暂存目录。
第四步:设置本地包暂存路径
暂存目录默认是放到setup.exe的同级目录下,下载后名字类似ftp%3a%2f%2fcygwin.mirrors.pair.com%2f这样格式。
第五步:设置网络连接方式
第六步:选择下载站点地址
第七步:等待加载安装项载入,选择安装项
编译NDK,在默认设置下,只需选择Devel(点击列表中Devel,将后面的Default改为Install,图中箭头所示),其它均为默认状态。(其实NDK需要的不多,主要autoconf2.1、automake1.10、binutils、gcc-core、gcc-,g++、gcc4-core、gcc4-g++、gdb、pcre、pcre-devel、gawk、make)
第八步:等待下载完成
下载完成时间决定于选择的安装包数量及网络连接速度,比如按照本文默认的选择方式,可能需要2-3个小时(视网速而定),下载后压缩包约1.2G,下载完成后会自动安装到上文设置的安装目录。
提醒:第一次下载完成后,把下载的包目录做个备份,下次安装同样的环境可以直接使用离线安装方式(第二步中选择本地安装)。
运行cygwin,在d出的命令行窗口输入:cygcheck-ccygwin命令,会打印出当前cygwin的版本和运行状态,如果status是ok的话,则cygwin运行正常。
然后依次输入gcc_v,g++--version,make_version,gdb_version进行测试,(注意空格和-)如果都打印出版本信息和一些描述信息,这说明cygwin安装成功了。
3、安装ADT和配置Cygwin
1安装android开发插件
(1)打开Eclipse,在菜单栏上选择help->InstallNewSoftWare出现如下界面:
(2)点击Add按钮,出现如下界面
输入网址:/android/eclipse/(如果出错,请将https改成http)
名称:Android(这里可以自定义)
(3)点击OK,将出现如下界面
全部选中。
(4)点击Next按钮,出现如下界面:
(5)点击Next按钮,出现如下界面:
(6)选择Iacceptthetermsofthelicenseagreements点击Next,进入安装插件界面
(7)安装完成后,点击Yes按钮,重启Eclipse。
选择androidSDK解压后的目录(ADT18默认会扫描电脑,找到并配置好SDK位置)。
配置cygwin
在命令行中进入cygwin目录,并执行cygwin.bat,如果不是用Administrator账号登录的系统,那么会在cygwinhome文件夹中生成一个以登录名命名的新的文件夹。
修改新生成文件夹中的“.bash_profile”文件,用UE或editplus等文本编辑器打开,在最后增加:(e/android-ndk-r8-windows/android-ndk-r8是安装ndk的路径)
NDK_ROOT=/cygdrive/e/android-ndk-r8-windows/android-ndk-r8
exportNDK_ROOT
然后保存关闭。
至此便基本搭建完毕cocos2d-x的windows7android环境
安装上网搜了搜,这方面的资料真是不少,必备的东东是 GNUstep Developer Tools,可以参考这个链接 Windows Installer,安装很简单,按照顺序 GNUstep System、GNUstep Core、GNUstep Developer 安装即可,过程就不表述了。
安装完成后,我们可以用“程序 ->GNUstep ->Shell” 来启动一个模拟 UNIX 控制台,在这下面可以完成开发、编译、执行等工作。
开发
首先我们来写一个 HelloWorld,简单起见,我们在 C 盘根目录下创建 HelloWorld.m 文件,并保存,代码如下:
#import <Foundation/Foundation.h>
int main (int argc, const char *argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]
NSLog(@"Hello World!")
[pool drain]
return 0
}
注:关于用什么工具来编写代码,由于我也是初次使用,并没有特别好的工具推荐,我自己使的是 UltraEdit。
编译
由于 HelloWorld.m 是在 C 盘根目录下,所以首先我们将路径切换到 C 盘根目录:
$cd C:\
注:cd 这种方式同样适用于切换到任意驱动器或任意子目录下,路径的组织结构与 windows 没有区别,不区分大小写。
编译成目标码
gcc -fconstant-string-class=NSConstantString -c HelloWorld.m -I /GNUstep/System/Library/Headers
执行上面的命令后,控制台不会有任何输出,这是正确的,否则你需要去检查原因了。同时在 C 盘根目录下会生成一个 HelloWorld.o 的目标文件,在下一步,我们将用它来编译成可执行文件。
编译成可执行文件
gcc -o HelloWorld HelloWorld.o -L /GNUstep/System/Library/Libraries/ -lobjc -lgnustep-base
C 盘根目录下会生成 HelloWorld.exe
执行
我们可以直接在 Windows 控制台下执行 HelloWorld.exe,也可以在 Shell 窗口中执行:
在 Shell 窗口输入:
./HelloWorld.exe
输出如下:
2011-09-23 13:22:42.828 helloworld[5484] Hello World!
关于工作路径
我们做开发时,项目不可能放在 C 盘根目录下,一般都是有组织的,那么如何编译这类的文件呢?其实方法很简单,使用 cd 命令,进入到 .m 所在的目录下,然后执行编译。
Make
上面的编译过程很繁琐,稍有不慎就可能输入错误,造成编译失败,其实还有一个更简单的方法,就是建立一个 make 文件,对于 GNUstep 来说,make 文件名必须是“GNUmakefile”,内容如下:
include $(GNUSTEP_MAKEFILES)/common.make
TOOL_NAME=HelloWorld<strong>
</strong>HelloWorld_OBJC_FILES=HelloWorld.m
include $(GNUSTEP_MAKEFILES)/tool.make
HelloWorld 关键字部分为可替换为实际内容。GNUmakefile 文件要求与 .m 文件在同一目录下。
make 的执行很简单,进入 “GNUmakefile” 所在的目录,在 Shell 窗口中执行 “make” 即可。这会在 “GNUmakefile” 所在目录下生成一个 obj 目录,obj 下包含了可执行文件和目标文件等。
后记
简简单单,基本上没什么波折,就是工作路径的问题烦了我一下,因为有人说在 GNUstep 安装目录下会有一个 “C:\GNUstep\home\username” 目录,可我安装后并没有类似的东东,也许是版本不一致或是别的什么原因吧,这已经不是问题了。
注:上面的问题是这样的,后来我发现这个 HOME 还是有的,启动 shell 后,输入 pwd 命令,得到当前工作路径为 /home/username,实际位置位于 “D:\GNUstep\msys\1.0\home\username”。
可以用你的安装包不对 或者配置的不对.
最简单的就是重新安装.
你这个错误的原因是, 在dev C++的路径中,没有找到makefile. 也就是编译器缺东西.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)