Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Электронные книги по ОС Linux
Beyond Linux From Scratch. Version 2011-12-30
Назад 12. Программирование Вперед

Пакет GC-7.1

Знакомимся с пакетом GC

В пакете GC находится консервативный сборщик мусора Бема-Демерса-Уэйзера (Boehm-Demers-Weiser), который можно использовать в качестве замены сборщика мусора для функции malloc в C или оператора new в C++. Он позволяет выделять память, как и обычно, без явного освобождения памяти, что уже не полезно. Сборщик автоматически высвобождает память, когда он определит, что в противном случае она станет недоступной. Сборщик также используется в реализациях ряда языков программирования, в которых либо в качестве промежуточного кода используется язык C, либо отдается предпочтение простому интерфейсу сборщика мусора. Кроме того, сборщик мусора может использоваться в качестве детектора утечки памяти для программ на C или C++, хотя это не является его основным назначением.

Известно, что этот пакет собирается на платформе LFS-7.0, но он не тестировался.

Информация о пакете

Замечания для пользователей: http://wiki.linuxfromscratch.org/blfs/wiki/gc

Установка пакета GC

Установите пакет GC с помощью следующих команд:

sed -i "s|\$(datadir)/@PACKAGE@|&-6.8|" doc/Makefile.in &&
./configure --prefix=/usr \
    --datadir=/usr/share/doc --enable-cplusplus &&
make

Чтобы проверить результаты, выполните команду make check.

Теперь в роли пользователя root выполните:

make install &&
install -v -m644 doc/gc.man /usr/share/man/man3/gc_malloc.3 &&
ln -v -s gc_malloc.3 /usr/share/man/man3/gc.3

Пояснение команды

--datadir=/usr/share/doc: Этот параметр изменяет путь установки документации на /usr/share/doc/gc вместо /usr/share/gc.

--enable-cplusplus: Этот параметр указывает, что будет осуществляться сборка и установка библиотек C++ вместе со стандартной библиотекой C.

Описание пакета

Установленные программы: Нет

Установленные библиотеки: libgc.{so,a} и libgccpp.{so,a}

Установленные директории: /usr/include/gc и /usr/share/doc/gc

Краткое описание

libgc.{so,a}

содержит интерфейс на С для консервативного сборщика мусора, предназначенного для замены в первую очередь функции malloc в C

libgccpp.{so,a}

содержит интерфейс на С++ для консервативного сборщика мусора

Перевод сделан с варианта оригинала, датированного 2011-11-13 22:15:57 +0000


Предыдущий раздел: Оглавление Следующий раздел:
Пакет Expect-5.45   Пакет GCC-4.5.1