我最近发现,当我构建 C++ 软件时,使用 g++ 可以提高大约 10% 的速度游行=本地选项。编译 gcc 和 libstc++ 时,是否也可以将 libstdc++ 库调整为本机体系结构?我在gcc 安装配置文档. (我正在使用 Intel Core i7 Sandy Bridge-E 处理器在 Linux Mint 11 上构建 gcc 4.6.2。)
澄清:
我通常在构建 gcc 时构建 libstc++,例如这正是我正在做的事情,并且我希望添加一些调整选项:
$ wget http://mirrors-us.seosue.com/gcc/releases/gcc-4.6.2/gcc-4.6.2.tar.gz
$ tar -xzf gcc-4.6.2.tar.gz
$ mkdir gcc-4.6.2-objdir
$ cd gcc-4.6.2-objdir/
$ ../gcc-4.6.2/configure
$ make
# make install
答案1
除非您自己编译了 libstc++,否则您可能只是下载了目标文件。如果是这样的话,那么您将无法对其进行任何更改。
为了获得您想要的性能,您可能必须下载源代码并使用您想要使用的选项进行编译。
笔记:
在系统上安装多个版本的 libstc++ 可能会很棘手(我在 Ubuntu 上遇到了一些问题,需要完全删除其中一个版本才能解决,但我确信有办法解决它)。
如果您使用 -mtune=generic 标志编译代码,但使用了错误版本的库,那么您不应该期望生成的二进制文件能够在目标机器上运行(假设它是一台不同的机器)。