<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Times New Roman \(Body CS\)";
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:inherit;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.apple-converted-space
        {mso-style-name:apple-converted-space;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:785394435;
        mso-list-type:hybrid;
        mso-list-template-ids:-2090669254 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7 ;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7 ;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7 ;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7 ;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7 ;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7 ;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style>
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:12.0pt">Good morning,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Working with the simtrace2 code cross compiled for an a53 processor and am running into a few issues. This email summarizes the issues and am wondering if anybody has either resolved these or has any suggestions.
 The issues are<o:p></o:p></span></p>
<ul style="margin-top:0in" type="disc">
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level1 lfo1"><span style="font-size:12.0pt">Cross compiling errors with the simtrace2 host tools<o:p></o:p></span></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l0 level1 lfo1"><span style="font-size:12.0pt">simtrace2-tool run time logging errors<o:p></o:p></span></li></ul>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><u><span style="font-size:12.0pt">Issue #1 </span></u></b><span style="font-size:12.0pt">simtrace2-cardem-pcsc.c app<b><u><o:p></o:p></u></b></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Simtrace2 requires libosmocore. When trying to build the simtrace2 host tools neither tagged versions of libosmcore 1.5.1 or 1.5.2 will compile correctly. The only way to get the  simtrace2 host tools to compile
 is to use commit <b>cfea39ba</b>. Otherwise the following syntax errors occur in the simtrace2-cardem-pcsc.c app. Is there some magic required to have the simtrace2 host tools compile with a tagged version of libosmocore?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">CC       simtrace2-cardem-pcsc.o<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">simtrace2-cardem-pcsc.c: In function ‘update_flags’:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">simtrace2-cardem-pcsc.c:94:4: warning: implicit declaration of function ‘osim_card_reset’; did you mean ‘osim_card_open’? [-Wimplicit-function-declaration]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">   94 |    osim_card_reset(card, cold_reset);<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">      |    ^~~~~~~~~~~~~~~<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">      |    osim_card_open<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">simtrace2-cardem-pcsc.c: In function ‘main’:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">simtrace2-cardem-pcsc.c:441:23: error: ‘OSIM_MAX_ATR_LEN’ undeclared (first use in this function); did you mean ‘USB_MAX_PATH_LEN’?<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">  441 |  uint8_t override_atr[OSIM_MAX_ATR_LEN];<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">      |                       ^~~~~~~~~~~~~~~~<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">      |                       USB_MAX_PATH_LEN<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">simtrace2-cardem-pcsc.c:441:23: note: each undeclared identifier is reported only once for each function it appears in<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">simtrace2-cardem-pcsc.c:611:45: error: ‘struct osim_card_hdl’ has no member named ‘atr’<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">  611 |     osmo_st2_cardem_request_set_atr(ci, card->atr, card->atr_len);<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">      |                                             ^~<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">simtrace2-cardem-pcsc.c:611:56: error: ‘struct osim_card_hdl’ has no member named ‘atr_len’<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">  611 |     osmo_st2_cardem_request_set_atr(ci, card->atr, card->atr_len);<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">      |                                                        ^~<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">simtrace2-cardem-pcsc.c:441:10: warning: unused variable ‘override_atr’ [-Wunused-variable]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">  441 |  uint8_t override_atr[OSIM_MAX_ATR_LEN];<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">      |          ^~~~~~~~~~~~<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">make: *** [Makefile:465: simtrace2-cardem-pcsc.o] Error 1<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><u><span style="font-size:12.0pt">Issue #2</span></u></b><span style="font-size:12.0pt"> simtrace2-tool<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Simtrace2-tool has an assertion error in the osmo logging system, perhaps this is related to the question above about using tagged versions of libosmocore.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">When trying to use the built version of simtrace2-tool the following stack track occurs:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in"><span style="font-family:"Courier New";color:black">$ simtrace2-tool -V 1d50 -P 60e3 -C 2 -I 0 -S 0 -A 10 modem sim-switch local</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">(C) 2019 Harald Welte <<a href="mailto:laforge@gnumonks.org">laforge@gnumonks.org</a>></span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">Setting SIM=LOCAL; Modem reset recommended</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"inherit",serif;color:black">ERROR: osmo_log_info == NULL!<span class="apple-converted-space"> </span><a href="webextlink://You%20must%20call%20log_init()%20before%20using%20logging%20in%20log_check_level()!" title="webextlink://You must call log_init() before using logging in log_check_level()!"><span style="color:#0072C6;text-decoration:none">You
 must call log_init() before using logging in log_check_level()!</span></a></span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">Assert failed osmo_log_info ../../git/src/logging.c:299</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">backtrace() returned 8 addresses</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">/usr/lib/libosmocore.so.17(osmo_panic+0xd8) [0xffffbc03abb8]</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">/usr/lib/libosmocore.so.17(log_parse_level+0) [0xffffbc037c00]</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">/usr/lib/libosmocore.so.17(log_check_level+0x30) [0xffffbc039120]</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">/usr/lib/libosmo-simtrace2.so.0(+0x1c50) [0xffffbc077c50]</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">simtrace2-tool(+0x13fc) [0xaaaac79f13fc]</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">/lib/libc.so.6(__libc_start_main+0xe8) [0xffffbbea7878]</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">simtrace2-tool(+0x15b8) [0xaaaac79f15b8]</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal" style="margin-left:.5in;caret-color: rgb(0, 0, 0);font-variant-caps: normal;orphans: auto;text-align:start;widows: auto;-webkit-text-size-adjust: auto;-webkit-text-stroke-width: 0px;word-spacing:0px">
<span style="font-family:"Courier New";color:black">Aborted</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt">Adding the osmo logging initialization (listed below) does not, at first glance, appear to help<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;color:black">static struct log_info log_info = {};</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;color:black">  </span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;color:black">rc = osmo_libusb_init(NULL);</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;color:black">if (rc < 0) {</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;color:black">     fprintf(stderr, "libusb initialization failed\n");</span><span style="color:black">
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="color:black">     </span><span style="font-size:12.0pt;color:black">return rc;</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;color:black">}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt;color:black">Thank you,</span><span style="color:black"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
</div>
</body>
</html>