hns - 日記自動生成システム - Version 2.19.9

先月 2011年12月 来月
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

2011年12月31日() 旧暦 [n年日記] [更新:"2012/01/01 17:58:27"]

#1 [pkgsrc][NetBSD] /usr/pkg/include/xorg を見てくれない

modular-xorg-server を package しようとしている
  • wip/modular-xorg-server そのまま、および 1.11.3 にしたもの
  • xf86-input-keyboard そのまま、及び 1.6.0 にしたもの
  • xorg-util-macros 1.15.0 及び 1.16.0 にしたもの
で問題が起きる xorg-macros.pc が見つからないというような問題。
次のようにすると、確かに変。
modena@makoto 22:14:39/111231(~)% pkg_info -qL xorg-util-macros
/usr/pkg/share/aclocal/xorg-macros.m4
/usr/pkg/share/pkgconfig/xorg-macros.pc
/usr/pkg/share/util-macros/INSTALL
modena@makoto 22:14:40/111231(~)% pkg-config --cflags xorg-macros.pc
Failed to open 'xorg-macros.pc': No such file or directory
No package 'xorg-macros.pc' found
多分
-/usr/pkg/share/pkgconfig/xorg-macros.pc
+/usr/pkg/lib/pkgconfig/xorg-macros.pc
に入るべきなのだと思うが、自分で patch を作るのかな。
  • xorg-util-macros (の Makefile.am と Makefile.in に) patch を当てて (datadir) を (libdir) に変更
  • xorg-util-macros に buildlink3.mk を追加
  • xf86-input-keyboard に 上記を include する
とやって見て、まだ
No package 'xorg-macros.pc' found
と言われて、調べたら share も lib も本来探してくれるので、「そういう問題ではない」らしい。
ああ、pkg-config xproto とかするので、pkg-config xproto.pc の pc は余計だった。
modena@makoto 23:13:57/111231(..wip/modular-xorg-server)% cat `find . -name xorg-server.pc`
prefix=/usr/pkg
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include ${prefix}/include/xorg
datarootdir=${prefix}/share
moduledir=${exec_prefix}/lib/xorg/modules
sdkdir=${prefix}/include/xorg
sysconfigdir=${datarootdir}/X11/xorg.conf.d
このように includedir の ${prefix}/include/xorg を追加して見ているが、良く見ると sdkdir って、いつ使われるのだろう。
この変更をする前でも、次のように出ている。sdkdir が効いているのかな。 だとすると、名前 (xorg-server)の問題か ?
modena@makoto 23:17:15/111231(..wip/modular-xorg-server)% pkg-config --cflags xorg-server
-fvisibility=hidden -I/usr/pkg/include/xorg -I/usr/pkg/include -I/usr/pkg/include/pixman-1  
今出ているのは xf86-input-keyboard で次のような問題。
..

gmake[2]: Entering directory `/export/CHROOT
   /usr/pkgsrc/x11/xf86-input-keyboard/work/xf86-input-keyboard-1.6.0/src'
  CC     kbd.lo
kbd.c:21:25: error: xorg-server.h: No such file or directory
kbd.c:26:18: error: xf86.h: No such file or directory
kbd.c:28:25: error: xf86Privstr.h: No such file or directory
kbd.c:32:24: error: extnsionst.h: No such file or directory
kbd.c:33:21: error: extinit.h: No such file or directory
kbd.c:34:22: error: inputstr.h: No such file or directory
kbd.c:36:24: error: xf86Xinput.h: No such file or directory
kbd.c:37:25: error: xf86_OSproc.h: No such file or directory
これらは /usr/pkg/include/xorg の下にあるが、見えていないらしい。
modena@makoto 23:24:52/111231(..x11/xf86-input-keyboard)% find . -name xorg-server.h
./work/.buildlink/include/xorg/xorg-server.h
試しに(中の) Makefile の CFLAGS の行に手で追加したら、完了した
-CFLAGS = -O2 -I/usr/pkg/include
+CFLAGS = -O2 -I/usr/pkg/include -I/usr/pkg/include/xorg -I/usr/pkg/include/pixman-1
その時に見たのだけれど、次のような行があった。何か一部がうまく行っていないのだな。
XORG_LIBS = -Wl,-R/usr/pkg/lib -L/usr/pkg/lib -lpixman-1 -lpciaccess  
同じような問題が xf86-input-mouse でも起きる。
次のようにすると、(手で Makefile を変更するのと同じ意味だけれど) 少し進む
Index: Makefile
===================================================================
RCS file: /e/cvsync/cvsync/pkgsrc/x11/xf86-input-mouse/Makefile,v
retrieving revision 1.12
diff -u -r1.12 Makefile
--- Makefile	14 Sep 2010 11:03:11 -0000	1.12
+++ Makefile	1 Jan 2012 03:06:26 -0000
@@ -9,6 +9,7 @@
 MAINTAINER=	joerg@NetBSD.org
 HOMEPAGE=	http://xorg.freedesktop.org/
 COMMENT=	Modular Xorg mouse driver
+CFLAGS+=	-I${PREFIX}/include/xorg -I${PREFIX}/include/pixman-1
 
 PKG_DESTDIR_SUPPORT=	user-destdir
 
が、まだ次のようになる
libtool: compile: cc -DHAVE_CONFIG_H -I. -I.. -I../src
-I/export/CHROOT/usr/pkgsrc/x11/xf86-input-mouse/work/.buildlink/include
-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes
-Wmissing-declarations -Wnested-externs -fno-strict-aliasing
-Wbad-function-cast -O2
-I/export/CHROOT/usr/pkgsrc/x11/xf86-input-mouse/work/.buildlink/include/xorg
-I/export/CHROOT/usr/pkgsrc/x11/xf86-input-mouse/work/.buildlink/include/pixman-1
-MT mouse.lo -MD -MP -MF .deps/mouse.Tpo -c mouse.c -fPIC
-DPIC -o .libs/mouse.o

mouse.c:128: error: expected declaration specifiers or '...' before 'IDevPtr'
mouse.c:134: error: expected ')' before 'local'
mouse.c:169: warning: initialization from incompatible pointer type
こういうのは、大抵、include が一つ読めないというような問題のはずなのだが。
modena@makoto 12:35:31/120101(..x11/xf86-input-mouse)% 
cat -n `find . -name mouse.c` | sed -n 120,130p 
   120       */
   121      int nib_table[NIB_COUNT][NIB_SIZE];
   122  
   123  } DragLockRec, *DragLockPtr;
   124  
   125  
   126  
   127  static const OptionInfoRec *MouseAvailableOptions(void *unused);
   128  static InputInfoPtr MousePreInit(InputDriverPtr drv, IDevPtr dev, int flags);
   129  #if 0
   130  static void MouseUnInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags);
ということで結局、現在は、 patches/patch-aa は削除。 このような patch で package している。

Comments related this article

Re: /usr/pkg/include/xorg を見てくれない by Makoto Fujiwara    2012/01/30 21:13
どうもこれらしいですよ Index: Makefile =========================================...


最近の日記
2024年05月08日
comparison on ./buildsh tools
2024年05月06日
py-setuptools (python 3.11.9)
make release took 1 hours and 10 min
qemu invocation for 10.99.10
2024年05月05日
Windows 10 version
serial connection
bc bench
2024年05月04日
Trial on 10.99.10
another version (later trial) to succeed
2024年04月29日
dkim
以上、1 日分です。
タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project

Count.cgi (since 2000/02/05)