<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>