在编译SME-3.2.73的时候,遇到了Tcl_CreateCommand程序调用编译错误,后来在网络上google才知道这是tcl升级到8.4的问题。
invalid conversion from ‘int (*)(void*, Tcl_Interp*, int, char**)’ to ‘int (*)(void*, Tcl_Interp*, int, const char**)’
后来在http://wiki.tcl.tk/3669找到了答案。
解决办法:
1 可以在g++编译的时候加上-DUSE_NON_CONST参数
2 可以在代码中引入tcl.h之前定义此宏。
#define USE_NON_CONST
#include “tcl.h”
发表回复