Omnet++ Can';t启动动脉示例

Omnet++ Can';t启动动脉示例,omnet++,veins,sumo,Omnet++,Veins,Sumo,我已经编译了Velse、vanetza、inet和artery,但我无法启动artery示例。在根目录下,我执行了以下操作: cd build make run_example CryptoPP::RandomPool::GenerateIntoBufferedTransformation(CryptoPP::BufferedTransformation&, std::basic_string<char, std::char_traits<char>, std::al

我已经编译了Velse、vanetza、inet和artery,但我无法启动artery示例。在根目录下,我执行了以下操作:

cd build make run_example
CryptoPP::RandomPool::GenerateIntoBufferedTransformation(CryptoPP::BufferedTransformation&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long long)
发生以下错误:

<!> Error: Cannot load library '/home/renault/artery/build/src/artery/envmod/libartery_envmod.so': /usr/local/lib/libvanetza_security.so: undefined symbol: _ZN8CryptoPP10RandomPool34GenerateIntoBufferedTransformationERNS_22BufferedTransformationERKSsy

End.
scenarios/artery/CMakeFiles/run_example.dir/build.make:57: recipe for target 'scenarios/artery/CMakeFiles/run_example' failed
make[3]: *** [scenarios/artery/CMakeFiles/run_example] Error 1
CMakeFiles/Makefile2:644: recipe for target 'scenarios/artery/CMakeFiles/run_example.dir/all' failed
make[2]: *** [scenarios/artery/CMakeFiles/run_example.dir/all] Error 2
CMakeFiles/Makefile2:651: recipe for target 'scenarios/artery/CMakeFiles/run_example.dir/rule' failed
make[1]: *** [scenarios/artery/CMakeFiles/run_example.dir/rule] Error 2
Makefile:274: recipe for target 'run_example' failed
make: *** [run_example] Error 2
错误:无法加载库'/home/renault/arthery/build/src/arthery/envmod/libarthery_envmod.so':/usr/local/lib/libvanetza_security.so:未定义符号:_zn8cryptopp10randompool34生成缓冲转换erns_22缓冲转换erksy
结束。
场景/arthery/CMakeFiles/run_example.dir/build.make:57:目标“场景/arthery/CMakeFiles/run_example”的配方失败
make[3]:***[scenarios/artery/CMakeFiles/run_示例]错误1
CMakeFiles/Makefile2:644:目标“场景/动脉/CMakeFiles/run_示例.dir/all”的配方失败
make[2]:***[scenarios/arthery/CMakeFiles/run_example.dir/all]错误2
CMakeFiles/Makefile2:651:目标“场景/动脉/CMakeFiles/run_example.dir/rule”的配方失败
make[1]:***[scenarios/arthery/CMakeFiles/run_example.dir/rule]错误2
Makefile:274:目标“运行示例”的配方失败
make:**[运行示例]错误2
我在ubuntu上安装了crypto++5.6.1


谢谢

错误消息告诉您找不到给定的符号。使用
c++filt
,您可以发现符号如下所示:

cd build make run_example
CryptoPP::RandomPool::GenerateIntoBufferedTransformation(CryptoPP::BufferedTransformation&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long long)
CryptoPP::RandomPool::GenerateIntoBufferedTransformation(CryptoPP::BufferedTransformation&,std::basic_字符串常量&,无符号长)
这可能表明您在某个地方声明了此方法(可能在头文件中),但没有为其提供实现(在相应的
.cc
文件中)

另见:


谢谢。我会告诉你要解决这个问题,我必须用编译代码时使用的g++版本编译libcrypto库。这个问题回答了吗?