2

元のcwm tgzパッケージ(netbsdパッケージではない)をコンパイルしました

./configure
make

エラーなしで動作します。でcwmを開始した後

./cwm

エラー

Shared object "libX11.so.7" not found

が表示されます。ldd の出力は次のとおりです。

    -lXft.2 => /usr/pkg/lib/libXft.so.2
    -lfontconfig.1 => /usr/pkg/lib/libfontconfig.so.1
    -lfreetype.7 => /usr/X11R7/lib/libfreetype.so.7
    -lz.1 => /usr/lib/libz.so.1
    -lgcc_s.1 => /usr/lib/libgcc_s.so.1
    -lc.12 => /usr/lib/libc.so.12
    -lbz2.1 => /usr/lib/libbz2.so.1
    -lexpat.2 => /usr/lib/libexpat.so.2
    -lXrender.2 => /usr/X11R7/lib/libXrender.so.2
    -lXext.7 => /usr/X11R7/lib/libXext.so.7
    -lX11.7 => /usr/X11R7/lib/libX11.so.7
    -lxcb.1 => /usr/X11R7/lib/libxcb.so.1
    -lXau.7 => /usr/X11R7/lib/libXau.so.7
    -lXdmcp.7 => /usr/X11R7/lib/libXdmcp.so.7
    -lX11.7 => not found
    -lXext.7 => not found

ここで、「not founds」は cwm バイナリを直接参照しています。コマンドとリンクされています

gcc -Wall -Icompat -D_REENTRANT -I/usr/pkg/include\
  -I/usr/X11R7/include/freetype2 -I/usr/X11R7/include\
  -I/usr/X11R7/include/freetype2 -I/usr/X11R7/include -g -O2\
  -I/usr/X11R7/include   -o cwm  calmwm.o draw.o screen.o  xmalloc.o\
  client.o grab.o search.o util.o xutil.o conf.o  input.o xevents.o\
  group.o  geographic.o kbfunc.o cursor.o  font.o -L/usr/pkg/lib\
  -Wl,-R/usr/pkg/lib -lXft -L/usr/X11R7/lib -lX11 -lXext

そのため、リンカは libX11 と libXext を見つける必要があります。

ローダーが文句を言うのはなぜですか?

4

1 に答える 1