
c – SYSV与Linux / GNU ELF格式
问题是在以下问题的背景下:Why are libraries not found, even though they are clearly on the -L path?.我的库和我的目标文件似乎有不同的ELF格式,这可能导致链接器无法“找到”库.现在,这导致了几个问题:似乎我的编译器通常会生成SYSV ELF文件. (检查文

linux – 为什么gcc在调用“main”之后在程序中放置一个“halt”指令?
当在 Linux / i386系统上看到由gcc生成的精灵可执行文件时,似乎在调用“main”之后,在“nop”填充之前,它会放置一个停止指令(0xf4),例如: │ ……. ! entrypoint:│ ……. ! xor ebp, ebp│ 80482e2 ! pop esi│ 80482e3 ! mov ecx

linux – GCC详细模式输出说明
我是 linux的新手.任何人可以向我解释我的hello world程序的以下详细模式输出?此外,文件crt1.o,crti.o,crtend.o,crtbegin.o和crtn.o和lc和lgcc会做什么?任何其他解释性的联系也是欢迎的. $gcc -v hello.cReading specs from /usr/lib/gcc-lib/i686/3.3.1/sp

linux – GCC处理不同优化级别的浮点数比较
我有一些简单的代码比较两个浮点值,以说明我在GCC优化中看到的问题,并希望有人可以帮我弄清楚为什么它产生的输出在某些可重复的情况下是不同的. 首先,我知道将浮点值与==进行比较是不好的,因为你可以在尾数中关闭一些非常小的数量,但在我的例子中并非如此.我

linux / gcc:来自C/C++程序的ldd功能
是否有一种简单有效的方法可以知道给定的动态链接ELF是否缺少必需的.so来运行,所有这些都来自C/C++程序的内部? 我需要一个与ldd具有某些相似功能的程序,而不是试图执行ELF来找出系统中的(met / unmet)依赖项.也许通过一些库询问ld-linux.so实用程序? (我是

嵌入式 – arm-linux-gcc vs arm-elf-gcc
我正在寻找使用arm- linux-xxx构建内核的uClinux系统,但使用arm-elf-xxx构建用户应用程序. 如果应用程序打算在linux上运行,使用arm-linux-xxx构建所有内容会不会更好? 在整个uClinux构建配置中,哪一个设置了该选项? 编译器的名称并不一定意味着什么.根据谁

centos升级gcc
1. 下载新的源 wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtools-2.repo# 可能需要更新一下repo源: yum makecacheyum install devtoolset-2-gc

CentOS yum升级GCC到4.8
wget http://people.centos.org/tru/devtools-2/devtools-2.repomv devtools-2.repo /etc/yum.repos.dyum install devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++ 三个安装包会被装在/opt/rh/devtoolset-2/

使用gold vs ld链接器时使用的glibc/pthreads中的不同符号
我有一个简单的测试程序调用pthread_cond_broadcast.与ld链接器链接时,显示:情况1:$nm ld-test | grep cond_broadcast U pthread_cond_broadcast@@GLIBC_2.3.2 当与黄金链接器链接时,它显示:案例2: $nm gold-test | grep cond_broadca

在centos 6.5下面安装gcc 4.1.2
因为编译的机器装了centos 6.5,上面的gcc比较新是4.7,而外面运行的机器试centos5.6,所以编译的程序放到上面跑了之后就会出现/lib64/libc.so.6: version `GLIBC_2.8 not found等错误(就是libc的版本太低,不支持2.8,我们可以用命令 strings /lib64/libc.