我无法理解此错误。
make: None: Command not found
make: *** [Makefile:3879: api/api_commands.o] Error 127
我已尝试查找,但找不到特定问题 make: None:
的答案。
完整的问题和错误消息是 here 以供说明。
对此的帮助将不胜感激。
make
文件包含以下内容(第 3879 行与其余部分分开以进行说明):
...
includes_65 = -I../src/tactic/portfolio -I../src/tactic/smtlogics -I../src/ackermannization -I../src/model -I../src/ast/rewriter -I../src/ast -I../src/util -I../src/math/polynomial -I../src/math/automata -I../src/solver -I../src/tactic -I../src/ast/proofs -I../src/sat/sat_solver -I../src/tactic/core -I../src/ast/macros -I../src/ast/normal_forms -I../src/tactic/aig -I../src/tactic/bv -I../src/ast/rewriter/bit_blaster -I../src/tactic/arith -I../src/sat -I../src/sat/tactic -I../src/nlsat/tactic -I../src/nlsat -I../src/smt/tactic -I../src/smt -I../src/cmd_context -I../src/interp -I../src/smt/proto_model -I../src/smt/params -I../src/ast/pattern -I../src/parsers/smt2 -I../src/parsers/util -I../src/ast/substitution -I../src/math/grobner -I../src/math/euclid -I../src/math/simplex -I../src/ast/fpa -I../src/util/lp -I../src/muz/fp -I../src/muz/base -I../src/qe -I../src/muz/pdr -I../src/muz/transforms -I../src/math/hilbert -I../src/muz/dataflow -I../src/muz/clp -I../src/muz/tab -I../src/muz/rel -I../src/muz/bmc -I../src/muz/duality -I../src/duality -I../src/muz/ddnf -I../src/muz/spacer -I../src/tactic/nlsat_smt -I../src/tactic/ufbv -I../src/tactic/fpa -I../src/tactic/sls -I../src/math/subpaving/tactic -I../src/math/subpaving -I../src/math/interval -I../src/math/realclosure -I../src/opt -I../src
api/z3_macros.h.node: ../src/api/z3_macros.h
@echo done > api/z3_macros.h.node
api/z3_api.h.node: ../src/api/z3_api.h
@echo done > api/z3_api.h.node
...
api/api_ast_vector$(OBJ_EXT): ../src/api/api_ast_vector.cpp api/z3.h.node api/api_log_macros.h.node api/api_context.h.node api/api_ast_vector.h.node ast/ast_translation.h.node ast/ast_smt2_pp.h.node
@echo src/api/api_ast_vector.cpp
@$(CXX) $(CXXFLAGS) $(includes_65) $(CXX_OUT_FLAG)api/api_ast_vector$(OBJ_EXT) ../src/api/api_ast_vector.cpp
api/api_bv$(OBJ_EXT): ../src/api/api_bv.cpp api/z3.h.node api/api_log_macros.h.node api/api_context.h.node api/api_util.h.node ast/bv_decl_plugin.h.node
@echo src/api/api_bv.cpp
@$(CXX) $(CXXFLAGS) $(includes_65) $(CXX_OUT_FLAG)api/api_bv$(OBJ_EXT) ../src/api/api_bv.cpp
api/z3_replayer.h.node: ../src/api/z3_replayer.h api/z3.h.node util/z3_exception.h.node
@echo done > api/z3_replayer.h.node
api/api_commands$(OBJ_EXT): ../src/api/api_commands.cpp api/z3.h.node api/z3_replayer.h.node
@echo src/api/api_commands.cpp
@$(CXX) $(CXXFLAGS) $(includes_65) $(CXX_OUT_FLAG)api/api_commands$(OBJ_EXT) ../src/api/api_commands.cpp
api/api_config_params$(OBJ_EXT): ../src/api/api_config_params.cpp api/z3.h.node
...
由于 make
文件中的前几行格式相似并且没有引起任何错误,因此问题肯定出在 api_commands.cpp
文件中。我查看了这个文件,但我无法完全理解这段代码中发生了什么,所以我无法解释 None
变量的创建位置。
有问题的 api_commands.cpp
文件有 4856 行长,但它由几种格式的函数组成
void exec_Z3_params_set_bool(z3_replayer & in) {
Z3_params_set_bool(
reinterpret_cast<Z3_context>(in.get_obj(0)),
reinterpret_cast<Z3_params>(in.get_obj(1)),
in.get_symbol(2),
in.get_bool(3));
}
和一个函数 void register_z3_replayer_cmds(z3_replayer & in)
包含诸如
in.register_cmd(16, exec_Z3_params_set_bool, "Z3_params_set_bool");
如果有人熟悉此类或类似的代码并且知道此文件如何创建 None
变量,我们将不胜感激。