Glibc 2 HOWTO
Eric Green,
[email protected]
v1.5, 8 February 1998
���{ ��K Kazuyuki Okamoto,
[email protected]
�����r�� Toshinori Endo,
[email protected] (v1.5��
��)
v1.5, 1998�N9��15��
GNU C ���C�u���� (glibc�Q��) glibc Glibc 2 HOWTO��Linux�V�X�e�����
��GNU C Library��2�� (libc 6)�̃C���X�g�[���Ǝg�p�ɂ��Đ����܂��B
______________________________________________________________________
�ڎ�
1. �͂��߂�
1.1 glibc2�ɂ���
1.2 ���̕����ɂ���
1.3 ���̕����̍ŋ߂̕ύX
2. �C���X�g�[�����@�̑I��
3. ���C�u�����̎擾
4. �e�X�g���C�u�����Ƃ��ẴC���X�g�[��
4.1 �R���p�C���ƃC���X�g�[��
4.1.1 �K�v��
4.1.2 �\�[�X�̓W�J
4.1.3 �ݒ�
4.1.4 �R���p�C���ƃC���X�g�[��
4.2 �_�C�i�~�b�N���[�_�̃A�b�v�f�[�g
4.3 gcc�̐ݒ�
4.4 �w�b�_�[�t�@�C���ւ̃����N�̃A�b�v�f�[�g
4.5 �C���X�g�[�������̊m�F
5. ���C����C���C�u�����Ƃ��ẴC���X�g�[��
5.1 �\�[�X����̃��C�u�����\�z
5.1.1 �K�v��
5.1.2 �\�[�X�̓W�J
5.1.3 �ݒ�
5.1.4 �R���p�C��
5.2 �C���X�g�[���̏���
5.3 �o�C�i���p�b�P�[�W����̃C���X�g�[��
5.4 �\�[�X����̃C���X�g�[��
5.5 gcc specs�t�@�C���̍X�V
5.6 �C���X�g�[�������̊m�F
6. ���C�����C�u�����łȂ�libc��g�����R���p�C��
6.1 ���C���łȂ�libc��g���ꍇ�̒���
6.2 �e�X�g�pglibc��g�����R���p�C��
6.3 glibc�����C�����C�u�����̂Ƃ���libc5��g�����R���p�C��
7. C++�v���O�����̃R���p�C��
7.1 �e�X�g�pglibc��g��libg++�̃C���X�g�[��
7.2 ���C�����C�u�����Ƃ���glibc��g���ꍇ��libg++�̃C���X�g�[��
7.3 ���C�����C�u�����łȂ�libc��g����C++�v���O�����̃R���p�C��
8. �o�O���|�[�g
9. specs �t�@�C���̗�
10. ���̑�
10.1 ���̏��
10.1.1 Web�y�[�W
10.1.2 �j���[�X�O���[�v
10.1.3 ���[�����O���X�g
10.2 �ӎ�
10.3 �t�B�[�h�o�b�N
______________________________________________________________________
1. �͂��߂�
1.1. glibc2�ɂ���
Glibc2��GNU C���C�u�����̍ŐV�łł��B���݁A�ύX�Ȃ��œ��삷��̂́A
GNU Hurd�V�X�e����Linux i386, m68k, alpha�V�X�e���ł��BPowerPC, MIPS,
Sparc, Sparc 64, Arm�p��Linux�����ɂ�2.1�łőΉ��̗\��ł��B�����I��
�́A�ق��̃A�[�L�e�N�`���[�ƃI�y���[�e�B���O�V�X�e���p�ɂ����Ή��̗\
��ł��B
Linux�ł�, glibc2 ��Linux libc 5�̌�p�A�܂�libc�o�[�W����6 �Ƃ��ėp
�����܂��BLinux libc�J���҂�����libc5��iglibc2�Łj�u�������Ă��܂�
���Ƃ��Ă��܂��B 2.0.6�̒i�K�ŁAglibc�͏\���ȕi����ƌ��Ȃ���Ă�
�܂��B�o�[�W����2.1 (�߂��������\�\��j�́A��葽���̋@��ֈڐA����A
�V�����@�\��lj�����āA���S�I�ɗp������悤�ɂȂ�ł��傤�B
glibc2�ɂ́A���L�̂R�̃A�h�I����lj��ł��܂�
Crypt
UFC�̈Í����p�b�P�[�W�B�A�o�K���̂��߁A��������Ă���B
LinuxThreads
POSIX1003.1c pthread�C���^�[�t�F�[�X�̎����B
Locale data
locale�f�[�^�t�@�C���\�z�ɕK�v�ȃf�[�^��܂ށB glibc�̍��ۉ��@�\
��g�p����Ƃ��Ɏg����B
crypt��LinuxThreads�̃A�h�I���͒lj����邱�Ƃ���E�߂܂��B�g��Ȃ���
�ق��̃V�X�e���ƌ݊����ɖ�肪������\�������邩��ł��B�i�g��������
���ꍇ�́Aconfigure���s����--disable-sanity-checks�I�v�V������w�肷��
�K�v������܂��j�B
1.2. ���̕����ɂ���
����HOWTO�͊�����Linux�V�X�e���ւ�glibc2���C�u�����̃C���X�g�[���ɂ�
�ċL�ڂ���Ă��܂��BIntel�x�[�X��libc5��g�p�����V�X�e���̃��[�U������
������Ă��܂����A�ق��̃V�X�e����ق��̃��C�u����(glibc1�Ȃ�)��g�p��
�Ă��郆�[�U��A�t�@�C������A�[�L�e�N�`������K���ɒu�������邱�Ƃɂ�
��L�ڂ��ꂽ����g����͂��ł��B
����HOWTO�̍ŐV�ł�Linux Documentation Project�̈ꕔ�Ƃ��āA���L�̂���
�ꂩ�̃T�C�g������\�ł� �B
Linux Documentation Project <
http://sunsite.unc.edu/LDP>
<
http://www.imaxx.net/~thrytis/glibc/Glibc2-HOWTO.html>.
1.3. ���̕����̍ŋ߂̕ύX
�o�[�W����1.5��1.4�̈Ⴂ
o Ed Bailey�ɂ�����̕t��
o ���҂�email�A�h���X�̕ύX
�o�[�W����1.4��1.3�̈Ⴂ
o ���݂̏���i�K���琳�����J�i�K�֕ύX
o �ڐA��ƒ��V�X�e���̃��X�g�̍X�V
o �ŐV�o�[�W������2.0.6�֍X�V
2. �C���X�g�[�����@�̑I��
glibc��C���X�g�[������ɂ͂������̕��@������A�����̃��C�u������f
�t�H���g�Ƃ��Ďg�p�����܂܁A�e�X�g�p�� glibc2��C���X�g�[�����邱�Ƃ�
�ł��܂��B���̕��@�ł́A�v���O������R���p�C������ۂɁA�I�v�V�����w��
�ɂ��ĐV�������C�u������g�����Ƃ��ł��܂��B���̕��@��g���A������
�P��glibc��폜���邱�Ƃ��ł��܂��i������glibc�Ƀ����N���ꂽ�v���O����
�́A���C�u������폜����Ɠ��삵�Ȃ��Ȃ�܂��j�B���̃C���X�g�[�����@
�́A�o�C�i���f�B�X�g���r���[�V�����͑��݂��Ȃ��̂ŁA���C�u������\�[�X
����R���p�C������K�v������܂��B�C���X�g�[�����@�� ``�e�X�g���C�u��
���Ƃ��ẴC���X�g�[��'' �ŏq�ׂ��Ă��܂��B
���̕����ɋL�ڂ��ꂽ����̃C���X�g�[�����@�́Aglibc��C�����C�u
�����Ƃ��Ďg���ꍇ�ł��B���̕��@�ł́A�Â����C�u��������N����悤��
�I�v�V�����w���Ȃ�����A�V�����R���p�C�������v���O�����͑S
��glibc��g���悤�Ƀ����N����܂��B���̏ꍇ�́A���C�u������o�C�i����
��C���X�g�[�����邱�Ƃ����ŃR���p�C�����邱�Ƃ�ł��܂��B�œK���̃�
�x����ݒ��ύX�������ꍇ�́A�\�[�X�f�B�X�g���r���[�V������肵�āA
�R���p�C������K�v������܂��B���̃C���X�g�[���菇�� ``���C����C���C�u
�����Ƃ��ẴC���X�g�[��'' �ŏq�ׂ��Ă��܂��B
Frodo Looijaard�́A�Ǝ���glibc�̃C���X�g�[�����@��q�ׂĂ��܂��B�ނ̕�
�@��glibc���2�̃��C�u�����Ƃ���glibc��g�����N���X�R���p�C���̐ݒ��
���Ă̂�̂ł��B���̕��@�ɂ��C���X�g�[���̎菇�́A���̕������́u�e
�X�g���C�u�����Ƃ��ẴC���X�g�[���v��蕡�G�ł����A glibc����N����
�ۂ̃R���p�C���w�肪���ȒP�ł��B���̕��@�͔ނ� Linux�ւ�glibc2�̃C��
�X�g�[�� <
http://huizen.dds.nl/~frodol/glibc/>�ɋL�ڂ���Ă��܂��B
����Debian1.3��g���Ă��邪�Aglibc��g�����߂����ɕs����ȃo�[�W������
�A�b�v�O���[�h����̂�����ȏꍇ�A Debian �ł� libc5 ���� libc6�ւ̈�
�s Mini-HOWTO <
http://www.gate.net/~storm/FAQ/libc5-libc6-Mini-
HOWTO.html> ��Q�l�ɂ��Ă��������BDebian�p�b�P�[�W��g�����V�X�e����
�A�b�v�O���[�h�̎d�����L�ڂ���Ă��܂��B
glibc2��d�v�ȃV�X�e���ɃC���X�g�[������Ƃ��́A�e�X�g�C���X�g�[����
�s��������������m��܂���B ���v���g�^�C�v��^���ύX����Ă��邽
�߁A�R���p�C�����邽�߂ɂ́A�C�����K�v����m��Ȃ�����ł��B
3. ���C�u�����̎擾
glibc2��glibc�p�b�P�[�W�ƂR�̃A�h�I���p�b�P�[�W�ALinuxThreads,
Locale Crypt����Ȃ�܂��B�\�[�X�͈ȉ��̃T�C�g�Ŏ擾�\�ł��B
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-2.0.6.tar.gz>
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-linuxthreads-2.0.6.tar.gz>
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-localedata-2.0.6.tar.gz>
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-crypt-2.0.6.tar.gz>
�S�R���p�C���ƃC���X�g�[���ɂ́A��150MB�̃f�B�X�N�X�y�[�X���K�v�ł��B
�R�A���C�u�����p�b�P�[�W�݂̂̊�{�o�C�i���C���X�g�[���ł͖�50MB���K�v
�ł��B
2.0.6�̃o�C�i���p�b�P�[�W�͂܂��������ł��B2.0.4�o�C�i���p�b�P�[�W��
i386��m68k�p������܂��Balpha�p��2.0.1������܂��B�����͉��L����擾
�ł��܂��B
o Intel x86:
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-2.0.4.bin.i386.tar.gz>
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-crypt-2.0.4.bin.i386.tar.gz>
o Alpha:
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-2.0.1.bin.alpha-linux.tar.gz>
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-crypt-2.0.1.bin.alpha-
linux.tar.gz>
o m68k:
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-2.0.4-m68k-linux.bin.tar.gz>
o <
ftp://prep.ai.mit.edu/pub/gnu/glibc-crypt-2.0.4-m68k-
linux.bin.tar.gz>
crypt�A�h�I���ɂ͗A�o�K��������܂��B�č��ȊO�̃��[�U�́A
<
ftp://ftp.ifi.uio.no/pub/gnu>����擾���Ă��������B
Red Hat�f�B�X�g���r���[�V������g�p���Ă���ꍇ�Aglibc2�p��RPM��
<
ftp://ftp.redhat.com/pub/redhat/>����擾�ł��܂��BGlibc2�͂����炵
��RedHat�f�B�X�g���r���[�V����5.0�ł̓��C����C���C�u�����ɂȂ��Ă���
���B
Debian�f�B�X�g���r���[�V������g�p���Ă���ꍇ�Aglibc2�p�̃p�b�P�[�W��
<
ftp://ftp.debian.org/debian/dists/unstable/main/>�œ���ł��܂��B�t�@
�C������libc6�ƂȂ��Ă��܂��BDebian��hamm�o�[�W�����ł́Bglibc2����{
�p�b�P�[�W�̈ꕔ�Ȃ��Ă���ADebian2.0�������[�X�����Ƃ��ɂ́A���C��
��libc�ƂȂ�\��ł��B
4. �e�X�g���C�u�����Ƃ��ẴC���X�g�[��
���̐߂ł́Aglibc2��e�X�g���C�u�����Ƃ��ăC���X�g�[�������@�ɂ���
�����܂��B�I�v�V�����w���Ȃ�����A�R���p�C��������̂́A�����̃�
�C�u�����Ƀ����N����܂��B���Ȃ�̐��̃t�@�C���Ƀp�X��L�q����K�v����
��̂ŁA�\�[�X����C���X�g�[����s��Ȃ��Ă͂Ȃ�Ȃ��ł��傤�B
4.1. �R���p�C���ƃC���X�g�[��
4.1.1. �K�v��
o ��150MB�̋�f�B�X�N�X�y�[�X
o GNU make 3.75
o gcc >= 2.7.2 (2.7.2.1�ȏオ�]�܂���) (�� ix86-Linux��
�́Aglibc-2.0.6�̃R���p�C���ɂ�gcc-2.8.1�ȏオ�K�v�ł�)
o binutils 2.8.1 (alpha�p�ɂ�snapshot���K�v�j
o bash 2.0
o autoconf 2.12 (configure.in��ύX����Ƃ��̂�)
o texinfo 3.11
�t�����C�u�����ƃA�h�I���̃R���p�C���ɁAi586@133, 64MB RAM�Ŗ�3���ԁA
�t��������i686@200�ł͖�30��������܂��B
4.1.2. �\�[�X�̓W�J
�R���p�C���ɂ͂���O�ɁA�A�[�J�C�u����\�[�X��W�J����K�v������܂��B
���Ƃ�ǂ��͎̂��̕��@�ł��B
tar xzf glibc-2.0.6.tar.gz
cd glibc-2.0.6
tar xzf ../glibc-linuxthreads-2.0.6.tar.gz
tar xzf ../glibc-crypt-2.0.6.tar.gz
tar xzf ../glibc-localedata-2.0.6.tar.gz
����ɂ��linuxthreads,crypt,localedata�f�B���N�g����glibc-2.0.6�ɒu��
��Aconfigure�������̃A�h�I����F���ł���悤�ɂȂ�܂��B
4.1.3. �ݒ�
glibc-2.0.6�f�B���N�g���� compile�Ƃ������̃f�B���N�g����쐬���A cd��
�܂��B��Ƃ͑S�Ă����ōs���܂��B����ɂ���Еt�����y�ɂȂ�܂��B�i��
���Amake clean�����ɓ��삷��悤�ɂȂ��Ă��Ȃ�����ł��B�j
mkdir compile
cd compile
../configure��s���܂��B�A�h�I���p�b�P�[�W��g�����߂ɂ́A --enable-
add-ons=--enable-add-ons=linux-threads,crypt,localedata �̂悤�Ɏw�肷
��K�v������܂��B�C���X�g�[����̃f�B���N�g����w�肷��K�v�������
���B/usr/i486-linuxglibc2�Ƃ����̂��ǂ��ł��傤�B�ŏI�I�ɁA�R�}���h��
�C���͎��̂悤�ɂȂ�ł��傤�B
../configure --enable-add-ons=linuxthreads,crypt,localedata --prefix=/usr/i486-linuxglibc2
4.1.4. �R���p�C���ƃC���X�g�[��
�R���p�C���ƃ`�F�b�N�͉��L�̒ʂ�ł��B
make
make check
make check�����܂��������烉�C�u������C���X�g�[�����܂��B
make install
4.2. �_�C�i�~�b�N���[�_�̃A�b�v�f�[�g
1. �V����ld.so����/lib/ld-linux.so.2�փ����N��܂��B
ln -s /usr/i486-linuxglibc2/lib/ld-linux.so.2 /lib/ld-linux.so.2
���̃��C�u�����������A�v���O�����Ƀ����N������̂̂Ȃ��ŗB��ꏊ�̌�
�肳��Ă����̂ł��B/lib�ւ̃����N��g�����ƂŁA����ł�glibc���ł�
���Ƃ��ɁA���C����C���C�u�����Ƃ��ẴA�b�v�O���[�h���e�ՂɂȂ�܂��B
/etc/ld.so.conf��ҏW���܂��B���̍ۂɁB���C�u�����̂���f�B���N�g����
�̌��/lib�����K�v������܂��B�܂�<prefix>/lib�̂悤�ɂȂ�A�O�q
�̗�Ō����A/usr/i486-linuxglibc2/lib�ƂȂ�܂��B /etc/ld.so.conf��
�ҏW��A
ldconfig -v
4.3. gcc�̐ݒ�
�C���X�g�[���̍Ō�̃X�e�b�v�́Agcc���V�������C�u������F���ł���悤
�ɂ��邽�߂�/usr/lib/gcc-lib�̏C���ł��B�܂��A�����̐ݒ��R�s�[����K
�v������܂��B�ǂ̐ݒ肪���ݎg���Ă����̂��ׂ�ɂ́Agcc��-v�I
�v�V������p���܂��B
% gcc -v
Reading specs from /usr/lib/gcc-lib/i486-unknown-linux/2.7.2.2/specs
gcc version 2.7.2.2
���̏ꍇ�́Ai486-unknown-linux���V�X�e���A2.7.2.2���o�[�W�����ł��B
/usr/lib/gcc-lib/<�V�X�e��>��e�X�g�V�X�e���f�B���N�g���ɃR�s�[����
���B
cd /usr/lib/gcc-lib/
cp -r i486-unknown-linux i486-linuxglibc2
�e�X�g�p�̐V�����V�X�e���f�B���N�g���ƃo�[�W�����f�B���N�g���Ɉړ�����
���B
cd /usr/lib/gcc-lib/i486-linuxglibc2/2.7.2.2
�����āA���̃f�B���N�g���̃t�@�C��specs��ҏW���܂��B���̃t�@�C���̒�
��/lib/ld-linux.so.1��/lib/ld-linux.so.2 �ɕύX���܂��B��
���A%{...:-lgmon}�Ə����ꂽ������폜���܂��B glibc�̓v���t�@�C�����O
��gmon���C�u������g�p���Ȃ�����ł��B�T���v����specs�t�@�C����
``specs�t�@�C���̃T���v��'' �Z�N�V������Q�Ƃ��Ă��������B
4.4. �w�b�_�[�t�@�C���ւ̃����N�̃A�b�v�f�[�g
�V�����f�B���N�g���̉��ɁA�ق��̃f�B���N�g���ւ̃����N��܂��B
cd /usr/i486-linuxglibc2/include
ln -s /usr/src/linux/include/linux
ln -s /usr/src/linux/include/asm
ln -s /usr/X11R6/include/X11
ncurses�ȂǁA�V�����f�B���N�g���Ƀw�b�_�[�t�@�C������ׂ����C�u��
����g�p���Ă���ꍇ�A/usr/include����t�@�C����R�s�[���邩�����N��
��܂��B�i���C�u�����ɂ��ẮAglibc2�ƈꏏ�ɍăR���p�C�����Ȃ��ƓK��
�ɓ��삵�Ȃ���̂�����܂��B���̏ꍇ�A���̃p�b�P�[�W��P�ɃR���p�C����
��/usr/i486-linuxglibc2�ɃC���X�g�[�����Ă��������j
4.5. �C���X�g�[�������̊m�F
�C���X�g�[��������m�F���邽�߂ɁA���̃v���O������glibc.c�t�@�C���Ƃ�
�č쐬���Ă��������B
#include <stdio.h>
main()
{
printf("hello world!\n");
}
�����āA"-b <base install directory> -nostdinc -I<install direc-
tory>/include -I/usr/lib/gcc-lib/<new system dir>/ <gcc ver-
sion>/include" �Ƃ����I�v�V�����ŃR���p�C�����܂��B
% gcc -b i486-linuxglibc2 -nostdinc -I/usr/i486-linuxglibc2/include -I/usr/lib/gcc-lib/i486-linuxglibc2/2.7.2.2/include glibc.c -o glibc
�i�j���̃V�X�e���ł͉��L�̂悤�ɂ��Ȃ��Ɛ����������N����܂���ł�
���B gcc -b i686-linuxglibc2 -nostdinc -I/usr/i686-linuxglibc2/include
-I/usr/local/lib/gcc-lib/i686-linuxglibc2/2.8.1/include glibc.c -o
glibc -L/usr/i686-linuxglibc2/lib �i-L�I�v�V�������݂��j
ldd��g���āA�v���O�������Â�libc�ł͂Ȃ��V����glibc2�Ƀ����N���ꂽ��
�Ƃ�m�F���܂��B
% ldd glibc
libc.so.6 => /usr/i486-linuxglibc2/lib/libc-2.0.6.so (0x4000d000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
�R���p�C�����ł��āA�����������N���m�F�ł��A���s�����Ƃ��� "hello
world!"�Ƃ������b�Z�[�W���o��A�C���X�g�[���͐����ł��B
5. ���C����C���C�u�����Ƃ��ẴC���X�g�[��
���̃Z�N�V�����ł́Aglibc2��C����C���C�u�����Ƃ��ăC���X�g�[������
���@������܂��B�V�����R���p�C�������v���O�����́A�I�v�V�����w���
���Ȃ�����A���̃��C�u�����Ƀ����N�����悤�ɂȂ�܂��B
Redhat��Debian��g���Ă��āA�K��eb�t�@�C����_�E�����[�h�����̂ł���
�ARedhat��Debian�̃C���X�g�[���C���X�g���N�V��������������B���̏�
���A���̃Z�N�V�����͓ǂݔ���Ă��܂��܂���B
5.1. �\�[�X����̃��C�u�����\�z
���̐߂ł́A�\�[�X����glibc2�ƃA�h�I����R���p�C�������@�������
���B�œK�����x����ݒ��ύX�������ꍇ�A����уo�C�i���p�b�P�[�W�̂Ȃ�
�ꍇ�A���C�u�����̃R���p�C�����K�v�ɂȂ�܂��B
5.1.1. �K�v��
o ��150MB�̋f�B�X�N�e��
o GNU make 3.75
o gcc >= 2.7.2 (2.7.2.1���]�܂���) (�F gcc-2.8.1�ȏオ�K�v�ł��B)
o binutils 2.8.1 (alpha�p�ɂ�snapshot���K�v)
o bash 2.0
o autoconf 2.12 (configure.in��ύX����ꍇ)
o texinfo 3.11
i586@133, 64 MB RAM�̃V�X�e���ł́A�S���C�u�����ƃA�h�I���̃R���p�C��
�ɖ�3���Ԃ�����܂��B�t��������i686@200�ł́A��30���ł��B
5.1.2. �\�[�X�̓W�J
�R���p�C�����邽�߂ɂ́A�A�[�J�C�u��W�J���ă\�[�X����o���K�v������
�܂��B�ŗǂ̕��@�͎��̒ʂ�ł��B
tar xzf glibc-2.0.6.tar.gz
cd glibc-2.0.6
tar xzf ../glibc-linuxthreads-2.0.6.tar.gz
tar xzf ../glibc-crypt-2.0.6.tar.gz
tar xzf ../glibc-localedata-2.0.6.tar.gz
����ɂ��Alinuxthreads, crypt, localedata�f�B���N�g����glibc-2.0.6
�f�B���N�g����ɒu����Aconfigure�������̃A�h�I����F���ł���悤��
�Ȃ�܂��B
5.1.3. �ݒ�
glibc-2.0.6�f�B���N�g�����compile�Ƃ����f�B���N�g����쐬���A������
cd���āA�S�Ă̍�Ƃ�̒��ōs���܂��B����ɂ��A�C���X�g�[����̏���
��Ƃ��y�ɂȂ�܂��B�i�v���O�����J���҂��A'make clean'��܂����S�ɓ���
�悤�ɂ͂��Ă��Ȃ�����ł��B�j
mkdir compile
cd compile
����../configure��s���܂��B�A�h�I���p�b�P�[�W��g�����߂ɂ́A
--enable-add-ons=linux-threads,crypt,localedata�̂悤�ɂ��ăI�v�V����
�w�肷��K�v������܂��B�C���X�g�[������p�X��w�肷��K�v���邩��
��܂���B�W���I��linux�f�B�X�g���r���[�V�����ɍ��킹��ɂ́A
--prefix=/usr��w�肵�܂��B�ilinux�V�X�e����/usr��prefix�Ƃ��Ďw�肳��
���configure��libc.so��ق��̏d�v�ȃ��C�u������/lib�Ɋi�[���A�ق���
path��K�ɒ������܂��B�j�ŏI�I�ȃR�}���h���C���͎��̂悤�ɂȂ�ł���
���B
../configure --enable-add-ons=linuxthreads,crypt,localedata --prefix=/usr
5.1.4. �R���p�C��
�R���p�C���ƃ`�F�b�N�͎��̒ʂ�ł��B
make
make check
5.2. �C���X�g�[���̏���
�\�[�X����C���X�g�[������ꍇ�ɂ���A�o�C�i������C���X�g�[������ꍇ
�ɂ���A�V�������C�u�����̏����̂��߂ɁA�������̃t�@�C����Ҕ��K
�v������܂��B�V�����R���p�C�������v���O�����́Aglibc�Ƀ����N�����
�����A�Â��v���O�����̂����A���I�Ƀ����N���ꂽ��̂�libc5�Ɉˑ����Ă�
�邽�߁A�P�ɌÂ��o�[�W������㏑������킯�ɂ͍s���Ȃ��̂ł��B
1. �Â��t�@�C����Ҕ�邽�߂̐V�����f�B���N�g����쐬���܂��B
mkdir -p /usr/i486-linuxlibc5/lib
2. �Â��w�b�_�[�t�@�C����/usr/include����Ҕ���܂��B
mv /usr/include /usr/i486-linuxlibc5/include
3. �V����include�f�B���N�g����쐬���A�ق���include�f�B���N�g���ւ̃�
���N��쐬���܂��B
mkdir /usr/include
ln -s /usr/src/linux/include/linux /usr/include/linux
ln -s /usr/src/linux/include/asm /usr/include/asm
ln -s /usr/X11R6/include/X11 /usr/include/X11
ln -s /usr/lib/g++-include /usr/include/g++
�f�B�X�g���r���[�V�����ɂ��ẮA�����N�������K�v�����邩����
�܂���B���Ȃ��Ƃ�ASlackware��g++�w�b�_�[�t�@�C����
/usr/local/g++-include�ɒu���Ă���ADebian�ł�/usr/include/g++�ɒu����
�����āA/usr/lib/g++-include��/usr/include/g++�Ƀ����N���Ă���܂��B��
�҂̏ꍇ�́A����g++ include�f�B���N�g����/usr/include�ɖ߂��Ă�������
���ǂ��ł��傤�B
��L�ȊO�̑S�Ẵw�b�_�[�t�@�C������N�̉�s���܂��Bncurses�Ȃ�
�̔�W�����C�u�����̂������́A�t�@�C�����Ǝ���include�f�B���N�g����
�̃����N��/usr/include�ɒu���Ă��܂��B�������������C�u������K�Ɏg�p
���邽�߂ɂ́A�����̃t�@�C������N�̐ݒ��K���s���Ă���K�v��
����̂ł��B
4. �V�������C�u�����f�B���N�g���i/usr/i486-linuxlibc5/lib�j��
/etc/ld.so.conf�t�@�C���̐擪�ɉ����܂��B glibc���C���X�g�[�����ꂽ
���Ɗ�ȃ��b�Z�[�W���o��̂��邽�߂ɂ́A ld.so 1.8.8�ȍ~��
�g���������悢�ł��傤�B
5. �Â�C���C�u������V�����f�B���N�g���Ɉړ�/�R�s�[���܂��B
mv /usr/lib/libbsd.a /usr/i486-linuxlibc5/lib
mv /usr/lib/libc.a /usr/i486-linuxlibc5/lib
mv /usr/lib/libgmon.a /usr/i486-linuxlibc5/lib
mv /usr/lib/libm.a /usr/i486-linuxlibc5/lib
mv /usr/lib/libmcheck.a /usr/i486-linuxlibc5/lib
mv /usr/lib/libc.so /usr/i486-linuxlibc5/lib
mv /usr/lib/libm.so /usr/i486-linuxlibc5/lib
cp /lib/libm.so.5.* /usr/i486-linuxlibc5/lib
cp /lib/libc.so.5.* /usr/i486-linuxlibc5/lib
/usr��/�Ƃ͕ʂ̃p�[�e�B�V�����ɂ���ꍇ�A libm.so.5��libc.so.5�́A�ړ�
�����ɃR�s�[���Ă��������B������linux��N������ۂɎg����v���O��
�����K�v�Ƃ���t�@�C���ł���A���[�g�h���C�u�p�[�e�B�V�����ɂȂ��Ă͂�
��Ȃ�����ł��B
6. /usr/lib/*.o�t�@�C����V�����f�B���N�g���Ɉړ����܂��B
mv /usr/lib/crt1.o /usr/i486-linuxlibc5/lib
mv /usr/lib/crti.o /usr/i486-linuxlibc5/lib
mv /usr/lib/crtn.o /usr/i486-linuxlibc5/lib
mv /usr/lib/gcrt1.o /usr/i486-linuxlibc5/lib
7. ���C�u������ړ�������A���C�u�����L���b�V����X�V���܂��B
ldconfig -v
5.3. �o�C�i���p�b�P�[�W����̃C���X�g�[��
glibc��R���p�C���σo�C�i����g���ăC���X�g�[������Ƃ��́A���̂悤��
����K�v������܂��B
cd /
gzip -dc glibc-2.0.bin.i386.tar.gz | tar tvvf -
gzip -dc glibc-crypt-2.0.bin.i386.tar.gz | tar tvvf -
ldconfig -v
�قȂ����A�[�L�e�N�`�����o�[�W������g�p���Ă���ꍇ�́A�K���ȃt�@�C��
���ɓǂݑւ��Ă��������B
5.4. �\�[�X����̃C���X�g�[��
���C�u������\�[�X����C���X�g�[������ɂ͎��̂悤�ɂ��܂��B
make install
ldconfig -v
5.5. gcc specs�t�@�C���̍X�V
�C���X�g�[���̍ŏI�i�K�́A�o�C�i������̏ꍇ��\�[�X����̏ꍇ��A����
�N���K�ɍs����悤�ɂ��邽�߂�gcc specs�t�@�C���̍X�V�ł��B gcc��
�ǂ�specs�t�@�C����g���Ă��邩�ׂ�ɂ́A���̂悤�ɂ��Ă��������B
% gcc -v
reading specs from /usr/lib/gcc-lib/i486-unknown-linux/2.7.2.2/specs
gcc version 2.7.2.2
��̗�ł́Ai486-unknown-linux���V�X�e�����A2.7.2.2���o�[�W�����ԍ���
���B/usr/lib/gcc-lib/<�V�X�e��>��Â��V�X�e���f�B���N�g���ɃR�s�[����
���B
cd /usr/lib/gcc-lib/
cp -r i486-unknown-linux i486-linuxlibc5
���ɁA���̃f�B���N�g���ƃo�[�W�����f�B���N�g���Ɉړ����܂��B
cd /usr/lib/gcc-lib/i486-unknown-linux/2.7.2.2
�����āA���̃f�B���N�g����specs�t�@�C����R�s�[���܂��B���̃t�@�C����
�ŁA/lib/ld-linux.so.1�Ə����ꂽ������/lib/ld-linux.so.2�ɕύX���܂��B
�܂��A%{...:-lgmon}�Ƃ����L�q��S�č폜���܂��Bglibc�̓v���t�@�C�����O
��gmon���C�u������g��Ȃ����߂ł��Bspecs�t�@�C���̗�� ``specs�t�@�C
���̗�'' �߂�Q�Ƃ��Ă��������B
5.6. �C���X�g�[�������̊m�F
�C���X�g�[��������m�F���邽�߂ɁA���̃v���O������t�@�C���Ƃ��č쐬��
���������B
#include <stdio.h>
main()
{
printf("hello world!\n");
}
�����āA�R���p�C�����܂��B
% gcc glibc.c -o glibc
ldd��g���āA�v���O�������A�Â�libc�łȂ��V����glibc2�Ƀ����N����Ă�
�邱�Ƃ�m�F���܂��B
% ldd glibc
libc.so.6 => /lib/libc.so.6 (0x4000e000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
�R���p�C�������܂��s���A�v���O������s�����Ƃ���"hello world!"�ƕ\��
�����C���X�g�[�������ł��B
�i�jmake ��g�p���ăR���p�C������ꍇ�A�ݒ�ɂ���܂����A
/usr/bin/cc���Ă�ă����N�����܂��s���Ȃ����Ƃ�����܂��B���̏�
���Agcc��/usr/bin/cc�ɃR�s�[���邩�A���ϐ��i�܂���make�}�N���jCC��
gcc��w���悤�ɕύX���Ă��������B
6. ���C�����C�u�����łȂ�libc��g�����R���p�C��
�v���O�����̃R���p�C���̍ہA���C�����C�u�����ȊO�̃��C�u������g�Ƃ���
���Ƃ���ł��傤�B���̃Z�N�V�����ł́A���̂悤�ȏꍇ�ɂǂ�������ǂ�
�̂���A�O��2�߂̃f�B���N�g���ƃC���X�g�[������g���Đ����܂��B����
�Ɏg�p����Ƃ��́A�e���̐ݒ�ɍ��킹�Ė��O��ǂݑւ��ĉ������B
6.1. ���C���łȂ�libc��g���ꍇ�̒���
�V�X�e���u�[�g�v���Z�X���g�p����v���O������R���p�C�����鎞�́A���ӂ�
�K�v�ł��B�v���O���������I�Ƀ����N����Ă��āA�����[�g�łȂ��p�[�e�B
�V�������}�E���g�����O�Ɏg�p�����v���O�����ł���ꍇ�ɂ́A�����N��
���S�Ẵ��C�u���������[�g�p�[�e�B�V�����ɂȂ��Ă͂Ȃ�܂���B�O�߂�
���C�����C�u�����Ƃ���glibc��C���X�g�[������ꍇ�̐��ɏ]���A��
��libc�̓��[�g�p�[�e�B�V�������/lib�Ɏc�����̂ŁA�u�[�g�v���Z�X���A
�S�Ẵv���O�������K���ɓ��삷��͂��ł��B�������A/usr���ʂ̃p�[�e�B
�V�����ɂ����āAglibc��e�X�g���C�u�����Ƃ���/usr/i486-linuxglibc2�ɃC
���X�g�[�������ꍇ�A glibc��g���ăR���p�C�����ꂽ�V�����v���O����
�́A/usr �p�[�e�B�V�������}�E���g�����܂œ��삵�܂���B
6.2. �e�X�g�pglibc��g�����R���p�C��
�e�X�g�p�ɃC���X�g�[�����ꂽglibc��g���ăR���p�C������Ƃ��́Aglibc
��include��w���悤��include�p�X��Đݒ肷��K�v�������
���B"-nostdinc" �w��ɂ��āA�ʏ�̃p�X����
���A"-I/usr/i486-linuxglibc2/include" ��w�肷�邱�ƂŁAglibc
include��w��ł��܂��Bgcc include��w�肷��w�肷��K�v������܂��B��
���/usr/lib/gcc-lib/i486-linuxglibc2/ 2.7.2.2/include �ɂ���܂��B(�e
�X�g�p���C�u������i486-linuxglibc2�� gcc�̃o�[�W������2.7.2.2�̏ꍇ�j
�e�X�g�pglibc�փv���O��������N����ꍇ�́Agcc�̐ݒ��w�肷��K�v��
����܂��B����ɂ́A"-b i486-linuxglibc2"�I�v�V������g���܂��B
�����̃v���O�����ł́Amakefile��$CFLAGS�� $LDFLAGS�I�v�V������L�̂�
���ɐݒ肷�邱�ƂŐV�����I�v�V�����̎w�肪�ł��܂��B
CFLAGS = -nostdinc -I/usr/i486-linuxglibc2/include -I/usr/lib/gcc-lib/i486-linuxglibc2/2.7.2.2/include -b i486-linuxglibc2
LDFLAGS = -b i486-linuxglibc2
configure�X�N���v�g��g���Ă���ꍇ�Aconfigure��s����O��
$CFLAGS��$LDFLAGS�V�F���ϐ����`���܂��icsh/tcsh�̏�
��env/setenv,sh/bash���ł�set/export��g�p�j�B����ɂ��Đ�������
��makefile�͓K��$CFLAGS�� $LDFLAGS��܂�ł���͂��ł��B�������A�S��
�̃X�N���v�g�������̕ϐ���m�F����킯�ł͂Ȃ��̂ŁA configure��s
������Amakefile��m�F���A�K�v�ɉ����ĕҏW���Ă��������B
�R���p�C�����悤�Ƃ��Ă���v���O�������Agcc�݂̂�g�p���Ă���Ƃ���
�icpp��binutils�f�B���N�g���ڎg�p���Ȃ���j�A���L�̃X�N���v�g��
�g���Ζ���S�I�v�V������w�肹���ɍς݂܂��B
#!/bin/bash
/usr/bin/gcc -b i486-linuxglibc2 -nostdinc \
-I/usr/i486-linuxglibc2/include \
-I/usr/lib/gcc-lib/i486-linuxglibc2/2.7.2.2/include "$@"
You can then use this script instead of "gcc" when compiling. gcc�̑�
���ɂ��̃X�N���v�g��g�p���Ă��������B
6.3. glibc�����C�����C�u�����̂Ƃ���libc5��g�����R���p�C��
glibc��C�����C�u�����Ƃ��ăC���X�g�[�����Ă���Ƃ��ɁA�Â����C�u��
����g���ăv���O������R���p�C������ɂ́A�Â����C�u�����p�Ƀp�X��Đ�
�肷��K�v������܂��B����ɂ́A"-nostdinc"�I�v�V������w�肵�Ēʏ��
�p�X���ɂ��A"-I/usr/i486-linuxlibc5"��g����glibc(*) ��include�f�B
���N�g����w�肵�܂��B�܂��A"-I/usr/lib/gcc-
lib/i486-linuxlibc5/2.7.2.2/include" ��w�肵��gcc���L��include�t�@�C
���f�B���N�g����w�肵�܂��B�Ȃ��A�p�X���͊e���̐ݒ��gcc�o�[�W������
���킹�Ē������Ă��������B
(*�j libc5�̊ԈႢ�Ǝv���܂��B
�Â�libc�Ƀv���O��������N����ɂ́Agcc�̐ݒ��w�肷��K�v�������
���B����́A�I�v�V����"-b i486-linuxlibc5"��w�肷���OK�ł��B
�����̃v���O�����ł́Bmakefile����$CFLAGS�� $LDFLAGS�ɐV�����I�v�V����
�����悢�͂��ł��B
CFLAGS = -nostdinc -I/usr/i486-linuxlibc5/include -I/usr/lib/gcc-lib/i486-linuxlibc5/2.7.2.2/include -b i486-linuxlibc5
LDFLAGS = -b i486-linuxlibc5
configure�X�N���v�g��g���Ă���Ƃ��́Aconfigure���s�O�ɁA�V�F���ϐ�
$CFLAGS��$LDFLAGS���`���܂� (csh/tcsh�ł�env/setenv, sh/bash����
��set/export��g�p�j�B�����������ꂽmakefile�ɂ́A�K��$CFLAGS��
$LDFLAGS���L�q����Ă���͂��ł����A�S�Ă�configure�X�N���v�g�������
�s���Ă����킯�ł͂Ȃ��̂ŁA configure���s��makefile��m�F���A�K�v��
�����ĕҏW���Ă��������B
���A�R���p�C�����悤�Ƃ��Ă���v���O������gcc�݂̂�Ăяo���Ă����
��icpp��binutils�ڕK�v�Ƃ��Ă��Ȃ��Ȃ�j�A���L�̃X�N���v�g��
�g���A����I�v�V������w�肵�Ȃ��Ă��݂܂��B
#!/bin/bash
/usr/bin/gcc -b i486-linuxlibc5 -nostdinc \
-I/usr/i486-linuxlibc5/include \
-I/usr/lib/gcc-lib/i486-linuxlibc5/2.7.2.2/include "$@"
You can then use this script instead of "gcc" when compiling.
�R���p�C������"gcc"�̑���ɂ����g���Ηǂ��킯�ł��B
7. C++�v���O�����̃R���p�C��
libg++�͐��w���C�u�����̈ꕔ��g�p���Ă���̂ŁAlibm�Ƀ����N����Ă���
���B������libg++�͌Â����C�u������g�p����悤�ɃR���p�C������Ă����
���傤����Alibg++��glibc��g���čăR���p�C�����邩�A�o�C�i���ł��
����K�v������܂��B�ŐV��libg++�\�[�X�ƁAglibc�Ƀ����N���ꂽ�o�C�i��
�ix86�p�j�� <
ftp://ftp.yggdrasil.com/private/hjl/>�ɂ���܂��B
7.1. �e�X�g�pglibc��g��libg++�̃C���X�g�[��
glibc��e�X�g���C�u�����Ƃ��ăC���X�g�[�������ꍇ�Aglibc�Ɠ����f�B���N
�g����libg++�̃t�@�C����C���X�g�[������K�v������܂��i�O�߂̗�ł�
/usr/i486-linuxglibc2�j�B�o�C�i���p�b�P�[�W����C���X�g�[������ꍇ��
�i�����g�͂��̂悤�ɂ���libg++��R���p�C���������Ƃ�����܂��A��
���̂悤�Ȃ�̂�����Ƃ���A�������߂��܂��j�A�t�@�C����e���|����
�f�B���N�g���ɓW�J���Ă���Ausr/lib�̃t�@�C����<�C���X�g�[����f�B���N
�g��>/lib/�� usr/lib�f�B���N�g���̃t�@�C����<�C���X�g�[����f�B���N�g
��>/lib/�f�B���N�g���ցi�͂��߂�include/g++ �̃����N��폜���Ă�������
��Y��Ȃ��I�j�����āAusr/bin/ �̃t�@�C����<�C���X�g�[����f�B���N�g
��>/bin/�f�B���N�g���ֈړ����܂��B
7.2. ���C�����C�u�����Ƃ���glibc��g���ꍇ��libg++�̃C���X�g�[��
glibc��C�����C�u�����Ƃ��ăC���X�g�[�������ꍇ�ŁAg++�v���O�������
�O��C���C�u�����ƂƂ�Ɏg�p�������Ȃ�A�܂��A�Â�libg++�t�@�C�����
�� libc�f�B���N�g���Ɉړ����܂��B���Ԃ��ԊȒP�ȕ��@�́A�O�߂Ő���
���悤�ɂ���libc5��g����libg++��R���p�C�����ăC���X�g�[�����A����
glibc�ł�ʏ�ǂ���C���X�g�[�����邱�Ƃł��B
7.3. ���C�����C�u�����łȂ�libc��g����C++�v���O�����̃R���p�C��
C++�v���O������C���łȂ�libc�ƂƂ�Ɏg�p�����ꍇ�Ag++��include�f�B
���N�g����include����悤�Ɏw�肷��K�v������܂��B��̗�Ō����A�e
�X�g�pglibc�Ȃ�/usr/i486-linuxglibc2/include/g++�A���C����glibc�Ȃ�
/usr/i486-linuxlibc5/include/g++�ɂȂ�܂��B���̂��߂ɂ͒ʏ�A
$CXXFLAGS�ϐ��w���t�����܂��B
CXXFLAGS = -nostdinc -I/usr/i486-linuxglibc2/include -I/usr/lib/gcc-lib/i486-linuxglibc2/2.7.2.2/include -I/usr/i486-linuxlibc5/include/g++ -b i486-linuxglibc2
8. �o�O���|�[�g
�����C�u�����Ƀo�O������Ǝv���Ƃ��́A�܂���FAQ�ɖڂ�ʂ��Ă�����
���B�ق��̐l�����łɂ��̖�����Ă��āA�ȒP�ȉ���@��������Ă�
�邩����܂���B�܂��AINSTALL�t�@�C�����"GNU C���C�u������C���X�g
�[�����邽�߂̐����c�[�� (Recommended Tools to Install the GNU C
Library)"�̍��ڂ�m�F���Ă��������B�o�O�ɂ��ẮA glibc���g�̂�̂�
�͂Ȃ��A�ق��̃c�[���Ɍ����̂���\�������邩��ł��B
�o�O�������܂��A���ꂪ�{���Ƀo�O���ǂ����m���߂Ă��������B�m�F��
���߂̗ǂ����@�́AGNU C���C�u���������̃��C�u�����Ɠ��������邩��
�����m�߂邱�Ƃł��B�����삪�����Ȃ�A�����炭�Ԉ��Ă���̂͂��Ȃ�
�ŁA�i�K���������Ƃ͌����܂��j���C�u�����͐������̂ł��傤�B����
�łȂ���A���Ԃ��ǂ��炩�̃��C�u�������Ԉ��Ă���̂ł��傤�B
���ɁA <
http://www-gnats.gnu.org:8080/cgi-bin/wwwgnats.pl>�ɍs���A�o�O
�f�[�^�x�[�X��m�F���āA������肪�ςłȂ����ǂ����m�F���܂��B��
�����Ă���o�O�ɂ��ẮA(libc�Ƌ��ɔz�z����Ă���)BUGS��m�F���ׂ���
���B
�V�����o�O���Ƃ������Ƃ��m�F�ł�����A����Č��ł���Œ��̃e�X�g�P
�[�X�͈̔͂܂Ŗ��̕���߂Ă��������BC���C�u�����̏ꍇ�́A�\�Ȍ�
��A��̃��C�u�������Ăяo���ɂ܂Ŗ���߂�ׂ��ł��B����͂���
�Ǔ���Ȃ��ł��傤�B
�ȒP�ȃe�X�g�P�[�X�ɍi�邱�Ƃ��ł�����A�Ō�̃X�e�b�v�̓o�O�����
���Ƃł��B�o�O�����Ƃ��́A�e�X�g�P�[�X�A���ۂɓ���ꂽ���ʂƊ���
����錋�ʁA�����āi������j���̖��̌����ƍl������v���A�e�X�g
�Ɏg�����V�X�e���̎�ށAGNU C���C�u������GNU C�R���p�C���A GNU
Binutils�̃o�[�W�����𑗂��Ă��������Bconfigure�ɂ��Đ������ꂽ
config.status��config.make��܂߂Ă��������B�����́Aconfigure��s
�����Ƃ��̃J�����g�f�B���N�g���ɂ���܂��B
GNU C���C�u�����̃o�O�́AGNU libc�ɕt����glibcbug�V�F���X�N���v�g��
�g���� <
[email protected]>�֑����Ă�������(�Â��A�h���X
<
[email protected]>��܂��g���܂��j�B���邢�́A <
http://www-
gnats.gnu.org:8080/cgi-bin/wwwgnats.pl> ����AGNATS WEB�C���^�[�t�F�[
�X��g���ē��e���邱�Ƃ�ł��܂��B
��Ă⎿��̓��[�����O���X�g <
[email protected]> �֑����Ă���
�����B���Agnewsgroup gnu.bug.glibc ��ǂ�ł��Ȃ��ꍇ�A <bug-glibc-
[email protected]> �ɐ�������A���X�g����邱�Ƃ��ł���
���B
GNU C���C�u�����̃o�O���|�[�g�� <
[email protected]>�ɑ��邱�Ƃ�
��Ă��������B������́AGNU CC�̃o�O���|�[�g�̂��߂̂�̂ł��B GNU
CC�͕ʂ̐l�X�ɂ��ă����e�i���X����Ă���AGNU C���C�u�����Ƃ͕ʕ���
����ł��B
9. specs �t�@�C���̗�
�����ł́Agcc���R���p�C���ƃ����N�Ɏg�p���� glibc2 �p��specs �t�@�C��
�̗��Љ�܂��B���̃t�@�C���́A/usr/lib/gcc-lib/ <�V�����V�X�e��
�f�B���N�g��>/<gcc�̃o�[�W����>�ɂ���܂��B x86�V�X�e����g�p���Ă���
�ꍇ�A���̃Z�N�V�����̓�e��̂܂܃t�@�C���ɃR�s�[����Ηǂ��ł���
���B
*asm:
%{V} %{v:%{!V:-V}} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*}
*asm_final:
%{pipe:-}
*cpp:
%{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{!m386:-D__i486__} %{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}
*cc1:
%{profile:-p}
*cc1plus:
*endfile:
%{!shared:crtend.o%s} %{shared:crtendS.o%s} crtn.o%s
*link:
-m elf_i386 %{shared:-shared} %{!shared: %{!ibcs: %{!static: %{rdynamic:-export-dynamic} %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} %{static:-static}}}
*lib:
%{!shared: %{pthread:-lpthread} %{profile:-lc_p} %{!profile: -lc}}
*libgcc:
-lgcc
*startfile:
%{!shared: %{pg:gcrt1.o%s} %{!pg:%{p:gcrt1.o%s} %{!p:%{profile:gcrt1.o%s} %{!profile:crt1.o%s}}}} crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}
*switches_need_spaces:
*signed_char:
%{funsigned-char:-D__CHAR_UNSIGNED__}
*predefines:
-D__ELF__ -Dunix -Di386 -Dlinux -Asystem(unix) -Asystem(posix) -Acpu(i386) -Amachine(i386)
*cross_compile:
0
*multilib:
. ;
10. ���̑�
10.1. ���̏��
10.1.1. Web�y�[�W
o FSF��GNU C ���C�u�����z�[���y�[�W
<
http://www.gnu.org/software/libc/libc.html>
o Linux��GNU Libc2��g�� <
http://www.imaxx.net/~thrytis/glibc/>
o Linux��glibc-2��C���X�g�[������
<
http://huizen.dds.nl/~frodol/glibc/>
o Debian�ł�libc5����libc6�̈ڍsMini-HOWTO
<
http://www.gate.net/~storm/FAQ/libc5-libc6-Mini-HOWTO.html>
10.1.2. �j���[�X�O���[�v
o comp.os.linux.development.system
o comp.os.linux.development.apps
o linux.dev.kernel
o gnu.bugs.glibc
10.1.3. ���[�����O���X�g
Glibc2 Linux�f�B�X�J�b�V�������X�g
���̃��X�g�͐V����GNU C���C�u�����ł���glibc2��C���X�g�[������
Linux���[�U�Ԃł̏����Ӑ}������̂ł��B�g�s�b�N�͌݊�����
��ALinux/glibc�Z�b�g�ł̃R���p�C���ɂ��Ă̎���̂�̂܂Ŋ܂�
�܂��B�w�ǂ���ɂ́
[email protected]���� subscribe
glibc-linux <���Ȃ���email�A�h���X> �Ə����ă��[���𑗂��Ă�����
���B
10.2. �ӎ�
�f�ڂ������̂قƂ�ǂ́AGNU Libc WEB�y�[�W GNU Libc web page
<
http://www.gnu.org/software/libc/libc.html> ��Ulrich Drepper's
<
[email protected]> glibc2 �A�i�E���X�A����єނ̃R�����g����
�Ƃ��Ă�����̂ł��B Andreas Jaeger <
[email protected]> �́A�o
�O���|�[�g�̐߂ɂ��Ă̏��̈ꕔ����Ă���܂����B
�ȉ��͏�����т��̕����ɂ��Ẵt�B�[�h�o�b�N��Ă��ꂽ�l����
�ł��B
o Allex <
[email protected]>
o Mark Brown <
[email protected]>
o Ulrich Drepper <
[email protected]>
o Scott K. Ellis <
[email protected]>
o Aron Griffis <
[email protected]>
o Andreas Jaeger <
[email protected]>
o Frodo Looijaard <
[email protected]>
o Ryan McGuire <
[email protected]>
o Shaya Potter <
[email protected]>
o Les Schaffer <
[email protected]>
o Andy Sewell <
[email protected]>
o Gary Shea <
[email protected]>
o Stephane <
[email protected]>
o Jan Vandenbos <
[email protected]>
�|��͉��L�̐l�������s���Ă��܂��B
o ������: Allex <
[email protected]>
o �t�����X��: Olivier Tharan <
[email protected]>
o ���{��: Kazuyuki Okamoto <
[email protected]>
(��) ���{��v1.5�ɒu���āA���L�̐l�������珕���Ƌ��͂��܂����B
�i�h�̗��j
o ���{��K <
[email protected]>
o ���쁗���� <
[email protected]>
o ���쁗asahi-net <
[email protected]>
o ��ݗǎ� <
[email protected]>
10.3. �t�B�[�h�o�b�N
�����g�́A����HOWTO������ƁALinux �p glibc2�̃z�[���y�[�W glibc 2
for Linux <
http://www.imaxx.net/~thrytis/glibc> ��ێ����Ă��邱�ƁA
glibc2 ��g���Ă��邱�ƈȊO�Aglibc �v���W�F�N�g�ɂ͊֗^���Ă��܂���B
���[���ő����Ă����₢���킹�ɂ͂Ȃ�ׂ���������悤�w�͂͂��Ă���
��̂́A���� glibc2 �ɂ��Ēm�����\���ɂ���܂���B�t�B�[�h�o�b�N�A��
���A��ĂȂǂ͊��}���܂��̂�
[email protected] ���ɂ��肢���܂��B
(��) ���{��� (v1.5)�Ɋւ��ẮA�����r�� <
[email protected]>�ւ�
�肢���܂��B
Copyright (c) 1997 by Eric Green. (����)
Copyright (c) 1997 by Kazuyuki Okamoto (���{���)
Copyright (c) 1998 by Toshinori Endo (���{���)
���̕�����LDP���C�Z���X�Ɋ�Â��Ĕz�z�\�ł��B