您需要安装 libXt-devel 软件包。
验证是否正确安装了 libXt-devel
$ cygcheck -c libXt-devel
Cygwin Package Information
Package Version Status
libXt-devel 1.1.5-1 OK
看起来你真正的问题是如何在 cygwin 上构建 tsim 而你关注的是错误的问题,我也会为你提供我使用的配方。
正确构建和链接需要以下补丁:
--- orig/tsim-0.84/src/Makefile.am 2008-09-10 12:45:17.000000000 +0200
+++ tsim-0.84/src/Makefile.am 2016-09-05 22:06:47.665318000 +0200
@@ -11,5 +11,6 @@
tsim_CFLAGS = -std=gnu99 -pedantic -Wall -Wextra -Wmissing-prototypes \
-DRESDIR=\"${datadir}/tsim\"
-tsim_LDFLAGS = -L/usr/X11R6/lib -lXaw -lXt -lXmu -lX11 -lXext
+tsim_LDFLAGS = -L/usr/lib
+tsim_LDADD = -largp
--- orig/tsim-0.84/src/bitmap.c 2008-09-08 13:14:16.000000000 +0200
+++ tsim-0.84/src/bitmap.c 2016-09-05 22:14:02.032117400 +0200
@@ -17,14 +17,14 @@
static void GetBitmapPath(
String name,
String full_name) {
- sprintf(full_name, "%s/%s/%s", app_dir(), bitmap_dir(), name);
+ sprintf(full_name, "%s%s/%s", app_dir(), bitmap_dir(), name);
}
void ReadCustomBitmaps(
Widget w) {
char custom_directory[BUFSIZE];
- sprintf(custom_directory, "%s/%s/customBitmaps", app_dir(), bitmap_dir());
+ sprintf(custom_directory, "%s%s/customBitmaps", app_dir(), bitmap_dir());
gBitmapDirectory = BDAddDirectory(w, custom_directory, NULL);
}
--- orig/tsim-0.84/src/pipe.c 2008-09-09 12:55:58.000000000 +0200
+++ tsim-0.84/src/pipe.c 2016-09-05 18:47:40.261754300 +0200
@@ -3,6 +3,7 @@
#include <stdlib.h> /* exit */
#include <unistd.h> /* read */
#include <sys/param.h> /* MIN, MAX */
+#include <sys/socket.h>
#if defined sun3 || defined sun4
#include <sys/filio.h>
Makefile.am 更改为 /usr/X11R6/lib 很久以前已被 /usr/lib 替换,并且这些库应该放在 LDADD 而不是 LDFLAGS 上以避免订单 durink 链接问题。需求中缺少-largp,而其他库将在configure期间正确添加
需要更改 bitmap.c 以避免错误加载默认数据。 Cygwin 对以“//”开头的路径有专门的含义,这是当前代码的副作用。
分步说明:
- 安装libargp-devel、libX11-devel、libXaw-devel、libXext-devel、libXmu-devel、libXt-devel
- 解压 tsim-0.84.tar.gz
- 应用补丁
- 运行 autoreconf ,它将正确重建 Makefile.in
- 运行 ./configure 它将正确重建 Makefile
- 运行make
- 运行make install
- 运行tsim
作为奖励,程序的外观: