facebook / wdt

Warp speed Data Transfer (WDT) is an embeddedable library (and command line tool) aiming to transfer data between 2 systems as fast as possible over multiple TCP paths.
https://www.facebook.com/WdtOpenSource
Other
2.86k stars 392 forks source link

Build Error : Undefined reference to folly::detail::SimdSplitByCharImplToStrings #233

Closed alistaim closed 1 year ago

alistaim commented 1 year ago

Hello,

Trying to build from source using the latest github clone versions (3/20) of folly and wdt and hitting the following :

[ 74%] Linking CXX executable _bin/wdt/wdt
/usr/bin/ld: CMakeFiles/wdtbin.dir/wdtCmdLine.cpp.o: in function `readManifest(std::istream&, facebook::wdt::WdtTransferRequest&, bool)':
wdtCmdLine.cpp:(.text+0x1214): undefined reference to `folly::detail::SimdSplitByCharImplToStrings<std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::dropEmpty(char, folly::Range<char const*>, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&)'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/wdtbin.dir/build.make:137: _bin/wdt/wdt] Error 1
make[1]: *** [CMakeFiles/Makefile2:207: CMakeFiles/wdtbin.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 75%] Linking CXX shared library libwdt4tests.so
[ 75%] Built target wdt4tests
[ 76%] Linking CXX executable _bin/wdt/short_flags/option_type_test_short_flags
[ 76%] Built target option_type_test_short_flags
make: *** [Makefile:146: all] Error 2
alistaim commented 1 year ago

Latest source folly checkout is in ../folly/ and not built

hyperbolic-c commented 1 year ago

I am meeting the same problem

alainpleno commented 1 year ago

you need to update the file CMakeList.txt:

   "${FOLLY_SOURCE_DIR}/folly/hash/detail/Crc32cDetail.cpp"
   "${FOLLY_SOURCE_DIR}/folly/hash/detail/Crc32CombineDetail.cpp"
   "${FOLLY_SOURCE_DIR}/folly/ScopeGuard.cpp"
   "${FOLLY_SOURCE_DIR}/folly/detail/SplitStringSimd.cpp"     # <== add this