在編譯nginx 時,順便查了下編譯優化的引數,留個筆記。這裡說的都是gcc
./configure
1--
with
-cc-opt=
"% $(pcre-config --cflags)"
下面是make優化:
1
make %
通常優化
1
make % cflags=
"-o3 -g -mtune=generic -m64"
i386/x86_64通用cpu,gcc 最高端別優化,64位專用
1
make % cflags=
"-o3 -g -mtune=native -m64"
探測本地cpu,gcc最高端別優化,本地64位專用,不可移植。
1
make % cflags=
"$rpm_opt_flags -fno-strict-aliasing"
紅帽引數,$rpm_opt_flags通常是-02 -g
發行商為了二進位制檔案的可移植性,以及在不同機器上的相容性,-mtune=native -m64 這樣的引數肯定是沒加的,事實上這些引數可以略微提高二進位制檔案的執行效能。
如果是通過srpm編譯來獲得軟體包,完全可以定製編譯。
注:對於c++,請把 cflags 替換為 cxxflags 。
另外,打包時,安裝軟體包redhat-rpm-config 很有必要。它預設了一些環境,會自動根據你的環境進行優化,詳見 /usr/lib/rpm/rpmrc和 /usr/lib/rpm/redhat/rpmrc
rpm打包的流程包括以下哪些 RPM打包流程
一 rpm打包工具安裝 yum install rpm build yum install rpmdevtools 二 工具的使用方法 1.建立資料夾 root localhost rpmdev setuptree root localhost cd root root localhost ls a...
編譯優化之 鏈結時優化 LTO 入門
1.關於 lto flto thinlto 2.llvm或aocc中flto llvm中lto work在ir intermediate representation 上,我們常用的選項 flto其實代表 flto full,指lto將分散的目標檔案的所有llvm ir組合到乙個大的llvm模組中,...
修改rpm中的檔案重新打包
1.安裝rpmrebuild 和安裝rpmbuild rpmbuild直接用yum安裝 yum install rpm build 2.配置rpm編譯目錄 vi rpmmacros topdir data rpmbuild 儲存。3.建立目錄解壓rpmrebuild檔案到 data rpmbuild...