编译链接
文章平均质量分 80
chinaclock
这个作者很懒,什么都没留下…
展开
-
Bug:__uClibc_main.c:(.text+0x20): undefined reference to `__fini_array_start'问题的解决
今天碰到了一个问题:__uClibc_main.c:(.text+0x20): undefined reference to `__fini_array_start' __uClibc_main.c:(.text+0x24): undefined reference to `__fini_array_end' /opt/toolchains/uclibc-crosstools-gcc-原创 2015-09-28 17:17:49 · 7536 阅读 · 0 评论 -
System V Application Binary Interface (1)
摘自:http://www.sco.com/developers/gabi/1998-04-29/ch4.intro.html IntroductionThis chapter describes the object file format, called ELF (Executable and Linking Format). There are three main types转载 2015-09-28 17:27:16 · 488 阅读 · 0 评论 -
Linker and Libraries Guide(1)
摘自:http://docs.oracle.com/cd/E19683-01/817-1974/6mhlu8fdh/index.html Before transferring control to an application, the runtime linker processes any initialization sections found in the applicatio转载 2015-09-28 17:29:12 · 433 阅读 · 0 评论 -
一个工程实例来学习 Makefile
摘自:http://www.cnblogs.com/OpenShiFt/p/4313351.htmlMakefile 文件的编写学习前的准备需要准备的工程目录结构如下:.├── add│ ├── add_float.c│ ├── add.h│ └── add_int.c├── main.c└── sub ├── sub_float.c转载 2015-10-22 00:27:42 · 429 阅读 · 0 评论 -
xcode下出现Undefined symbols for architecture arm64或者armv7: “_OBJC_CLASS_$_XXX
碰到一个类似上述的问题,感觉还是stl的C++库加载造成的问题。即使通过gcc -v查看了编译过程,然后用gcc -E 导出了预编译后的文件,查看到的仍然只是std::string,为什么会出现接口中有的是fucn(std::string)有的是func(std::__1::basic_string...)仍然没有搞清楚,网上有一篇似乎可以处理这个问题的文章,如下:ht原创 2015-12-16 09:19:48 · 22327 阅读 · 0 评论 -
函数调用过程栈帧变化详解
函数调用过程栈帧变化详解函数调用另一个词语表示叫作 过程。一个过程调用包括将数据和控制从代码的一部分传递到另一部分。另外,它还必须在进入时为过程的局部变量分配空间,并在推出时释放这些空间。而数据传递,局部变量的分配和释放通过操纵程序栈来实现。在了解本文章之前,您需要先对程序的进程空间有所了解,即对进程如何使用内存?如果你知道这些,下面的内容将是很easy的事情了。为了您的回顾还转载 2015-12-17 15:38:42 · 3092 阅读 · 0 评论 -
likely,unlikely宏与GCC内建函数__builtin_expect()
摘自:http://www.cnblogs.com/li-hao/archive/2012/02/06/2340094.htmllikely,unlikely宏与GCC内建函数__builtin_expect()在GCC手册中对__builtin_expect()的描述是这样的:long __builtin_expect (long exp, long c)转载 2015-12-24 09:39:14 · 501 阅读 · 0 评论 -
内联函数的effective C++解释
Effective C++: 条款33: 明智地使用内联 内联函数——多妙的主意啊!它们看起来象函数,运作起来象函数,比宏(macro)要好得多(参见条款1),使用时还不需要承担函数调用的开销。你还能对它们要求更多吗?然而,你从它们得到的确实比你想象的要多,因为避免函数调用的开销仅仅是问题的一个方面。为了处理那些没有函数调用的代码,编译器优化程序本身进行了专门的设计。所以当内联一个函数时,编译器转载 2015-12-24 13:59:17 · 678 阅读 · 0 评论