码迷,mamicode.com
首页 > 其他好文 > 详细

生成ARM汇编

时间:2016-09-04 10:10:52      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:


使用ndk即可生成arm汇编


1.首先写好hello.c
技术分享

2.编写makefile
  1. #ndk根目录
  2. NDK_ROOT=E:\Android\android-ndk-r10b
  3. #编译器根目录
  4. TOOLCHAINS_ROOT=$(NDK_ROOT)/toolchains/arm-linux-androideabi-4.6/prebuilt/windows-x86_64
  5. #编译器目录
  6. TOOLCHAINS_PREFIX=$(TOOLCHAINS_ROOT)/bin/arm-linux-androideabi
  7. #头文件搜索路径
  8. TOOLCHAINS_INCLUDE=$(TOOLCHAINS_ROOT)/lib/gcc/arm-linux-androideabi/4.6/include-fixed
  9. #SDK根目录
  10. PLATFROM_ROOT=$(NDK_ROOT)/platforms/android-14/arch-arm
  11. #sdk头文件搜索路径
  12. PLATFROM_INCLUDE=$(PLATFROM_ROOT)/usr/include
  13. #sdk库文件搜索路径
  14. PLATFROM_LIB=$(PLATFROM_ROOT)/usr/lib
  15. #文件名称
  16. MODALE_NAME=hello
  17. #删除
  18. RM=del
  19. #编译选项
  20. FLAGS=-I$(TOOLCHAINS_INCLUDE) \
  21. -I$(PLATFROM_INCLUDE) \
  22. -L$(PLATFROM_LIB) \
  23. -nostdlib \
  24. -lgcc \
  25. -Bdynamic \
  26. -lc
  27. #所有obj文件
  28. OBJS=$(MODALE_NAME).o \
  29. $(PLATFROM_LIB)/crtbegin_dynamic.o \
  30. $(PLATFROM_LIB)/crtend_android.o
  31. #编译器链接
  32. all:
  33. $(TOOLCHAINS_PREFIX)-gcc $(FLAGS) -c $(MODALE_NAME).s -o $(MODALE_NAME).o
  34. $(TOOLCHAINS_PREFIX)-gcc $(FLAGS) $(OBJS) -o $(MODALE_NAME)
  35. old:
  36. $(TOOLCHAINS_PREFIX)-gcc $(FLAGS) -E $(MODALE_NAME).c -o $(MODALE_NAME).i
  37. $(TOOLCHAINS_PREFIX)-gcc $(FLAGS) -S $(MODALE_NAME).i -marm -o $(MODALE_NAME).s
  38. $(TOOLCHAINS_PREFIX)-gcc $(FLAGS) -c $(MODALE_NAME).s -o $(MODALE_NAME).o
  39. $(TOOLCHAINS_PREFIX)-gcc $(FLAGS) $(OBJS) -o $(MODALE_NAME)
  40. #删除所有.o文件
  41. clean:
  42. $(RM) *.o
  43. #安装程序到手机
  44. install:
  45. adb push $(MODALE_NAME) /data/local/tmp
  46. adb shell chmod 755 /data/local/tmp/$(MODALE_NAME)
  47. adb shell /data/local/tmp/$(MODALE_NAME)
  48. #运行程序
  49. run:
  50. adb shell /data/local/tmp/$(MODALE_NAME)

make old即可通过c来生成汇编文件
技术分享

make即可编译arm汇编
技术分享

Using as--the GNU Assembler 一份GNU arm汇编的文档





生成ARM汇编

标签:

原文地址:http://www.cnblogs.com/bingghost/p/5838688.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!