我正在尝试使用eosio.cdt和cmake构建EOS智能合约。
编译成功,但链接失败并显示以下日志。
/usr/local/eosio.cdt/bin/wasm-ld: error: locale.cpp.o: undefined symbol: strftime_l
/usr/local/eosio.cdt/bin/wasm-ld: error: memory.cpp.o: undefined symbol: __cxa_pure_virtual
/usr/local/eosio.cdt/bin/wasm-ld: error: system_error.cpp.o: undefined symbol: __cxa_pure_virtual
由cmake生成的用于链接模块的代码如下。
eosio-ld -L=/usr/local/eosio.cdt/lib/ CMakeFiles/a.wasm.dir/a.cpp.o CMakeFiles/a.wasm.dir/validator/b.cpp.o CMakeFiles/a.wasm.dir/validator/c.cpp.o CMakeFiles/a.wasm.dir/common/d.cpp.o -o a.wasm
libc ++。a存在于/usr/local/eosio.cdt/lib/中。
如何解决此问题?
答案 0 :(得分:0)
只需包含<eosiolib/eosio.hpp>
头文件。