c++编译问题,求各路大神指点!

z253642075 2014-12-12 08:24:26
编译autodock程序出错!
错误代码为:

read_parameter_library.cc: 在函数‘void setup_parameter_library(FILE*, int, const char*, Unbound_Model, Linear_FE_Model*)’中:
read_parameter_library.cc:221:39: 错误:‘param_string_4_1’在此作用域中尚未声明
const char *const *param_string = param_string_4_1; // default
^
read_parameter_library.cc:223:22: 错误:‘param_string_4_0’在此作用域中尚未声明
param_string=param_string_4_0;
^
make[1]: *** [autodock4-read_parameter_library.o] 错误 1
make[1]: 离开目录“/root/src/autodock”
make: *** [all] 错误 2
[root@localhost autodock]#


read_parameter_library.cc文件的相关代码为:


// Default parameters
//
// These are set up in "default_parameters.h"
// and stored in the param_string_VERSION_NUM[MAX_LINES] array
// so far we have param_string_4_0 and param_string_4_1
// remember this choice for report_parameter_library()

const char *const *param_string = param_string_4_1; // default
if (unbound_model==Extended) {
param_string=param_string_4_0;
strncpy(parameter_library, "'extended' [AutoDock 4.0 default]", sizeof parameter_library);
}
else if (unbound_model==Unbound_Same_As_Bound) {
param_string=param_string_4_1;
strncpy(parameter_library, "'same as bound' [AutoDock 4.2 default]", sizeof parameter_library);
}
else {
sprintf(msg, "BUG: cannot determine %s parameter values \n",model_text);
stop(msg);
}


while ( param_string[counter] != NULL) {
const char* const s = param_string[counter];
param_keyword = parse_param_line(s);

(void)strcpy(parameter_library_line, param_string[counter]);
counter++;
if (debug > 0) {
pr(logFile, "DEBUG: parameter_library_line = %sDEBUG: param_keyword = %d\n", parameter_library_line, param_keyword);
}

switch (param_keyword) {
case PAR_:
case PAR_NULL:
case PAR_COMMENT:
break;

case PAR_VDW:
process( coeff_vdW, "van der Waals term")
break;

case PAR_HBOND:
process( coeff_hbond, "H-bonding term")
break;

case PAR_ESTAT:
process( coeff_estat, "electrostatic term")
break;

case PAR_DESOLV:
process( coeff_desolv, "desolvation term")
break;

case PAR_TORS:
process( coeff_tors, "torsional term")
break;

case PAR_UNBOUND:
sprintf(msg,
"%s: ERROR: the unbound model cannot be specified in the parameter library file.\nUse the DPF parameter 'unbound_model' instead.\n",
programname);
stop(msg);
break;

case PAR_ATOM_PAR:



怎么解决?求各位牛人帮帮忙,谢谢!
更多 0
...全文
243 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
z253642075 2014-12-14
  • 打赏
  • 举报
回复
引用 2 楼 kmsch 的回复:
你之前是不是没有声明过param_string_4_1
应该没有,怎么解决?哥!
kmsch 2014-12-14
  • 打赏
  • 举报
回复
你之前是不是没有声明过param_string_4_1
FightForProgrammer 2014-12-13
  • 打赏
  • 举报
回复
编译器错误提示很明显啊。 ‘param_string_4_1没有在此声明,这个变量定义或声明在哪呢??

64,674

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧