arm-linux-4.4.1.tar.gz 和 arm-linux-gcc-4.3.2.tgz 有啥区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了arm-linux-4.4.1.tar.gz 和 arm-linux-gcc-4.3.2.tgz 有啥区别相关的知识,希望对你有一定的参考价值。

参考技术A 都是arm-linux交叉编译工具,版本不同而已(解压目录可能有点区别)。
这2套编译工具都比较新,使用上一般都能满足要求,具体还要参考你要编译的源代码对编译器的版本要求(README、Changelog等)。追问

谢谢你...清楚些了
那么 我哟啊编译的源代码对 编译器的版本要求,怎么看的,我怎么知道呢?

追答

一般源代码主目录中都有README文件,里面会有对交叉编译器的版本要求,于linux kernel你还可以参看Documentation/Changes文件,里面还有对编译相关工具的详细要求。

追问

就是说,开发板上的内核,用的什么编译器.,那么在pc机上的linux编译程序给开发板,就得用一样的交叉编译器,否则编译通不过,还是?

追答

开发板内核源代码对交叉编译器有最低版本要求,只要PC系统上安装了大于这个版本的编译器,就能编译开发板的内核了。你是要编译内核还是应用程序,如果是应用的话,编译器版本没必要和编内核一样,相同最好。

& 和 && 区别和联系,| 和 || 区别和联系

& 和 && 区别和联系,| 和 || 区别和联系,实际项目中,什么情况用哪种?

首先,& 和 && 的联系(共同点):

& 和 && 都可以用作 逻辑与 运算符,但是要看使用时的具体条件来决定。

技术图片

 

情况1:当上述的操作数是boolean类型变量时,& 和 && 都可以用作逻辑与运算符。

情况2:当上述的表达式是boolean类型变量时,& 和 && 都可以用作逻辑与运算符。

表示逻辑与(and),当运算符两边的表达式的结果或操作数都为true时,整个运算结果才为true,否则,只要有一方为false,结果都为false。

& 和 && 的区别(不同点):

1)& 逻辑运算符称为逻辑与运算符,&& 逻辑运算符称为短路与运算符,也可叫逻辑与运算符。

2)对于 & :无论任何情况,&两边的操作数或表达式都会参与计算。

3)对于 && :当&&左边的操作数为false或左边表达式结果为false时,&&右边的操作数或表达式将不参与计算,此时最终结果都为false。

综上所述,如果逻辑与运算符的第一个操作数为false或第一个表达式的结果为false时,对于第二个操作数或表达式是否进行运算,对最终的结果没有影响,结果肯定是false。推荐多用&&,因为它的效率更高些。

附:&还可以用作位运算符。当&两边操作数或两边的表达式的结果不是boolean类型时,&用于按位运算符的操作。

| 和 || 的区别和联系与 & 和 && 的区别和联系类似。

以上是关于arm-linux-4.4.1.tar.gz 和 arm-linux-gcc-4.3.2.tgz 有啥区别的主要内容,如果未能解决你的问题,请参考以下文章

第三十一节:扫盲并发和并行同步和异步进程和线程阻塞和非阻塞响应和吞吐等

shell中$()和 ` `${}${!}${#}$[] 和$(()),[ ] 和(( ))和 [[ ]]

Java基础8---面向对象代码块和继承和this和super和重写和重载和final

Java基础8---面向对象代码块和继承和this和super和重写和重载和final

JS中some()和every()和join()和concat()和pop(),push(),shift(),unshfit()和map()和filter()

malloc和free,brk和sbrk和mmap和munmap的使用和关系以及内存分配的原理