zoukankan      html  css  js  c++  java
  • 字符串编码转换

    http://www.rainsts.net/article.asp?id=899

    安装 C Library Manpages

    http://www.rainsts.net/article.asp?id=898

    libgc 垃圾回收

    http://www.rainsts.net/article.asp?id=900

    GLib

    [ 2009-12-26 18:27:00 | 作者: yuhen ]
    字号:  |  | 
    用 Linux/C 编程,GLib 是个不错的选择。如果什么都从 glibc (GNU C Library) 开始,那一天下来也出不了什么活。

    http://www.rainsts.net/article.asp?id=903

    http://www.rainsts.net/article.asp?id=907

    GNU Binutils

    [ 2010-01-03 17:13:20 | 作者: yuhen ]
    字号:  |  | 
    1. addr2line

    将程序地址(VA)转换为源代码文件名和行号。
    $ addr2line -fe test 8028783

    2. ar

    用来创建、修改、提取静态库文件。

    常用参数:
    r: 替换库文件中的老旧目标文件。
    c: 删除已有文件,创建新静态库。
    s: 创建或更新静态库索引 (相当于运行 ranlib 命令) 

    生成静态库。
    $ gcc -c func.c
    $ ar rs libfunc.a func.o

    查看静态库组成。
    $ ar t libfunc.a

    展开静态库。
    $ ar x libfunc.a

    3. as

    GNU AT&T 格式汇编器,不过我更愿意用 nasm。

    4. gcc

    GNU 编译器。

    常用参数:
    -c: 生成目标文件,但不做链接。
    -Wall: 显示所以可能的警告信息。
    -g: 生成必要的调试信息。
    -I{dir}: 添加头文件搜索路径。(字母 i 的大写)
    -L{dir}: 添加 -l 库搜索路径。(字母 l 的大写)
    -l{name}: 链接库文件。比如 -lm 表示链接 libm.so 。
    -lpthread: 链接线程库。
    -O{n}: 优化代码,n 为 0, 1, 2, 3 几个等级。
    -fPIC: 生成位置无关代码,通常是共享库。
    -M -MM: 查看依赖文件。

    编译程序。
    $ gcc -g -Wall -std=c99 -I./include -I/usr/include/gc -o test -lgc main.o func.o

    生成动态库。
    $ gcc -c func.c
    $ gcc -fPIC -shared -o libfunc.so func.o

    5. ld

    GNU 链接器。还有链接多目标文件的 ln。

    6. ldd

    通过模拟运行,查看可执行文件动态库加载。通常用于查看动态库加载失败信息。
    $ ldd test

    7. nm

    查看目标文件符号表中定义的符号。
    $ nm func.o

    8. objcopy

    用于把一种目标文件中的内容复制到另一种类型的目标文件中。

    9. objdump

    显示目标文件信息,通常用于反汇编。
    $ objdump -dS -M intel test

    10. ranlib

    为静态库(.a)创建索引,相当于 ar 的 s 参数。
    $ ar r libfunc.a func.o
    $ ranlib libfunc.a

    11. readelf

    用于显示 ELF 文件详细信息。

    显示 section table 信息。
    $ readelf -S test

    显示 section 二进制内容。
    $ readelf -x .text test

    显示 section 字符串内容。
    $ readelf -p .strtab test

    12. size

    列出目标文件段和总体大小。
    $ size test

    13. strings

    显示目标文件中的所有可打印字符串。
    $ strings test

    14. strip

    删除目标文件中的全部或特定符号。
    $ strip test

  • 相关阅读:
    Java学习:Scanner类
    Java学习:Object类
    js 方法
    ToDictionary
    goto
    删除多列同时重复数据
    linq中使用case when
    sql 学习笔记
    VS2012发布网站详细步骤
    由于权限不足而无法读取配置文件出现的HTTP 500.19解决办法
  • 原文地址:https://www.cnblogs.com/lexus/p/2245552.html
Copyright © 2011-2022 走看看