2011년 11월 16일 수요일

Test RealTime for 64-bit applications on Linux

http://www-01.ibm.com/support/docview.wss?uid=swg21376792


If you installed TestRT 7.5 on a Linux computer that supports 64-bit applications, you get a 64-bit compatible Target Deployment Port (TDP) automatically.
  •     This TDP's name is Linux - Gnu 3.x 64 bits.
  •     The TDP's file is clinuxgnu3_2_64bits.xdp in the targets/xmldirectory.

If you installed TestRT 7.5 on a Linux computer that does not support 64-bit applications, you need to manually create a 64-bit TDP. The same applies to non-Linux computers.

The following steps adapt the existing 32-bit TDP for 64-bit applications.
  1.     Copy the existing clinuxgnu3_2.xdp to clinuxgnu3_2_64bits.xdp.
  2.     Open the clinuxgnu3_2_64bits.xdp file in the TDP Editor.
  3.     Right click on the label top most node Linux - Gnu 3.x, then choose Rename and rename the node to Linux - Gnu 3.x 64bits.
  4.     Click the node Basic Settings > For C.
        Change the DEFAULT_CPPFLAGS to -m64.
  5.     Click the node Basic Settings > For C++.
        Change the DEFAULT_CPPFLAGS to -m64.
  6.     Click the node Library Settings > Data types and select the check box next to the label RTRT_64_BITS_PTR.
  7.     In the same node change the value of RTRT_SIZE_T to unsigned long.
  8.     Click the node Parser Settings > Header adaptation for C.
        At the end of the text add the following line:

        #pragma attol sizeof(long) = 64
  9.     Click the node Parser Settings > Analyzer file configuration.
        After the line --dollar add the following lines:

        --targ_size_t_int_kind 8
        --diag_suppress 61,69
  10.     Clik the menu File > Save & Generate.
You can now test your new TDP against the test script attached to this technote.




Recently made a modification to the parser for 64 bits where int are 32bits

--long_64_bits <==new in 7.5.0.6
Allows to set the parser for target type having the sizeof long as a 64 bits and sizeof int as a 32 bits.

--targ_64_bits
Allows to set the parser for target type having the sizeof int and sizeof long as a 64 bits.

so following TDP modification detailed on the techNote you need to clarify
if the int type is 64bits or 32 bits

so try to add the --targ_64_bits following the --targ_size_t_int_kind 8

댓글 없음:

댓글 쓰기