"理由"については、SIMD命令を出さないx86ツールチェーンを構築する必要があります(-march
を使用しようとすると、glibcにSIMD命令などを使用するように組み込まれた関数が含まれているため十分ではありません)。gccにglibcの特定のインスタンスを使用するように指示するにはどうすればよいですか?
私は、次のconfigureフラグを使って自分のgcc 5.3を構築しています:
../src/gcc/configure --prefix=/scratch/install --enable-languages=c,c++ \
--with-cpu=ivybridge \
--with-arch=ivybridge \
CFLAGS="-march=ivybridge" \
CXXFLAGS="-march=ivybridge"
私は、次のconfigureフラグを使って自分のglibcを構築しました:
../src/glibc/configure --prefix=/scratch/install --with-arch=ivybridge \
CC="/scratch/install/bin/gcc" \
CXX="/scratch/install/bin/g++" \
CFLAGS="-O2 -march=ivybridge" \
CXXFLAGS="-O2 -march=ivybridge -Wa,-march=corei7+nommx+nosse+noavx"`
私はgccがされていないことを確認私のglibcを使って。
$ /scratch/install/bin/gcc -print-file-name=libc.so
/usr/lib/x86_64-linux-gnu/libc.so
質問:
私は、新たにコンパイルされたglibcにリンクするにはどうすればよいですか?私が助けるならば、-static
のバイナリをコンパイルすることだけに興味があります。