您正在查看: 2020年9月

EOS 编译 llvmWARshim error

编译EOS2.x版本时,由于使用WSL,或者Windows git 操作过,很容易把软连接丢了,所以报错如下

/eos/libraries/chain/webassembly/eos-vm-oc/llvmWARshim.llvmwar:1:1: error: ‘llvmWARshim’ does not name a type
 llvmWARshim.cpp
 ^~~~~~~~~~~
libraries/chain/CMa

手动修复软连接

cd /eos/libraries/chain/webassembly/eos-vm-oc
rm llvmWARshim.llvmwar
ln -s llvmWARshim.cpp llvmWARshim.llvmwar

修复后ll查看如下

llvmWARshim.llvmwar -> llvmWARshim.cpp*

EOS合约中获取当天本地时间的零点和第二天的零点

获取当前时间所在当天的本地零点时间

time_point contract::last_zeto_time_point(time_point last_do_time_point) {
   uint64_t days_count = (last_do_time_point.time_since_epoch().count() + (8 * one_hour_msec)) / one_day_msec;
   uint64_t days_msec = days_count * one_day_msec;
   days_msec -= (8 * one_hour_msec);
   return time_point(microseconds(days_msec));
}

获取当前时间所在当天的本地第二天的零点时间

time_point contract::next_zeto_time_point(time_point last_do_time_point) {
   return last_zeto_time_point(last_do_time_point) + microseconds(one_day_msec);
}