我正在尝试在我没有超级用户权限的计算机上的主文件夹中编译 GNU Screen。我正在使用 GNU Screen 版本从零开始的Linux。
tar xvzf screen-4.3.1.tar.gz
cd screen-4.3.1
./configure --prefix=$HOME
直到生成 Makefile 为止一切都很好。那么该命令make
存在于
utmp.c:99:1: warning: "pututline" redefined
In file included from screen.h:30,
from utmp.c:34:
os.h:262:1: warning: this is the location of the previous definition
utmp.c: In function 'makedead':
utmp.c:602: error: 'struct __exit_status' has no member named 'e_termination'
utmp.c:603: error: 'struct __exit_status' has no member named 'e_exit'
make: *** [utmp.o] Error 1
成功编译几个文件后。
有任何想法吗?
它引用的代码行看起来像这样
static void
makedead(u)
struct utmp *u;
{
u->ut_type = DEAD_PROCESS;
#if (!defined(linux) || defined(EMPTY)) && !defined(__CYGWIN__)
u->ut_exit.e_termination = 0; // Line 602
u->ut_exit.e_exit = 0; // Line 603
#endif
#if !defined(sun) || !defined(SVR4)
u->ut_user[0] = 0; /* for Digital UNIX, [email protected] */
#endif
}
不过我在 Linux 机器上:
Red Hat Enterprise Linux Server release 5.5 (Tikanga)
答案1
看来您缺少一些依赖项。这将是配置脚本中的一个错误。您可能想向screen
维护人员提交错误报告。