禁用 gcc 的 -enable-default-pie

禁用 gcc 的 -enable-default-pie

我需要禁用-enable-default-piegcc 配置中的选项,但我不知道该怎么做。是否有一个文本文件,我只需删除该选项即可,或者应该如何操作?

答案1

如果需要 GCC 的不同配置,则需要重新编译它。

下载 GCC

下载或者克隆从官方网站下载 GCC。或者,您也可以从 Ubuntu 源包中安装它。

# Download gcc
$ wget https://mirrors.kernel.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.xz
$ tar xf gcc-7.3.0.tar.xz
$ cd gcc-7.3.0

# Clone gcc
$ git clone https://gcc.gnu.org/git/gcc.git
$ cd gcc; git checkout gcc-7_3_0-release

# Use Ubuntu sources
$ apt-get source gcc-7
$ cd gcc-7-7.3.0

配置 GCC

进入 GCC 源文件夹并运行 autoconf 脚本configure。在此之前,需要安装 gcc 的所有开发库。最常见的情况configure只需要 c 和 c++ 语言(另请参阅页面)。这也是您应该放置自定义选项的地方--enable-default-pie

$ sudo apt-get build-dep gcc-7
$ configure --enable-languages=c,c++

构建和安装

简单启动makemake install。这将在 中构建并安装自定义 gcc 。如果您需要不同的位置,您可以使用配置步骤中的选项/usr/local/bin进行更改。--prefix=...

$ make -j $(grep -c processor /proc/cpuinfo)
$ sudo make install

# Or better with checkinstall which, creates a deb packet
$ sudo checkinstall make install 

根据您拥有的 CPU 数量,这可能需要一段时间。之后,只需运行gcc --version并观察新编译器的运行情况。

相关内容