
编译
花事不了
这个作者很懒,什么都没留下…
展开
-
yocto工程软件包编译依赖关系
最近在搞一个yocto上的编译问题,问题是这样的,我们有两个模块A和B,编译的时候先编译的A模块再编译B模块,B模块的编译依赖A模块的A.so文件,理论上讲,先编译的A模块,那么A模块编译完后生成了A.so,然后B模块去连接A模块的A.so是没有问题的,但是在编译的时候出现了A.so找不到的问题,起始以为自己路径写错了,但看了下,指定的路径里面A.so是存在的,但就是在连接的时候找不到A.so,从原创 2017-05-20 10:10:11 · 3333 阅读 · 0 评论 -
linux交叉编译工程中,单独编译某个文件的方法
有时候我们只修改了一个文件,想看一下有没有编译问题,但如果全工程的编译的话又很慢,所以这个时候可以单独编译。例如下面时我编译工程中的一个节选:aarch64-poky-linux-g++ -mcpu=cortex-a72.cortex-a53+crypto -mtune=cortex-a72.cortex-a53 -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-n原创 2017-11-15 15:49:38 · 2868 阅读 · 0 评论 -
在makefile中递归引用变量
makefile中的变量类似于c代码中的变量,用export声明的变量可以在子目录中的makefile中生效,不用export声明的变量,只能在当前文件中生效。例如: 在上级目录中的makefile中定义 TEMPLATECONF = AAA,在子目录中引用时,TEMPLATECONF 的值为空 在上级目录中的makefile中定义 export TEMPLAT原创 2017-11-14 14:55:43 · 1019 阅读 · 0 评论 -
编译乱序和执行乱序
编译乱序和执行乱序理解Linux内核的锁机制, 还需要理解编译器和处理器的特点。 比如下面一段代码, 写端申请一个新的struct foo结构体并初始化其中的a、 b、 c, 之后把结构体地址赋值给全局gp指针:struct foo {int a;int b;int c;};struct foo *gp = NULL;/* . . . */p = kmalloc(sizeof(*p), GFP_K...原创 2018-04-24 18:47:53 · 2108 阅读 · 0 评论