Xaw3d インストールメモ rin@maaya# tar xzf Xaw3d-1.5.tar.gz rin@maaya# su Password: bash# cd xc/lib bash# cp -r Xaw3d/ /usr/X11R6/lib bash# cd /usr/X11R6/ bash# mkdir -p config/makedepend bash# ln -s /usr/X11R6/bin/makedepend config/makedepend/makedepend bash# cd lib/Xaw3d/ bash# /usr/X11R6/bin/imake -I../X11/config -DTOPDIR=../.. -DCURDIR=lib/Xaw3d bash# make includes bash# make depend ../../config/makedepend/makedepend -- -I../.. -I../../exports/include -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_BSD_SOURCE -D_SVID_SOURCE -DFUNCPROTO=15 -DNARROWPROTO -DHAS_WCHAR_H -DHAS_WCTYPE_H -DNO_WIDEC_H -- AllWidgets.c AsciiSink.c AsciiSrc.c AsciiText.c Box.c Command.c Dialog.c Form.c Grip.c Label.c Layout.c List.c MenuButton.c MultiSrc.c MultiSink.c Paned.c Panner.c Porthole.c Repeater.c Scrollbar.c Simple.c SimpleMenu.c Sme.c SmeBSB.c SmeLine.c SmeThreeD.c StripChart.c Text.c TextSink.c TextSrc.c TextAction.c TextPop.c TextTr.c ThreeD.c Toggle.c Tree.c Vendor.c Viewport.c XawIm.c XawInit.c XawI18n.c sharedlib.c laygram.c laylex.c ../../config/makedepend/makedepend: warning: AllWidgets.c (reading /usr/include/bits/types.h, line 29): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: AllWidgets.c (reading /usr/include/sys/types.h, line 124): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: AllWidgets.c (reading /usr/include/X11/Xlib.h, line 73): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: AllWidgets.c (reading /usr/include/string.h, line 33): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: AsciiSink.c (reading /usr/include/stdio.h, line 33): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: AsciiSink.c (reading /usr/include/stdio.h, line 38): cannot find include file "stdarg.h" not in ../../stdarg.h not in ../../exports/include/stdarg.h not in /usr/local/lib/gcc-include/stdarg.h not in /usr/include/stdarg.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stdarg.h ../../config/makedepend/makedepend: warning: AsciiSink.c (reading /usr/include/_G_config.h, line 14): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: AsciiSink.c (reading /usr/include/libio.h, line 48): cannot find include file "stdarg.h" not in ../../stdarg.h not in ../../exports/include/stdarg.h not in /usr/local/lib/gcc-include/stdarg.h not in /usr/include/stdarg.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stdarg.h ../../config/makedepend/makedepend: warning: AsciiSrc.c (reading /usr/include/unistd.h, line 199): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: AsciiSrc.c (reading /usr/include/unistd.h, line 863): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: AsciiSrc.c (reading /usr/include/stdlib.h, line 33): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: AsciiSrc.c (reading /usr/include/alloca.h, line 25): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: MultiSrc.c (reading /usr/include/wctype.h, line 35): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: MultiSrc.c (reading XawI18n.h, line 32): cannot find include file "widec.h" not in ../../widec.h not in ../../exports/include/widec.h not in /usr/local/lib/gcc-include/widec.h not in /usr/include/widec.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/widec.h ../../config/makedepend/makedepend: warning: MultiSrc.c (reading /usr/include/wchar.h, line 38): cannot find include file "stddef.h" not in ../../stddef.h not in ../../exports/include/stddef.h not in /usr/local/lib/gcc-include/stddef.h not in /usr/include/stddef.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stddef.h ../../config/makedepend/makedepend: warning: Panner.c (reading /usr/include/math.h, line 289): cannot find include file "float.h" not in ../../float.h not in ../../exports/include/float.h not in /usr/local/lib/gcc-include/float.h not in /usr/include/float.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/float.h ../../config/makedepend/makedepend: warning: XawIm.c, line 71: cannot find include file "stdarg.h" not in ../../stdarg.h not in ../../exports/include/stdarg.h not in /usr/local/lib/gcc-include/stdarg.h not in /usr/include/stdarg.h not in /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/stdarg.h 「stdarg.h, stddef.h, float.h が無い」と怒られるので symlink を張る。 bash# ln -s /usr/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.66/include/stdarg.h /usr/include/stdarg.h bash# ln -s /usr/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.66/include/stddef.h /usr/include/stddef.h bash# ln -s /usr/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.66/include/float.h /usr/include/float.h また、 ../../config/makedepend/makedepend: warning: \ MultiSrc.c (reading XawI18n.h, line 32): cannot find include file "widec.h" と云われるので XawI18n.h を書き換える。 /----------------------ここから ------------------------------------------/ --- XawI18n.h Tue Oct 15 23:41:26 1996 +++ /xc/lib/Xaw/XawI18n.h Fri Jul 23 22:40:55 1999 @@ -1,4 +1,5 @@ /* $XConsortium: XawI18n.h,v 1.12 95/01/25 00:48:44 kaleb Exp $ */ +/* $XFree86: xc/lib/Xaw/XawI18n.h,v 3.3.4.1 1999/07/23 13:22:15 hohndel Exp $ */ /************************************************************ @@ -29,11 +30,13 @@ #ifdef HAS_WCTYPE_H #include +#ifndef NO_WIDEC_H #include #define wcslen(c) wslen(c) #define wcscpy(d,s) wscpy(d,s) #define wcsncpy(d,s,l) wsncpy(d,s,l) #endif +#endif #ifdef HAS_WCHAR_H #include @@ -53,6 +56,10 @@ #include #define iswspace(c) jisspace(c) #endif +#endif + +#ifdef __QNX__ +#define toascii( c ) ((unsigned)(c) & 0x007f) #endif #ifdef USE_XWCHAR_STRING /----------------------ここまで ------------------------------------------/ bash# make depend ../../config/makedepend/makedepend -- -I../.. -I../../exports/include -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE=500L -D_BSD_SOURCE -D_SVID_SOURCE -DFUNCPROTO=15 -DNARROWPROTO -DHAS_WCHAR_H -DHAS_WCTYPE_H -DNO_WIDEC_H -- AllWidgets.c AsciiSink.c AsciiSrc.c AsciiText.c Box.c Command.c Dialog.c Form.c Grip.c Label.c Layout.c List.c MenuButton.c MultiSrc.c MultiSink.c Paned.c Panner.c Porthole.c Repeater.c Scrollbar.c Simple.c SimpleMenu.c Sme.c SmeBSB.c SmeLine.c SmeThreeD.c StripChart.c Text.c TextSink.c TextSrc.c TextAction.c TextPop.c TextTr.c ThreeD.c Toggle.c Tree.c Vendor.c Viewport.c XawIm.c XawInit.c XawI18n.c sharedlib.c laygram.c laylex.c bash# make : : + gcc -o ./libXaw3d.so.6.1~ -shared -Wl,-soname,libXaw3d.so.6 AllWidgets.o AsciiSink.o AsciiSrc.o AsciiText.o Box.o Command.o Dialog.o Form.o Grip.o Label.o Layout.o List.o MenuButton.o MultiSrc.o MultiSink.o Paned.o Panner.o Porthole.o Repeater.o Scrollbar.o Simple.o SimpleMenu.o Sme.o SmeBSB.o SmeLine.o SmeThreeD.o StripChart.o Text.o TextSink.o TextSrc.o TextAction.o TextPop.o TextTr.o ThreeD.o Toggle.o Tree.o Vendor.o Viewport.o XawIm.o XawI18n.o XawInit.o laygram.o laylex.o -L../../exports/lib -lXmu -lXt -lSM -lICE -lXext -lX11 -lXt -lSM -lICE -lXext -lX11 -lc /usr/bin/ld: cannot find -lXmu collect2: ld returned 1 exit status + rm -f libXaw3d.so.6 + ln -s libXaw3d.so.6.1 libXaw3d.so.6 + rm -f ../../exports/lib/libXaw3d.so.6 + cd ../../exports/lib /bin/sh: ../../exports/lib: No such file or directory + ln -s ../../lib/Xaw3d/libXaw3d.so.6 . ln: ./libXaw3d.so.6: File exists make: *** [libXaw3d.so.6.1] Error 1 怒られるので、lib*.a なファイルをでっちあげる。 bash# ln -s /usr/X11R6/lib /usr/X11R6/exports/lib bash# ls -l /usr/X11R6/exports/lib lrwxrwxrwx 1 root root 14 1月 6日 20:30 exports/lib -> /usr/X11R6/lib bash# make bash# make install bash#