怕自已忘了,写在这里,不定期更新!
1. 查看库里的方法:
- Linux下动态库查看方法:nm -D libavformat.so
- Linux下静态库查看方法:ar -t libavformat.a
2. Makefile中列出一个目录中的所有文件并处理:
DATAS = \
data/*.* \ RDATAS = $(shell echo $(DATAS) | sed -e 's,\.~,\.~,g')
push0:
( for target in $(RDATAS); do ( \
echo push $$target ...; \
$(ADB) push $$target /dev/sample/$$target; \
) || exit 1 ; done )
DATAS是存放的要遍历的目录列表,RDATAS则是所有文件的列表,再用一个for循环要处理所有的文件,即target,处理文件名为$$target,实际应该时将 "echo push ..."及"$(ADB) push ..."换成自已的处理过程命令即可。
3. 减小链接文件的大小
- 在编译 C/C++ 源文件时加 -O2(是“OPQ”的“O”不是数字“0123”的“0”!)编译选项,可以优化代码并增加执行速度;
- 在链接时加 -s 选项,去除不必要的调试信息,以减小目标文件的大小。
4. 查看gcc及include/lib的搜索目录
- include: cpp -v (如果是cross toolchain请加前缀,如:arm-eabi-cpp -v)
- lib: ld --verbose 或 ld --verbose | grep SEARCH_DIR (如果是cross toolchain请加前缀,如:arm-eabi-ld --verbose 或 arm-eabi-ld --verbose | grep SEARCH_DIR )