�g�b�v�y�[�W�������u�Ղ낮��݂v�ڎ�
�v���O���}�[�łȂ��l�̂��߂́u���L���C�u�����v�u��
���ō쐬�F2003/01/11
2015�N���_�ł̎Q�l�����NjL�F2015/06/29
- �O����
- �{��
- �㏑�������͊��z
- 2015�N���_�ł̎Q�l�E���E����
2015�N���_�ł́A��萳�m�ŕ�����₷���Q�l���Ђ̏Љ��NjL���܂����̂ŁA����������Ђ��m�F���������B
�@Linux��UNIX�������Ă�����u���L���C�u����(shared library)�v�u���C�u����(library)�v�Ƃ������t�������Ύ���
���܂��B���ɁA�ŐV�ł��g�����ƃ\�[�X�R�[�h���猩�悤���܂˂Ńr���h�A�R���p�C���Ƃ��������邨����s���Ă͌������̂�
�����Ɏ��s�����Ƃ���A�����͏�肭�����Ȃ��Ƃ��̃��O�t�@�C�����Ō���邱�Ƃ�����܂��B
�@�v���O���}�[�ł���A�Ⴆ���߂�Linux�ɐG�����Ƃ��Ă����ƂȂ��ꊴ�������ڂ���ƌ������z���ł��܂��B
�@�������������ʂ� ---�܂�v���O���~���O�Ȃǂɋ����S����������--- �l�����ɂƂ��āA�u���������A����ˁ[��B�v
�Ȑ��E�ł��i�ȑO�A�p�\�R���ɑS�������̂Ȃ��g���Ƀv���O���~���O�֘A�̋�s�𐂂ꂽ�Ƃ���u���{��Řb���Ă���v�ƌ���
�ꂽ���Ƃ�����܂��j�B
�@����̓��ʍu���ł́AWindows����ڂ��Ă���������́A��v���O���}�[���������́u���C�u
�����v�������������҂Ȃ̂��B
�@�����āu/lib�v�A�u/usr/lib�v���̑�ʂ̃V���{���b�N�����N�Ɓulib****.so.***�v�͂�����������
��K���ɘb���Ă��������Ǝv���܂��B
�@����̘b�����ǂ݂��������A�����ł�Linux/UNIX�V�X�e���ɑ���s���������������Ђ�����[�ɂ��ꂵ�����ȁA�ƁB
�@���Ȃ݂Ɂu���ł��܂�������邽�߂ɂ킴�킴�M�d�Ȏ��Ԃ������Ă܂ł���ȏ��S�҂̏����������ǂ܂Ȃ�����̂��v�Ƃ�����
�����݂̓C�^�����ł��̂Ŗ��������Ă��������܂��B
�@�Ԃ����Ⴏ���b�A�u�v���O���}�[�ł��鎩�����g����w�����˂Ă܂Ƃ߂��������g�p���|�[�g�v�Ȃ̂͂����̂��Ƃł�
����E�E�E�B
�Q�l����
�EJF�h�L�������g�uProgram Library HOWTO�v
�E���̑��e��R�}���h��man�y�[�W
�ڎ��ɖ߂�
- �܂��� Windows �ɖ߂�܂��傤�B
- DLL�ɂ��āB
- �Ⴆ�b�����X�ɁB
- Linux/UNIX �ցB
- Linux/UNIX ���L�̂��B
�܂��� Windows �ɖ߂�܂��傤�B
�u�{��v�ɖ߂�
�@������ Linux/UNIX ���[�U�[�͂��̕��͓͂ǂ�ł��Ȃ��A�Ɖ��肵�đ�_�ɂ���U�b�� Windows �Ɉ����߂��܂��B
�@�Ƃ����̂́A�ŋ߂ɂȂ���Linux/UNIX��������n�߂��l�����͑唼�� Windows ���g���Ă���l�����ł��낤����ł��B
�@��ŁBWindows �ł�����ς�u���L���C�u�����v��u���C�u�����v�Ƃ��������t���p������킯�ł��B���A���̂�Linux/UNIX
���ɂ͋��|��������܂���B
�@�܂��͂�����������Ă����܂��傤���B
�@�P�������ɐ�o���܂��B�u���L���C�u�����v��u���C�u�����v�ƌ����Ă���V�����m�̎��̂͒P�Ȃ�t�@�C���ł��B
�@�ŁAWindows �ł́u****.dll�v�ALinux/UNIX �ł́ulib****.so.****�v�Ƃ����t�@�C�����i*�̕����̓��C�u�����̖��O
����������܂��B�܂艽�ł��ǂ��j���u���L���C�u�����v��u���C�u�����v�Ƃ����Ă���V�����m�̖{�̂ł��B
�@�ق�AWindows �Ō����Ƃ���̈�������VB�����^�C�����C�u�����������܂��ɂ���ł���B
�@������ Windows �ɏڂ����Ȃ�ΒN�������ɂ����uDLL�v�Ƃ����̂��AWindows �ł́u���L���C�u�����v�ł��i��q���܂�
��DLL�t�@�C���́u���C�u�����v�Ƃ͂�����ƈႤ�ꍇ������܂��j�B
�@Windows ���n�߂������v���o���ĉ������B��������u****.dll�v���폜���Ă��܂���������ɏd�v�ȃA�v���P�[�V�������N��
���Ȃ��Ȃ����肵�����ƁA����܂��H����Ɠ��l�̎��� Linux/UNIX �ł��N���肤��̂ł��B
�@�����Ƃ�Linux/UNIX�V�X�e���̏ꍇ�A�V�X�e�������Ɋւ�郉�C�u������ root �������Ȃ��Ə����ł��Ȃ��p�[�~�b�V������
�^�����Ă��܂��̂ł�������Ƃ́i�T�[�o�[�}�V���Ȃǂł́j��L�̂悤�Ȍ��ۂ͋N����Ȃ��ł��傤���E�E�E�B
�@Linux/UNIX �ł͂ނ���A�u���C�u�����̃o�[�W�������Ⴄ���߂ɓ��삵�Ȃ��v���ۂ̕������|�I�ɑ����Ǝv���܂��B
�@���������AVB�����^�C�����C�u�����ɂ��uVB5�v�Ƃ��uVB6�v�݂����o�[�W����������܂���
�˂��B�t���[�\�t�g�Ȃǂ𗘗p����Ƃ���VB�����^�C�����C�u�����̃o�[�W����������ē����Ȃ������A�݂����Ȃ��ƁB�o��
���܂���ł����H
�@�b���܂Ƃ܂�܂��A�u���A���L���C�u�����Ƃ����� Windows �Ō����Ƃ���� DLL ���I�v��
���̏�ɂ낤�����������Ē�����Ώ\�����ȁA�ƁB
DLL�ɂ��āB
�u�{��v�ɖ߂�
�@�������Ƃ�Ƃ߂Ȃ��b�ɂȂ��Ă��܂����A�u����Linux/UNIX�ł͋��L���C�u�����ɑ��鋰�|�����o����̂��v���I����Ă��܂���B
�@����͐l�ɂ�肯��ł��̂ŁA�ǂ����i���l���j�ėp�I�i���Ǝv���Ă���j�ȗ��R�������Ă��債�������ɂ͂Ȃ�܂���B
�@�����ł������g���Ȃ����|�����o�����̂���点�Ă��������܂��B
�@�����u���L���C�u�����v�ɏo������̂�����ς�Windows�ŁADLL�t�@�C�����폜���Ă��܂��������ł����B
�@�G���[���b�Z�[�W���\�����ꂽ��ł���ˁB�u****.dll��������܂���v�݂����ȁB
�@��ŁA�i�K���ɂ��j�S�~���ɓ���Ă� ****.dll �����ɖ߂����瓮���悤�ɂȂ�܂����B
�@�����g�̓v���O���~���O������ł����B����C������w��ł��������������Ă��A�uDLL�v�̈Ӗ�����Ƃ��낪�O�C�Ȃ���i���R
������܂߂āj�����I�Ɏ@�������Ă��܂����B���ƂȂ��A�����̃A�v���P�[�V��������g�p�����@�\�̌ł܂��ł͂Ȃ���
�ȁA�ƁB�܂��A�p�\�R���G�����E���ǂ݂��Ă�������������܂������B
�@���������킯�ŁAWindows�ł͑�K�͂ȃA�v���P�[�V�����ɂ�DLL���g���Ă���ȁA�Ƃ������ƁB�����āA�uDLL�t�@�C����
��T�AC:\WINDOWS�f�B���N�g���̒����A�ʂ̃A�v���P�[�V�����̃t�H���_�̒��ɂ���ȁB�v�Ƃ������Ƃ��t���[�\�t�g��
�C���X�g�[����Ƃ���w�т܂����B
�@�������Ƃ��� DLL ���݂̖�肪���܂�N����Ȃ������Ƃ������Ƃ�����̂�������܂���B
�@�ŁALinux/UNIX�ł��B
�@����ς�ŏ��A�u���C�u�������ĉ������v��Ԃł����B
�@C����̒m������A�u����ς�R���p�C�����Ɏg�����̂��낤���v�Ƃ��A�u����Ƃ� Windows ��DLL�݂����Ȃ��̂���납�v�Ƃ��B
�@���� Windows �ɂ����āi���Ƀv���O���~���O�ɉ����āj�u���C�u�����v�Ɓu���L���C�u�����v�͑����Ӗ����Ⴄ�V�����m
�Ȃ̂ł��i�ڍׂ͌�q�j�B
�@���ꂪ�ALinux/UNIX�ł͂����Ԃ�Ƃ����፬���Ɏg���Ă��܂��B���̎��_�ł��łɎ�̍����������N�����Ă��܂����B
�@�ɂ߂��� /lib �f�B���N�g�����ɂ����ʂ́ulib****.so.****�v�t�@�C���Ƃ���ւ̃����N�B
�@��������Ɏ����܂��Bls -l ����K���Ɉ��������Ă��������ł��B
lrwxrwxrwx 1 root root 11 9�� 10�� 07:25 libpam.so -> libpam.so.0*
lrwxrwxrwx 1 root root 14 9�� 10�� 07:25 libpam.so.0 -> libpam.so.0.75*
-rwxr-xr-x 1 root root 38656 4�� 28�� 2002 libpam.so.0.75*
�@�ǂꂪ�ǂ������N���Ă�̂������ς蕪�����I�I�Ƃ������A�Ȃ�ł킴�킴����ȂɃ����N����K�v��
����킯�I�H
�@�����N��Windows�Ō����Ƃ���̃V���[�g�J�b�g�ɂ�����܂��B
�@�ł����E�E�E�Ȃ�ł���ȂɃ����N���Ă�̂��A�S����ł����B���܂ŁB
�@�������ł��ˁB/lib, /usr/lib, /usr/local/lib �ƕ��U���Ă��܂��Ă���E�E�E�B
�@Windows �Ƌ��L���C�u�����̔z�u�ɑ���N�w���܂�ňقȂ��Ă��܂��B
�@Windows �ł�DLL�͑�� C:\WINDOWS(NT/2000�ł� C:\WINNT)���A�A�v���P�[�V�����ŗL�̃f�B���N�g���ɂ܂Ƃ߂��܂��B
�@�Ƃ��낪 Linux/UNIX �ł��A�v���ŗL���낤�Ɖ����낤�ƌ����Ȃ��� /lib, /usr/lib �f�B���N�g���ɂ����܂�Ă�
�̂ŁA���U���Ă��܂��ĕ�����Â炩������ł��B
�@�����A������Â炩�����킯�ł͂���܂���B�I������ /lib, /usr/lib, /usr/local/lib �̎O���������킯�ł�����B
�@�ǂ��炩�Ƃ�����
�������������������B
�@�Ƃ����킯�ł��B�S�Ă��u���ƂȂ��z���͂����ǁE�E�E�ł����ł����Ȃ��Ă�́H�v�Ƃ����^��Ŗ��ߐs������Ă���
�킯�ł��B
�@����Ȃ킯�ŁAJF�̃h�L�������g�ɏo����������܂ł����Ƃ�����₵���s���Ƃ������C���������� Linux/UNIX �̋��L���C�u����
�ɂ͂������킯�ł��B
�܂� Linux/UNIX �̓N�w�Ɋ���Ă��Ȃ������B
�@���ꂽ�҂����ł��A���̐��E�B��U�����i���]�Ԃ����߂Ĉ�l�ŏ���悤�ɂȂ����q���̂悤�Ɂj���p��V���������ւ�
�`�������W�ւ̓����J���܂����A���Ȃ��Ƃ��ڂ̑O���ɂ̈���炢�͐��������͂��ł��B
�@�Ƃ����킯�ŁA���낻��u���[���[��A���C�u�������ĂȂ�Ȃ�I�I�I�v�Ɗ��������Ȃ���
�������ł��傤���B�ł́B�Ⴆ�b��p���ă��C�u�����̖{������点�Ă��������܂��B
�Ⴆ�b�����X�ɁB
�u�{��v�ɖ߂�
�@���͍���ϋ��삵�Ă��܂��B�Ƃ����̂́A�����g���܂ł���ӂ₾�����u���C�u�����v�u���L���C�u�����v�𑊓����퐶����
�Ⴆ���`�ʼn���ł���@��ɏo�������ł��B�����̃��[�U�[���S�̋��ŕ����ċ���ł��낤�A���̓�ɂ��ĂȂ����܂�
����قǂ킩��₷���Ⴆ���p�����Ȃ������̂��s�v�c�Ɏv���i�ȉ��߂�ǂ��̂ō폜�j
�@���C�u���������O�ɁA�܂����������݂Ȃ�����g���Ă���u�A�v���P�[�V�����\�t�g�v�Ƃ͉��Ȃ̂��̐�������n�߂܂��傤�B
�@�A�v���P�[�V�����\�t�g�A�T�[�o�[�A�f�[�����E�E�E�B�F�X�Ăі��͂���܂����A��ʂɃ\�t�g�E�F�A�{�̂Ƃ���Ă���t�@�C����
Windows�ɂ��ALinux/UNIX �ɂ����݂��܂��B
�@��[�����Windows�ł̓A�C�R�����_�u���N���b�N����ƃA�v���P�[�V�������N������t�@�C���Ŋg���q���uEXE�v�̂�B
�@Linux/UNIX�̏ꍇ�̓V�F�����璼�ڑł����ނ��Ƃɂ�艽�炩�̃\�t�g���N������t�@�C���ł��B
�@�������u���s�`���̃t�@�C���v�Ƃ��Ă�Ă��܂��B
�@�Ԃ����Ⴏ���b�A�p�\�R����CPU�������ł��錾��ŏ����ꂽ�����菇���ł��B
�@���̃A�v���P�[�V�����������ǂ����邩�B������L�q�����菇�������s�`���t�@�C���ł��B
�@CPU�܂蒆���������u�͑S�Ă𐔒l�ŏ������܂��B����ڐl�Ԃ��������Ƃ���ɂ͂ƂĂ��Ȃ��m���ƋZ�ʂ��K�v�ɂȂ�܂�
�i�܂�ɂ��������Ă̂��Ă��܂��l������܂��BOS�̊J���ҒB�ł��j�B
�@�Ƃɂ����ACPU�ɂ��������錾��Łu�ŏ��ɂ��[����A���ǁ[����A�������[�U�[�����̃{�^���N���b�N�����炱�[����E�E�E�v
�Ƃ����������菇�������A�Ȃ����t�@�C�����u���s�`���̃t�@�C���v�ƌĂ����̂ł��B
�@����͗����Ō����Έ��̃��V�r�A�E�l����Ȃ���̐v�}�ɂ�����܂��B
�@�ŁA�������炪�b�̖{��ł��B
�@�����Ƃ��킩��₷�����V�s�i�܂��͐v�}�j����̃��V�s�i�܂��͐v�}�j�ɁA�K�v�ȏ����菇�����ꏑ����Ă���
��Ԃł��傤�B���̃��V�s��������A��̎g��������W���K�C���̔�̌������A���܂��ɐH��̌ォ���Â����@�܂őS�čڂ��Ă���
�킯�ł��B
�@�Ƃ��낪�A�S�Ẵ��V�s�ɑ��Ă������������܂ŋL�q����̂́i�������̃��V�s�����ŏo���Ă���Ȃ�j���̖��ʌ����ł����A
����������Ă���ƟT�������Ȃ�܂��B
�@�����ŁA��̈������L���x�c�̐����@�ȂǁA�w�ǂ̃��V�s�ł��悻���ʂ��Ă��镔�����o���܂��B
�@���̔�����������ʕ����̃��V�s�������A���C�u�����ɂ�����܂��B
�@�������E�E�E���Ƃ̃��V�s�ɁA�u�����͑��̃��V�s�ł����ʂɎg���Ă镔��������蔲������B�v�Ƃ�������������
�ǂ��Ȃ�ł��傤���B���Ƃ��u�O�����낵�v�Ɋւ��镔�����蔲����Ă����ԂŁA�u�����ŎO�����낵�ɂ��܂��B�v
�ȂǂƂ����L�q�����V�s�ɏo�Ă�����ǂ��Ȃ�ł��傤�B
�@�l�ԂȂ�u�ǂ����ɏ�����ĂȂ��������ȁv�Ƒ��̃��V�s���߂���܂����ACPU�͂��������������ʼn����l����\�͕͂��喳���[��
�ł��i���ɂ���悤�Ɍ����Ă��A����̓��V�s�ɂ����U�镑���悤�Ɏw����������Ă�������ł��j�B
�@�Ƃ����킯�ŁA�����蔲���ꂽ���ʕ����i���C�u�����j��������Ȃ���CPU�́u����Ȃ��ƒm��܂����B�v�ƃG���[��
�������Ă���܂��B
�@����̗�Ȃ�u�O�����낵�H�ǂ����́A����B�v�Ǝ����Œ��ׂ������ɕ����Ă���A���܂��������̏ꍇ�A���̂܂܂��C��
�������ă��V�s�̗�������낤�Ƃ���̂��~�߂Ă��܂��܂��B
�@���̂悤�ȂƂ��A�������u�O�����낵���Ă̂͂��������B�v�Ƌ�������@�͂����ƂR�ʂ肠��܂��B
�P�D�l�ԑ��ŗ\�߁A���V�s�Ɂu�O�����낵�v�̕������ЂƂ��œ\��t���Ĕ�����Ȃ��悤�Ɉ�̉����Ă���
CPU�Ƀ��V�s��n���B
�Q�D���V�s�ɁA�u�O�����낵�ɂ��Ēm�肽����ǂ������̖{�I�̂��������t�@�C���ɍڂ��Ă���v�ƁA�{�̂�
���V�s���`���������t�������Ă���CPU�ɓn���B
�R�D�u�O�����낵�v�̋L�q������鎞�_�ł悤�₭�u�����̖{�I�̂��������t�@�C���ɍڂ��Ă���v
�Ƃ����L�q��t�������Ă���CPU�ɓn���B
�@���ɂQ�D�ƂR�D�̈Ⴂ�ɂ��Ē��ӂ��ĉ������B�Q�D�ł͗\�ߋ��ʕ����̃��V�s�̑��݉ӏ����`���ŁA�܂Ƃ߂������t����
�����܂��B�R�D�ł́A���ʕ������g���i�ɂȂ��ď��߂����̋��ʕ����̑��݉ӏ��������Ă��܂��B
�@���ۂɂ͂���ȕ��ȃ��V�s��n�����ƂɂȂ�܂��B
�P�D | �Q�D | �R�D |
�ޗ��F�T���}��C
�菇�P�F�������܂��B
�E�E�E
�菇�Q�F�T���}���O�����낵�ɂ��܂��B
�����̂��A���K���̕�����...
...
...
�菇�R�F...
|
�E��̈�����ɂ��Ă͂����������O�̃t�@�C���ɏ����t���Ƃ��܂����B
�E�O�����낵�̕��@�ɂ��Ă͂���Ȗ��O�̃t�@�C���ɏ����t���Ƃ��܂����B
�ޗ��F�T���}��C
�菇�P�F�������܂��B
�菇�Q�F�T���}���O�����낵�ɂ��܂��B
�菇�R�F...
|
�ޗ��F�T���}��C
�菇�P�F�������܂��B
�E��̈�����ɂ��Ă͂��̖��O�̃t�@�C�����ɁB
�E�܂��A����ʕ�����������ꍇ��������̖��O�̃t�@�C���ɏ����t���Ă���܂��B
�菇�Q�F�T���}���O�����낵�ɂ��܂��B
�E�O�����낵�̕��@�ɂ��Ă͂���Ȗ��O�̃t�@�C�����Q�ƁB
�菇�R�F...
|
�@�܂��A����Ȋ����ł��B���ɂR�D�ŁA���̂Ƃ��̏����ɂ���ĎQ�Ɛ��ς��Ă������ɒ��ڂ��ĉ������B
Linux/UNIX �ցB
�u�{��v�ɖ߂�
2015�N���_�ł́A��萳�m�ŕ�����₷���Q�l���Ђ̏Љ��NjL���܂����̂ŁA����������Ђ��m�F���������B
�@�܂��A�P�D�̃��V�s�ɂ��čl���Ă݂܂��傤�B
�@��Ԃ��ꂪ�u�蔲���v�ȃ��V�s�ł�����܂��B�P�ɋ��ʕ���������Ɠ\��t���������ł�����B
�@�����A���������̃��V�s�ɂ��������������Ƃ�����Ƃǂ��Ȃ�ł��傤�B���V�s�����x�ɋ��ʕ��������������\��t���Ă���
��ł�����A���̃��V�s����CPU�ɓn���Ȃ��̂ł�������ł��Ȃ��ł��傤���A���S�̃��V�s��CPU�ɓn�����ɂȂ�ƁA
�d�������̖��ʂ͖����ł��Ȃ��Ȃ��Ă��܂��B
�@���ɂ����̎O�����낵�̕��@�͎����̉Ƃł͏o��������ł����Ă��i��̎�ނ�E�l�̘r�O�Ȃǁj�A�ʂ̉ƂɎ����Ă����Ă�
�o����Ƃ͌���܂���B
�@�����łQ�D�̏o�Ԃł��B���ʕ����������t�����t�@�C������\�ߖ`���Ń��X�g���Ă����܂��BCPU�͎O�����낵�Əo�Ă�����
�`���̃��X�g���Q�Ƃ��A�ǂ̃t�@�C���ɏ�����Ă��邩�i�悤�₭�����Łj���ׂɍs���܂��i���͂���ƂāA�Ƃ��鋤�ʕ�����
�������Ȃ����Ə�����Ă��邩��j�B
�@��������P�D�ŋN���蓾���d�������̖��ʂ͌������܂��B�܂��A���ʕ����������t�����t�@�C�����͈�ʂɂǂ̉Ƃł��ꏏ
�i���̗����W�ɂ͂��̂܂܂̖��O�Ŗڎ��ɍڂ��Ă���j�ł��B�����āA�Ɩ��ɋ��ʕ����̓J�X�^�}�C�Y���Ă���i�͂��j�̂�
�Q�D�̃��V�s���Ⴄ�Ƃ�CPU�ɗ���ł��ACPU�͂��̉Ƃɉ��������ʕ������Ƃ��Ă��Ă����̂ŃG���[�ɂȂ�܂���B
�@�f�����b�g�Ƃ��ẮA���ʕ����Ɉˑ����郌�V�s�������Ȃ��Ă��܂��t�ɋ��ʕ������Ǘ����镉�S�������Ă��邱�Ƃł��B
�@�܂����V�s�̋��ʕ����Ɉˑ����闦�������Ȃ�̂ŁA������Ƃ����Ƃ̈Ⴂ�ł��u���̋��ʕ����������v�Ƃ��������ۂ�����
���₷���Ȃ�܂��B
�@����ł��A�Ƃ��Ǘ����Ă���l�������悭�g���鋤�ʕ��������ꂼ�ꂵ������Ǘ����Ă���A��قǃJ�X�^�}�C�Y���ꂽ
���V�s��n���Ȃ�����A���͖��Ȃ��������Ă���܂��B
�@�R�D�́A���̏ꂻ�̏�̏����ɂ���āA���ʕ����̎Q�Ɛ��ύX�ł��郁���b�g������܂��B
�@���Ƃ��A��̈������Ƃ��Ă��a��A�i�C�t�A�ʕ���A���ؕ�E�E�E�Ƃ���킯�ł��B
�@���̂Ƃ����̂Ƃ��̏����ɂ���āA�u�����͘a��v�u����̓i�C�t�v�Ə_��ɐ�ւ����܂��B�܂�A���ւ̃A�v���[�`
���@�����A���^�C���ŕ������݂���Ƃ��ɈЗ͂����܂��B���ꂱ�����u���E�U�Ȃǂł����b�ɂȂ��v���O�C��
�̐��̂ł��B
�@����̗�ł͂�����ƕ�����Â炢��������܂���B�Ƃ����̂��A��̎�ނ͉Ƃ̈Ⴂ�ƍl���Ă��܂��Εʒi�A�Q�D�̕���
���Ƃ��Ă����Ȃ�����ł��B
�@���I�ł����A�}�O�����ޗ��ɓn����Ă����Ƃ��܂��傤�B�����Ȃ��Ă���ƂQ�D�ł͑Ώ�������Ȃ�܂��B
�@�{�}�O�����J���͕̂����̋Z�ʂł͏o���܂���B�Ƃɂ����A����炵�ĕ��ʂ̂��̂ł͖����ł��B
�@�������A�ƂƉƂ̊ԂŌ݊������ێ����邽�߂ɂ́A�u��������v����Ƃ����ďI���ɂ���̂͂悭����܂���B
�@�ނ��낱�̏ꍇ�A�u��͂ǂ��ł��ǂ��B�ނ���A���̏�ɂ����łǂ��J�����v�Ƃ����J���菇���p�ӂ��܂��B
�@�E�E�E�悭�悭�l����Ƃ���͂Q�D�ł��o���Ă��܂��܂��B�܂�A������u�ޗ��Ƃ��ēn���ꂽ���ɉ����ĎJ������ς���v
�K�v������̂ł��B����͂Q�D�ł͕s�\�ł��B�Q�D�ł͗\�ߓn�����ޗ����������Ă��邩�A�\���ł���ꍇ�͗L���ł��B������
�S�����m�̏ꍇ�͂������������́u�������̎J�����v���ʕ�����`���ɏ����t���Ă����K�v������̂ł��傤���B
�@���������Ƃ������A�R�D�̏o�ԂɂȂ�܂��B��������Ζ��������ł��B
�E��̈�����́uhoutyou_nigirikata.dll�v�t�@�C���ɏ����t���Ă���܂��B
�ޗ��F�Ƃ肠��������C�B
�菇�P�F�������܂��B
�菇�Q�F�����O�����낵�ɂ��܂��B
�@�@�@�@�����������T���}�������ꍇ�́usabakikata_sannma.dll�v�t�@�C���ɎJ�������ڂ��Ă��܂��B
�@�@�@�@�����������{�}�O���������ꍇ�́usabakikata_honnmaguro.dll�v�t�@�C���ɁE�E�E
�@�@�@�@�������E�E�E
�@�@�@�@�Ƃ����킯�łƂɂ��������O�����낵�ɂ��܂��B
�菇�R�F...
�@����������Ɖ��ǂ������܂��傤�B���̎�ނƁA�J�������ڂ������ʕ���(dll�t�@�C��)��ɂ������e�̃t�@�C��������Ă����܂��B
�t�@�C�����F�utui_sakana_sabakikata.txt�v
�T���}�Fsabakikata_sannma.dll
�{�}�O���Fsabakikata_honnmaguro.dll
�C���V�Fsabakikata_iwasi.dll
...
�@�����āA�����O���ɉ��낷�Ƃ��ɂ��̃t�@�C�����Q�Ƃ��āA�Ή�����DLL�����[�h����悤�ɂ�������̂ł��B
�i�ȗ��j
�菇�Q�F�����O���ɉ��낵�܂��B
�@�@�@�@���̎�ނƎJ�������ڂ����t�@�C���̑Ή��\�́utui_sakana_sabakikata.txt�v�ɂ���܂��B
�@�@�@�@����݂ēK�ȎJ�����ׂĉ������B
�@�@�@�@�Ƃ����킯�łƂɂ��������O�����낵�ɂ��܂��B
�菇�R�F...
�@��������ΐV�������������Ă����Ƃ��ł��Ή��\�ɁA�Ή�����DLL�������t���邾���őΏ��ł���悤�ɂȂ�܂��B
�@�܂������u���̎O�����낵�v�Ɋւ���v���O�C���V�X�e��������Ă����킯�ł��B
�@�ȏ�A�P�D�A�Q�D�A�R�D�ƑS�������d�g�݂� Windows, Linux/UNIX ��OS�ɔ�����Ă��܂��B
�@�e���V�s�̋��ʕ����� Windows �Ō����Ƃ���� DLL�t�@�C�� �ł���ALinux/UNIX�ł� ���L���C�u���� �ɂȂ邱�Ƃ���������
�������ł��傤���B
�@�E�E�EWindows�̏ꍇ��DLL�t�@�C���ł���͎̂��m�̒ʂ�ł��B�ł́A�̐S��Linux/UNIX�ł͂ǂ�ȃt�@�C�����̖����K����
�g���Ă���̂��B�����āA�Ȃ�lib****.so****�͂���ȂɃ����N�������Ă���A���������U���Ă���̂��B
�@�����������̓�ɔ����Ă��������Ǝv���܂��B
Linux/UNIX ���L�̂��B
�u�{��v�ɖ߂�
�@�����ł́A��Ɂu�����K���v�Ɓu�z�u�ꏊ�v�ɍi���Ă��b�����܂��B
�@�܂��͖����K������ł��B
�@���L���C�u�����̃t�@�C�����͎��̌`���ɏ]���ă����N�t�@�C�����܂߂č쐬����K�v������܂��B
�@���Ɏ�����́u****�v�̕����͂��̃��C�u������\����������܂��B���Ƃ���libpam.so��PAM���������邽�߂̃��C�u�����ł��B
�t�@�C�����̌`�����̖̂��O | �t�@�C�����̌`�� | �� | �����N�� |
real name | lib****.so.(���W���[�ԍ�).(�}�C�i�[�ԍ��Q) |
libhogehoge.so.2.0.1.2 | �i���L���C�u�����{�̂Ȃ̂Ń����N��͖����j |
soname | lib****.so.(���W���[�ԍ�) | libhogehoge.so.2 | libhogehoge.so.2.0.1.2 |
linker name | lib****.so | libhogehoge.so | libhogehoge.so.2 |
�@�E�E�E���ł���Ȏ��ɂȂ����������ł��傤�B���̌����́ALinux/UNIX�̎��s�t�@�C���`���ɂ���܂��B
�@��قǂ̗Ⴆ�ŁA�u�i�悤�₭�����Łj���ׂɍs���܂��i���͂���ƂāA�Ƃ��鋤�ʕ����ɂ������Ȃ����Ə�����Ă��邩��j�v
�Ƃ������������v���o���ĉ������B���́u�Ƃ��鋤�ʕ����v���u�v���O�������[�_�[�v��u�����J���[�_�[�v�ƌĂ�镔���ł��B
�@���̃v���O�������[�_�[�ild-linux.so�j�͑O�q�̖����K���ɏ]���Ă��Ȃ��A�����ʂȋ��ʕ����ł��B
�@��قǂ̗Ⴆ�Ō����ƁA�܂��Ɂu�l�Ԃ̓ǂ߂郌�V�s����CPU�̓ǂ߂郌�V�s�ɕϊ�����v�Ƃ��f�t�H���g���`���ɐ錾
����鋤�ʕ����ł��B���ꂪ�Ȃ��ƁA���̋��ʕ�����CPU���ǂݍ��߂Ȃ��قǂ̏d�v�ȕ����ł��B
�@�ŁA��ɋ����������K������N�����͂��̃v���O�������[�_�[�̎d�l�Ɋ�Â��܂��B
�@���āB�l�Ԃ̓ǂ߂郌�V�s����CPU�̓ǂ߂郌�V�s�ɕϊ�����i�ȍ~�A���̓�����u�R���p�C������v�ƌ����܂��j���A�g�p����
���L���C�u���������u-l****�v(��̗�Ȃ� -lhogehoge)�Ƃ��鎖���v���O�������[�_�[�̎d�l�ɂȂ��Ă��܂��B
�@****�͂��Ȃ킿�Alinker name��lib****.so�ɊY�����܂��i���W���[�ԍ������Ă܂����j�B����������N���soname��
�v���O�����̓������g����悤�ɂȁi��炵���j��܂��B
�@��ŁB���̒i�K�ł̓��C�u�����́u�t�@�C�����v�͔������Ă��u�f�B���N�g���v��������܂���B����Linux/UNIX�ɂ́u/sbin/
ldconfig�v�Ƃ����R�}���h������܂��B���̃R�}���h���i�ݒ�t�@�C���ɓo�^�ς݂́j�f�B���N�g�����������A���C�u������
�u�t�@�C�����v�Ƃ��̃f�B���N�g���ʒu��ژ^�����Ă���܂��B���̖ژ^��/etc/ld.so.cache�t�@�C���Ɋi�[
����܂��B
�@�ŁA���̖ژ^�̍쐬�Ɏg����u�t�@�C�����v�� soname �Ȃ킯�ł��B��ŁA�v���O��������v���O�������[�_�A������
�t�@�C���V�X�e����̃����N�����ǂ��Ă悤�₭ realname �Ɏ���킯�ł��B
�@�Ƃɂ����A�v���O�������[�_�[��ldconfig�̎d�l�ɂ���ĂQ��ނ̃����N���쐬����K�v���������킯�ł��B
�@�����z�u�ꏊ�ɂ��ĉ�����܂��B���܂ł̐����ł��ƁA�v���O���������ŋ��L���C�u�������w�肷��Ƃ���soname��
�g���܂��B���A���ꂾ���ł��Ɓu�ǂ̃f�B���N�g���ɂ���̂��v��������܂���B���̂��߂ɁAsoname����������Ƃ��̃C���f�b�N�X
�Ƃ���/etc/ld.so.cache������A���̃C���f�b�N�X���X�V����̂�/sbin/ldconfig�ł����B
�@�ŁB���ۂ�ldconfig�͂ǂ̃f�B���N�g�����������ăC���f�b�N�X���쐬���Ă���̂��B��������f�B���N�g�������X�g�����̂�
�u/etc/ld.so.conf�v�t�@�C���ł��B����͒P���ȃe�L�X�g�t�@�C���ł��B����(TLXW8)���ڂ����܂��B
[fenjin@seisyuu fenjin]$ cat /etc/ld.so.conf
/usr/X11R6/lib
/usr/lib/gconv
/usr/lib/qt/lib
/usr/local/lib
/usr/i386-linuxaout/lib
/usr/lib/libc5-compat
/usr/lib/sane
/usr/lib/Omni
[fenjin@seisyuu fenjin]$
�@�E�E�E�u/lib�v��u/usr/lib�v�͂ǂ��s�����̂ł��傤�B���͂��̓�̃f�B���N�g����ldconfig���f�t�H���g�ŕK��
�`�F�b�N����f�B���N�g���ł��B���̂��߁A�킴�킴/etc/ld.so.conf�ɋL�q����K�v���Ȃ���ł��B
�@/usr/local/lib����������w�肳��Ă��܂��B���́A/usr/local/lib��ldconfig�̃f�t�H���g�ł͂���܂���(RHL6.2�ȍ~)�B����
���߂킴�킴ld.so.conf�ɋL�q����K�v���������킯�ł��B
�@���ǁA�p�^�[�������͂߂Ă��܂���Windows�Ɠ������A����ȏ�ɂ��ߍׂ������C�u�������Ǘ��ł����Ƃ����ւ�Ă���
��ɂȂ��Ă��܂��܂��B
�@�Ȃ��Ȃ烉�C�u�����̎w��ɗp���Ă���̂�soname�ł����A�����realname�ւ̃V���{���b�N�����N�ł��B
�@�Ƃ������Ƃ́A�������C�u�������o�[�W�����A�b�v���ꂽ�Ƃ��Ȃǂ́A�Â����C�u�������㏑�������������N����
�ύX���邱�Ƃɂ���āA������ɔ��������C�u�����̃o�[�W�����A�b�v���o����킯�ł��B
�@�����āA���C�u�����̃C���X�g�[����́u/lib�v�u/usr/lib�v�A������/etc/ld.so.conf�ɋL�q����Ă���f�B���N�g�����ł���
���Ƃ��m���ł��i�{����LD_LIBRARY_PATH���ϐ��Ń��[�J���ɕύX���ł���̂ł����j�B
�@�܂�����Ȋ����ŁALinux/UNIX�̋��L���C�u�����̎d�g�݂͐��藧���Ă��܂��B
�ڎ��ɖ߂�
�@�Ō�ɁAC����ɂ����錵���ȈӖ��ł����C�u�����Ƌ��L���C�u�����̈Ⴂ�ɂ��Č��y���Ă����܂��B
�@C����ł̓R���p�C������Ƃ��Ɉꏏ�ɕ������킹��̂����C�u�����ł��B�܂�A���̎O�����낵�Ō����P�D�̃p�^�[���̎�
�p���Ă��鋤�ʕ������u���C�u�����v�Ƃ����܂��B�g���q���u.a�v�ɂȂ��Ă������Ƃ��傫�ȓ����ł��iWindows�ł́u.lib�v�ɂȂ��Ă���ꍇ�������j�B
�@Linux/UNIX, Windows�Łu���L���C�u�����v�ƌ����ꍇ�A����́u.a�v�t�@�C���ł͂���܂���B
�@�Ƃ����̂́A.a�t�@�C�������̑��̃��C���v���O�����ɕ������킳��������\�z����Ă��邽�߁A.a���g���g�p���Ă���
���ʕ���(printf�Ƃ�)��.a�ɂ͊܂߂Ȃ��悤�ɂȂ��Ă��܂��B�������킹��̃��C���v���O�������ňꏏ�ɂ��Ă���鎖��
�\�z����Ă��邩��ł��B
�@�Ƃ��낪���L���C�u�����́A���ꎩ�̂Ŋ�������悤�ɂȂ��Ă��܂��B���ʕ����Ƃ��Ẵ��C�u�������i�����������C��
�v���O�����Ɠ����̑��݂ł��邩�̂悤�Ɂj������ƃ����N����āAlib****.so****�����������킯�ł�(Windows�Ȃ�*.dll)�B
�@�����Ȓ�`��ǂ�������Ƃ����������Ⴂ���o�Ă��܂��B�܂��A��v���O���}�̐l�����ɂ͂��悻�W�Ȃ��b�ł��B
�@�������Ȃ���C/C++�̃v���O���}�i�w�K�ҁj�ŁA���L���C�u�����̎��ۂ̃\�[�X�R�[�h�Ŏ�����������A�{�y�[�W�̑O������
�ڂ��Ă���JF�h�L�������g���Q�Ƃ���Ɨǂ��ł��傤�B�����ł̓v���O���~���O�ɂ͈�ؗ������炸�b���������߁A������Ȃ�������
���R�������Ǝv���܂��B
�@�ǂ���ɂ���A���̃y�[�W�����Ȃ���Linux/UNIX�̃��C�u�����ɑ��错�Ƃ����s�����������ł��y���ł���Α�ς��ꂵ���ł��B
2015-06�ʂɁA������̋L���ւ́u�͂Ăȃu�b�N�}�[�N�v���}�����܂����B
�Q�l�ɂ��Ă���������̂͂��肪�����̂ł����A�Ȃɂ���2003�N���Ɏ��g�������̏�ԂŁA���������˂Ď��M�����L���ł��B
��g�Ƃ��ēK�łȂ�������A�����������������L����ǂ����Ƃ���l�B�̋Z�p���x�����l�����Ă��Ȃ�������A��������������L�q�ɕs���m�E�s�\���ȓ_������܂��B
2015�N���݁Aunix�A����Linux�ł̋��L���C�u����(.so�t�@�C��)�ɂ��āA��萳�m��������₷���w�ׂ鏑�Ђ��o�Ă��܂��B
Linux���g���Ă��āA���L���C�u����(.so�t�@�C��)�̎d�g�݂ɂ��ċ����������ꂽ���́A���Ђ�����̏��ЂŁA��萳�m�ŕ�����₷�����͂Ŋw��ł����������Ƃ𐄏����܂��B
�������Ђ���1�i��b����������Ă��܂��̂ŁA��ԃI�X�X���j
�������Ђ���2�i���gcc�R���p�C����ELF�t�H�[�}�b�g�̃f�B�[�v�Șb�肪�����A�v���O���}�����`�㋉�Ҍ����j
Windows�̏ꍇ��DLL(Dynamic Link Library)�ɂ��ẮAVisual C++�J���Ҍ����̃h�L�������g��AMicrosoft����̉���������o�Ă��܂��̂ŁA�܂���������m�F����邱�Ƃ𐄏����܂��B
��MSDN���URL�͎��X�T�C�g�\���̃A�b�v�f�[�g�ŕω����܂��B�܂��A���p���Ă���Visual C++/Visual Studio�̃o�[�W�����Ɠ����h�L�������g���Q�Ƃ����ق������m�ł��B���̂��߁A��L�����N��Not Found�ɂȂ����ꍇ��A�����p��VisualC++/Visual Studio�̃o�[�W�����ƈقȂ�ꍇ�́A���萔�ł����������Ȃ����Ă��������B
Windows�̏ꍇ�AEXE�t�@�C����DLL�t�@�C����Portable Executable�t�H�[�}�b�g(PE�t�H�[�}�b�g)�Ƃ����`���ō\������Ă��܂��B
DLL�Ŏg����F�X�ȋ@�\��I�v�V�����́APE�t�H�[�}�b�g�Ɩ��ڂɊ֘A���Ă��܂��B
���̂��߁ADLL���w�Ԃɂ�PE�t�H�[�}�b�g�ɂ��Ă��w�ق����o�����X���ǂ��Ǝv���܂��B
2015-06���_�Ōy�����������Ƃ���A���{��ł͈ȉ��̋L�����I�X�X���ł��B�ŏ���vector��HP�ɂ��Ă�2010�N��������PE�t�H�[�}�b�g�̕��̍ۂɎQ�l�ɂ����L���ł��B
�p��ɂȂ��Ă��܂��܂����AMatt Pietrek����PE�t�H�[�}�b�g�̉�������ɏڂ����ł��BPE�t�@�C���Ƀ����N������O�́AOBJ�t�@�C����LIB�t�@�C���ɂ��Ă��������Ă��܂��B
������MSDN��̋L���ł���A�T�C�g�\���̃��j���[�A����URL���ς���Ă��܂��܂��B
�ȉ��̏Љ�L���̃^�C�g�����Q�l�ɁAMSDN�̋L�����������Ă݂Ă��������B
"Matt Pietrek - MSDN & MSJ Articles" : http://www.wheaty.net/articles.htm
�ڎ��ɖ߂�
�g�b�v�y�[�W�������u�Ղ낮��݂v�ڎ�