编译笔记:
我的系统:Ubuntu14.04 64位
首先下载Coreutils,下载地址:http://www.gnu.org/software/coreutils/coreutils.html
我下载的是最新版coreutils-8.25.tar.xz
解压缩:
$xz -d coreutils-8.25.tar.xz
$tar -xvf coreutils-8.25.tar
下面分别介绍两种编译器进行编译的过程。(由于某些原因我必须加下面那些CFLAGS参数,大家可以按照自己的需求添加编译参数)
一、用gcc编译
进入coreutils-8.25文件夹,依次运行以下命令;
sudo ./configure CC="gcc -m32" CXX="g++ -m32" CFLAGS="-pie -fPIE" FORCE_UNSAFE_CONFIGURE=1
make
可能出现的问题:
overcome "aclocal-1.15' is missing on your system” warning when compiling
在运行./configure 之前先运行命令:sudo autoreconf -f -i
二、用llvm编译
同上,进入coreutils-8.25文件夹
./configure CC="clang -m32" CXX="g++ -m32" CFLAGS="-pie -fPIE" FORCE_UNSAFE_CONFIGURE=1
make
说明:
-m32 编译出的可执行文件为32位
-pie -fPIE 随机化地址,将程序编译成地址无关。