<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">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="">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="">ParameterTest.cc</a>.o</div><div class="">      SideCar::Parameter::TValue<SideCar::Parameter::Defs::Double>::load(ACE_InputCDR&) in <a href="http://ParameterTest.cc" class="">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="">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="">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="">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></body></html>