차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
| linuxfromscratch:13.0:start [2026/03/16 04:31] – baecy | linuxfromscratch:13.0:start [2026/03/31 15:31] (현재) – [Optimize Failed Package] baecy | ||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| ==== LFS 13.0 ==== | ==== LFS 13.0 ==== | ||
| + | === Scripts === | ||
| + | / | ||
| + | < | ||
| + | # Graphite (LTO -fgraphite-identity -floop-nest-optimize -floop-interchange) | ||
| + | COMMON_FLAGS=" | ||
| + | export LDFLAGS=" | ||
| + | source / | ||
| + | alias clear-flags=' | ||
| + | </ | ||
| + | / | ||
| + | < | ||
| + | # | ||
| + | FLAG_DIR="/ | ||
| + | |||
| + | GREEN=' | ||
| + | YELLOW=' | ||
| + | CYAN=' | ||
| + | NC=' | ||
| + | |||
| + | if [ ! -d " | ||
| + | echo -e " | ||
| + | echo -e " | ||
| + | mkdir -pv $FLAG_DIR | ||
| + | echo -e " | ||
| + | echo -e '# | ||
| + | echo -e " | ||
| + | fi | ||
| + | |||
| + | mapfile -t FLAG_FILES < <(ls " | ||
| + | |||
| + | echo -e " | ||
| + | echo -e " 현재 적용된 CFLAGS: ${GREEN}${CFLAGS: | ||
| + | echo -e " | ||
| + | echo -e " 사용 가능한 플래그 목록:" | ||
| + | |||
| + | for i in " | ||
| + | filename=$(basename " | ||
| + | description=$(head -n 1 " | ||
| + | echo -e " | ||
| + | done | ||
| + | |||
| + | echo -e " | ||
| + | echo -e " | ||
| + | echo -e " | ||
| + | |||
| + | read -p " 플래그 번호를 선택하십시오: | ||
| + | |||
| + | if [[ " | ||
| + | echo " | ||
| + | elif [[ " | ||
| + | unset CFLAGS CXXFLAGS FCFLAGS FFLAGS RUSTFLAGS LDFLAGS MAKEFLAGS COMMON_FLAGS | ||
| + | echo -e " | ||
| + | elif [[ " | ||
| + | selected_file=" | ||
| + | source " | ||
| + | echo -e " | ||
| + | else | ||
| + | echo -e " | ||
| + | fi | ||
| + | |||
| + | unset FLAG_DIR FLAG_FILES | ||
| + | |||
| + | export MAKEFLAGS=" | ||
| + | </ | ||
| + | / | ||
| + | < | ||
| + | export CFLAGS=" | ||
| + | export CXXFLAGS=" | ||
| + | export FCFLAGS=" | ||
| + | export FFLAGS=" | ||
| + | export RUSTFLAGS=" | ||
| + | </ | ||
| + | / | ||
| + | < | ||
| + | #Basic (-native -O3 - pipe) | ||
| + | COMMON_FLAGS=" | ||
| + | export LDFLAGS=" | ||
| + | source / | ||
| + | </ | ||
| + | / | ||
| + | < | ||
| + | #LTO (Basic + -flto=auto -ffat-lto-objects) | ||
| + | COMMON_FLAGS=" | ||
| + | export LDFLAGS=" | ||
| + | source / | ||
| + | </ | ||
| + | / | ||
| + | < | ||
| + | ln -sv / | ||
| + | </ | ||
| + | / | ||
| + | < | ||
| + | #Kernel (-native -O2 - pipe) | ||
| + | COMMON_FLAGS=" | ||
| + | source / | ||
| + | </ | ||
| + | / | ||
| + | < | ||
| + | # DEBUG (Graphite -fopt-info) | ||
| + | COMMON_FLAGS=" | ||
| + | export LDFLAGS=" | ||
| + | source / | ||
| + | </ | ||
| + | |||
| + | ==== Optimize Failed Package ==== | ||
| + | * Glibc: LTO-x (safe: -march=native -O3 -pipe) | ||
| + | * TCL: LTO-x (safe: -march=native -O3 -pipe) | ||
| + | * libtool: LTO-x (safe: -march=native -O3 -pipe) | ||
| + | * OpenSSL: LTO-x (safe: -march=native -O3 -pipe) | ||
| + | * Linux-6.18.10: | ||
| + | * frei0r-2.5.1: | ||
| + | * Node.js-22.22.0: | ||
| + | * SpiderMonkey from firefox-140.8.0: | ||
| + | * libaio-0.3.113: | ||
| + | * FFmpeg-8.0.1: | ||
| + | * ristretto-0.13.4: | ||
| + | |||
| + | ==== 책과 다른 방식의 컴파일이 필요한 패키지 ==== | ||
| + | | ||
| + | ==== Chapter 8.30. GCC-15.2.0 ==== | ||
| + | < | ||
| + | gcc -v | ||
| + | Using built-in specs. | ||
| + | COLLECT_GCC=gcc | ||
| + | COLLECT_LTO_WRAPPER=/ | ||
| + | Target: x86_64-pc-linux-gnu | ||
| + | Configured with: ../ | ||
| + | --enable-languages=c, | ||
| + | --enable-host-pie --disable-multilib --disable-bootstrap \ | ||
| + | --disable-fixincludes --with-system-zlib --with-isl --enable-lto | ||
| + | Thread model: posix | ||
| + | Supported LTO compression algorithms: zlib zstd | ||
| + | gcc version 15.2.0 (GCC)</ | ||
| ==== BLFS 13.0 ==== | ==== BLFS 13.0 ==== | ||
| + | * [[BLFS Build Order]] | ||
| === Chapter 11. General Utilities === | === Chapter 11. General Utilities === | ||
| pinentry-1.3.2 | pinentry-1.3.2 | ||