Ярлыки

.htaccess (4) тестирование (8) шаблоны проектирования (3) css (5) Debian (6) docker (2) Doctrine2 (6) Git (6) html (4) java (6) javascript (13) jquery (11) LFS (3) linux (23) mac os (4) mod_rewrite (2) MSSQL (4) MySQL (18) ORM Doctrine (17) patterns (3) PDO (3) perl (7) PHP (64) PHPUnit (8) Python (15) SEO (2) Silex (1) SimpleXML (1) SQL (14) ssh (4) Ubuntu (24) Yii1 (1) Zend Framework (19) ZendFramework2 (8)

суббота, 23 октября 2010 г.

LINUX FROM SCRATCH. Сборка GCC - этап 1.

pwd (англ. print working directory — напечатать рабочий каталог) — консольная утилита в UNIX-подобных системах, которая выводит полный путь от корневого каталога к текущему рабочему каталогу.

Предварительные действия:

1. Распаковываем архив gcc в $LFS/sources
2. Переходим в каталог $LFS/sources/gcc-4.5.1
3. Распаковываем архивы gmp, mpc и mpfr в каталог gcc-4.5.1
4. Создаем каталог $LFS/sources/gcc-build (../gcc-build)
5. Переходим в gcc-build

Настройка:

../gcc-4.5.1/configure \
--target=$LFS_TGT --prefix=/tools \
--disable-nls --disable-shared --disable-multilib \
--disable-decimal-float --disable-threads \
--disable-libmudflap --disable-libssp \
--disable-libgomp --enable-languages=c \
--with-gmp-include=$(pwd)/gmp --with-gmp-lib=$(pwd)/gmp/.libs \
--without-ppl --without-cloog

--disable-shared
Библиотеки линкуются статически.

--disable-decimal-float, --disable-threads, --disable-libmudflap,
--disable-libssp, --disable-libgomp
Отключаем поддержку функций в которых нет необходимости.

--enable-languages=c
Пока нам нужен только C.

--with-gmp-include=...
Указываем местонахождение заголовков GMP ...

--with-gmp-lib=...
... и библиотеки

Далее ...

make && make install

Using - - disable- shared means that the libgcc_ eh. a file isn't created and installed. The Glibc package
depends on this library as it uses - lgcc_ eh within its build system. This dependency can be satisfied by creating a
symlink to libgcc. a, since that file will end up containing the objects normally contained in libgcc_ eh. a:
ln -vs libgcc.a `$LFS_TGT-gcc -print-libgcc-file-name | \
sed 's/libgcc/&_eh/'`

Комментариев нет:

Отправить комментарий