先熟悉boost的测试功能 Boost 单元测试框架
$cd /home/coinbase/workspace/eos/libraries/fc/vendor/websocketpp/test/utility
修改sha1.cpp 去掉 #define BOOST_TEST_DYN_LINK 的注释,宏 BOOST_TEST_DYN_LINK 定义动态链接方式
$g++ -o sha1 sha1.cpp -lboost_unit_test_framework -I /home/coinbase/workspace/eos/libraries/fc/vendor/websocketpp/
$./sha1
Running 3 test cases...
*** No errors detected
注意
1. 因为sha1.cpp 中
#include <websocketpp/sha1/sha1.hpp>
#include <websocketpp/utilities.hpp>
需要指定他们的文件夹路径 大写i
实际存放的路径 /home/coinbase/workspace/eos/libraries/fc/vendor/websocketpp/websocketpp/utilities.hpp
2.如果BOOST_TEST_DYN_LINK 没有打开会出现错误
$ g++ -o sha1 sha1.cpp -lboost_unit_test_framework -I /home/coinbase/workspace/eos/libraries/fc/vendor/websocketpp/
/usr/lib/gcc/x86_64-linux-gnu/5/../../../x86_64-linux-gnu/crt1.o:在函数‘_start’中:
(.text+0x20):对‘main’未定义的引用
collect2: error: ld returned 1 exit status