Open i0ntempest opened 2 months ago
Uhhh... but I'm not using Windows?
Uhhh... but I'm not using Windows?
Yeah, ignore that, probably malware or something.
What version of openvpn3 is this exactly? What are the steps to reproduce the problem?
The symbol is related to GoogleTest, so might also be a problem on their side.
Tried 3.10.1 and 3.9, same errors. The log is from building 3.10.1.
I tried to reproduce it manually to rule out possible macports problem. A normal cmake .. && make
will trigger the error.
EDIT: but with slightly different messages:
Undefined symbols for architecture arm64:
"testing::internal::MakeAndRegisterTestInfo(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, char const*, char const*, char const*, testing::internal::CodeLocation, void const*, void (*)(), void (*)(), testing::internal::TestFactoryBase*)", referenced from:
___cxx_global_var_init.5 in test_acc.cpp.o
___cxx_global_var_init.21 in test_acc.cpp.o
___cxx_global_var_init.27 in test_acc.cpp.o
___cxx_global_var_init.30 in test_acc.cpp.o
___cxx_global_var_init.38 in test_acc.cpp.o
___cxx_global_var_init.43 in test_acc.cpp.o
___cxx_global_var_init.50 in test_acc.cpp.o
...
"testing::internal::ReportInvalidTestSuiteType(char const*, testing::internal::CodeLocation const&)", referenced from:
testing::internal::ParameterizedTestSuiteInfo<InvalidConfigs>* testing::internal::ParameterizedTestSuiteRegistry::GetTestSuitePatternHolder<InvalidConfigs>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, testing::internal::CodeLocation) in test_cliopt.cpp.o
testing::internal::ParameterizedTestSuiteInfo<ValidConfigs>* testing::internal::ParameterizedTestSuiteRegistry::GetTestSuitePatternHolder<ValidConfigs>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, testing::internal::CodeLocation) in test_cliopt.cpp.o
ld: symbol(s) not found for architecture arm64
c++: error: linker command failed with exit code 1 (use -v to see invocation)
You have two different google test version. One from the ports/homebrew and one from the interal one that openvpn3 uses. It compiles against header of one but links against the other. Uninstall the one from homebrew as a workaround. Patches to fix this for good are welcome.
I just removed add_subdirectory(test/unittests)
from CMakeLists.txt since my use case doesn't need it anyway. I'll try if I can figure out a permanent fix.
Full log below.
main.log