2015ǯ02��24��

Linux��ǥӥ�ɤ���GCC����������ѥ����ʴʰס˥ƥ��Ȥ�����ˡ

PC Linux �ۥ��Ⱦ�ǡ�sh ��ɾ���ܡ��ɤʤɥۥ��ȤȰۤʤ�Ķ��򥿡����åȤˤ�����GCC �Υ���������ѥ��� �� ��ӥ�ɤ���Τ����Ū��ñ�ǡ������־�ˤ����Ϥ������󤢤�ΤǤ����������ƥ��Ȥ�����ˡ���ʤ��ʤ��狼�餺��ϫ���ޤ��������λ��Υ��Ǥ���

�� ���ε����Ǥ� newlib ����Ѥ��� bare-metal target�������� OS �쥹�δĶ��򥿡����åȤˤ�������������ѥ���Ρ����եȥ����� CPU ���ߥ�졼������Ѥ����ʰץƥ�����ˡ�򰷤��ޤ���GCC �Υӥ�ɴĶ��䡢dejagnu �ʤɤΡ��̾�Υͥ��ƥ��� GCC �Ρ˥ƥ��ȴĶ��ϡ��������äƤ����ΤȤ��ޤ���


���Υ����Ȥ����˻��ͤˤʤ�ޤ�����

���ͥ����ȡ� MIPS Cross Compiler build

������
  1. GDB �� CPU ���ߥ�졼����Ȥäơ��̥������åȸ����ΥХ��ʥ��¹�
  2. ���ͥ����Ȥ�Ʊ�ͤˡ������� GCC �Ȱ��˥����� GDB ��ӥ�ɤ���Τ��μ¤Ǥ� ��1�����λ���GCC ��ӥ�ɤ������� configure �˻��ꤷ���������åȡʰʸ塢��Ȥ��� --target=sh-none-elf ����Ѥ��ޤ��ˤ˹�碌�ơ�GDB �� configure ���� target ����ꤷ�ޤ����ʸ�Ҥ��ޤ������ǥե���Ȥ�����ե�����Ǥϡ�����ѥ���ȥ��ߥ�졼����Ʊ�� prefix �����Ѥ����Τǡ�target ���碌�Ƥ������ɲä����꤬���פdzڤǤ���������ؤ�� binutils �������Ʊ���Ǥ�����
    �ޤ���GDB �� configure ���˥��ߥ�졼����ɸ�������ϡ�sim-stdio�ˤΥ��ݡ��Ȥ�ͭ���ˤ��ޤ���
    --enable-sim-stdio
    
    �ӥ�ɤ��� GDB �� PATH ���̤��Ƥ����Τ�˺��ʤ��Ǥ���������
  3. newlib �� GDB �� sim-stdio ���Ф���ɸ�������ϥ饤�֥�����äƤ���Τǡ��������ѡʥǥե���Ȥ�ͭ�� ��2��
  4. GCC �� make check ��� target_board �� XXX-sim �����
    ���ͥ����Ȥΰʲ�����ʬ�Ǥ���
    cd mips/build/gcc-stage2
    make check-gcc RUNTESTFLAGS=--target_board=mips-sim
    
    ������Ȥ����� CPU �˹�碌�� sh-sim �Τ褦�˻��ꤹ��ȡ�����������ѥ��� sh-none-elf-gcc ��3 �ǥ���ѥ��뤷�ƤǤ����Х��ʥ꤬������������ѥ����Ʊ�� prefix �� sh-none-elf-run �Ǽ¹Ԥ���ޤ���
���� XXX-sim �� dejagnu �Υ��󥹥ȡ�����˥ǥե���Ȥǥ��󥹥ȡ��뤵�������ե�����ǡ���������ե������ʬ�ǵ��Ҥ��ƻ��ꤹ��С����Ѥ���Х��ʥ��̾���ʤɤ⥫�����ޥ����Ǥ��ޤ������Ȥꤢ���������ǥե���ȤǹԤ��뤳�줬�����ִ�ñ�ʥ���������ѥ���Υƥ�����ˡ���Ȼפ��ޤ���

�����ϡ�GDB �ΥС������ˤ�äƥƥ��ȷ�̤��Ѥ�äƤ��ޤ��Τǡ��С���������ꤹ��ɬ�פ�����ޤ����������ޤǤ⻲�ͤˤ����ʤ�ʤ��Ȥ������ȤǤ��͡�����Ǥ������ƥ��Ȥ��ʤ����ϰ¿������㤤�ޤ�����4

³���� Linux��ǥӥ�ɤ���GCC����������ѥ����QEMU�桼�����⡼�ɤǥƥ��Ȥ�����ˡ

��1 �����Ƥ��������ǥ���������ѥ�����Ѱդ���ɬ�פ�������ϡ����Ū�ޥ��ʡ��ʴĶ��Ǥ��뤳�Ȥ�¿���Τǡ�Linux �ǥ����ȥ�ӥ塼�����Υѥå�������¸�ߤ��뤳�Ȥϴ��ԤǤ��ޤ��󡣡ʤ��⤽�� GDB �Υѥå�����������褦�ʴĶ��ʤ�С������Ƥ�����������ѥ�����Ѱդ���Ƥ���Ϥ��ġ���

��2 ���� �� GNU �ˤ�� AKI-H8 �Υץ�����೫ȯ / ʸ�������(printf)�򥷥ߥ�졼���ȼµ�ξ���ǻȤ���褦�ˤ���
������������ sim-stdio �����饤�֥��ϡ��µ��Ǥϼ���ˤʤ�Τǡ����ξ���
--disable-newlib-supplied-syscalls
�� configure ���ץ������ɲä��� newlib ��ӥ�ɤ��ޤ���

��3 ���Τˤϡ�GCC �Υӥ�ɥǥ��쥯�ȥ�� make check-gcc �������ˤϡ��ӥ�ɥǥ��쥯�ȥ�� gcc/xgcc �����Ѥ���ޤ������󥹥ȡ���Ѥߤ� sh-none-elf-gcc �ʤɤ�ºݤ˻��Ѥ��������ϡ��ʲ��Τ褦��Ŭ��������ե����� site.exp ���Ѱդ���make check-gcc �������������ե����뤬���ͤˤʤ�ޤ��ˡ�runtest ��¹Ԥ��Ƥ���������--tool �� gcc/g++ ����ꤹ����ϡ�srcdir �� GCC �Υ������ǥ��쥯�ȥ�� gcc/testsuite �ǥ��쥯�ȥꡢlibstdc++ ����ꤹ����� libstdc++-v3/testsuite ����ꤷ�Ƥ���������
$ cat site.exp
set target_triplet sh-none-elf
set target_alias sh-none-elf
set CFLAGS ""
set CXXFLAGS ""
set HOSTCC "gcc"
set HOSTCFLAGS "-g -O2"
set tmpdir /path/to/temp
set baseline_subdir_switch "--print-multi-directory"

$ export PATH=/path/to/gcc/sysroot/bin:$PATH

$ runtest --tool gcc --srcdir /path/to/gcc-XXX/gcc/testsuite --target_board=sh-sim --ignore pch.exp
�ʲ��⡢ɬ�פʤ�л�Ƥߤ���ɤ����⤷��ޤ���
set HAVE_LIBSTDCXX_V3 1
set ENABLE_PLUGIN 1
set PLUGINCC "g++"
set PLUGINCFLAGS "-g "
set ENABLE_LTO 1
�ޤ���PATH ���̤��ʤ��Ƥ⡢set rootme �ǥ��󥹥ȡ��뤷�� GCC �Υ롼�ȥǥ��쥯�ȥ��sysroot�ˤ���ꤹ����ɤ��Τ��⤷��ޤ��󡣡�̤���ڡ�
��4 GCC �� newlib �� ARM �ʤɤΥ᥸�㡼�ʥ������åȤ��Х��äƤ뤳�Ȥϡ����ޤꤢ��ޤ��󤬡��ޥ��ʡ��ʥ������åȤ䡢�ޤ��Ϥ�Ƥ��ʤ��ǿ��������ƥ���������ǤǤ��ޤ��󡣡ʤ��⤽��ӥ�ɤ��ޤȤ���̤�ʤ����Ȥ�����¿�����餤�Ǥ����ˤǤ���¤�Υƥ��Ȥ��äƤ����ˤ��������ȤϤ���ޤ���

�ȥ�å��Хå�URL

�����Ȥ���

̾��
 
  ³¨Ê¸»ú
 
 
��������
�ǿ�����
���̥���������
�ǿ�������
<%==comments[n].author%>
<% } %>
�������������󥿡�
  • ������
  • ������
  • �߷ס�

<% for ( var i = 0; i < 7; i++ ) { %> <% } %>
<%= wdays[i] %>
<% for ( var i = 0; i < cal.length; i++ ) { %> <% for ( var j = 0; j < cal[i].length; j++) { %> <% } %> <% } %>
0) { %> id="calendar-611743-day-<%= cal[i][j]%>"<% } %>><%= cal[i][j] %>
���ƥ����̥���������
�������饦��
QR������
QR¥³¡¼¥É
���ԥޥ���������ԥ塼��

'); label.html('\ �饤�֥ɥ��֥����ǤϹ���Υѡ����ʥ饤�������¬��Τ��᥯�å���(cookie)����Ѥ��Ƥ��ޤ���
\ ���ΥХʡ����Ĥ��뤫�������³���뤳�Ȥǥ��å����λ��Ѥ�ǧ������������ΤȤ����Ƥ��������ޤ���
\ �ޤ��������ͤ����ҥѡ��ȥʡ���Ȥˤ��������μ�³���ˤ�ꡢ���å����λ��Ѥ�������뤳�Ȥ�Ǥ��ޤ���
\ �ܺ٤��饤�֥ɥ����ѵ���򤴳�ǧ����������\ '); banner.append(label); var closeButton = $('