<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html;
      charset=windows-1252">
  </head>
  <body>
    <p>Hi</p>
    <p>There has been some changes recently for MacOSX and how
      ACE_(U)INT64 are mapped, are you maybe enabling C++11 for your
      user code, the homebrew recipe doesn't do that. Are you using
      ACE_(U)INT64 in your application code in ParameterTest?<br>
    </p>
    <p>Best regards,</p>
    Johnny Willemsen
    <pre class="moz-signature" cols="72">Remedy IT
<a class="moz-txt-link-freetext" href="http://www.remedy.nl">http://www.remedy.nl</a></pre>
    <div class="moz-cite-prefix">On 8/31/20 11:46 PM, Brad Howes wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:4170CD7C-0D36-4DD5-B60E-6A8D693B179C@mac.com">
      <meta http-equiv="Content-Type" content="text/html;
        charset=windows-1252">
      HI,
      <div class=""><br class="">
      </div>
      <div class="">I recently checked out an old project of mine (<a
          href="https://github.com/bradhowes/sidecar" class=""
          moz-do-not-send="true">https://github.com/bradhowes/sidecar</a>)
        that uses ACE for message marshaling and stream processing.
        Miraculously, it still compiles on CentOS 8 without a problem,
        and up until a few month ago it was also building fine on macOS
        10.15 using an install of ACE from the `brew` package manager,
        but upgrading to the latest version 6.5.11 caused a compile
        issue:</div>
      <div class=""><br class="">
      </div>
      <div class="">
        <div class="">Undefined symbols for architecture x86_64:</div>
        <div class="">  "ACE_InputCDR::read_8(unsigned long long*)",
          referenced from:</div>
        <div class="">     
SideCar::Parameter::TValue<SideCar::Parameter::Defs::Double>::checkedLoad(ACE_InputCDR&)
          in <a href="http://ParameterTest.cc" class=""
            moz-do-not-send="true">ParameterTest.cc</a>.o</div>
        <div class="">     
SideCar::Parameter::TValue<SideCar::Parameter::Defs::Double>::load(ACE_InputCDR&)
          in <a href="http://ParameterTest.cc" class=""
            moz-do-not-send="true">ParameterTest.cc</a>.o</div>
        <div class="">     
SideCar::Parameter::TValue<SideCar::Parameter::Defs::RangedDouble<DoubleRange>
          >::checkedLoad(ACE_InputCDR&) in ParameterTest.cc.o</div>
        <div class="">     
SideCar::Parameter::TValue<SideCar::Parameter::Defs::RangedDouble<DoubleRange>
          >::load(ACE_InputCDR&) in ParameterTest.cc.o</div>
        <div class="">  "ACE_OutputCDR::write_8(unsigned long long
          const*)", referenced from:</div>
        <div class="">     
SideCar::Parameter::TValue<SideCar::Parameter::Defs::Double>::write(ACE_OutputCDR&)
          const in <a href="http://ParameterTest.cc" class=""
            moz-do-not-send="true">ParameterTest.cc</a>.o</div>
        <div class="">     
SideCar::Parameter::TValue<SideCar::Parameter::Defs::RangedDouble<DoubleRange>
          >::write(ACE_OutputCDR&) const in <a
            href="http://ParameterTest.cc" class=""
            moz-do-not-send="true">ParameterTest.cc</a>.o</div>
      </div>
      <div class=""><br class="">
      </div>
      <div class="">Looking at the symbols in the `libACE.dylib` file, I
        saw this signature:</div>
      <div class=""><br class="">
      </div>
      <div class="">
        <div class="">000000000002eac0 T ACE_InputCDR::read_8(unsigned
          long*)</div>
      </div>
      <div class=""><br class="">
      </div>
      <div class="">I removed the `brew` package and downloaded the
        6.5.11 tarball from <a
          href="https://download.dre.vanderbilt.edu" class=""
          moz-do-not-send="true">https://download.dre.vanderbilt.edu</a> and
        customized the configure file</div>
      <div class="">`ace/config-macosx.h` with:</div>
      <div class=""><br class="">
      </div>
      <div class="">
        <div class="">    #if defined(__clang__) &&
          defined(__x86_64__)</div>
        <div class="">    #define ACE_INT64_TYPE long long int</div>
        <div class="">    #define ACE_UINT64_TYPE unsigned long long int</div>
        <div class="">    #endif</div>
        <div class=""><br class="">
        </div>
      </div>
      <div class="">This seems to have fixed the issue with compiling
        and my unit/integration tests all run fine so I think it is
        working, but I am unsure if this is the right approach. Perhaps
        someone knows of a better way to fix what I observed? I am more
        than happy to submit a pull request if that is desired, amended
        with whatever feedback anyone may have.</div>
      <div class=""><br class="">
      </div>
      <div class="">Regards,</div>
      <div class=""><br class="">
      </div>
      <div class="">Brad</div>
      <div class=""><br class="">
      </div>
      <div class=""><br class="">
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
ace-users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:ace-users@list.isis.vanderbilt.edu">ace-users@list.isis.vanderbilt.edu</a>
<a class="moz-txt-link-freetext" href="http://list.isis.vanderbilt.edu/cgi-bin/mailman/listinfo/ace-users">http://list.isis.vanderbilt.edu/cgi-bin/mailman/listinfo/ace-users</a></pre>
    </blockquote>
  </body>
</html>