Cygwin なんでも掲示板

一覧最新記事過去一覧 | 検索FAQアンテナHOME
(新規投稿・発言はできません)


スレッド

└◇840:
コンパイルがうまくいきません。 [H_N] 12/12 16:13

 ├◇841:Re:コンパイルがうまくいきません。 [H_N] 12/12
 ├◇842:Re: コンパイルがうまくいきません。 [foo] 12/12
 │└◇844:Re[2]: コンパイルがうまくいきません。 [H_N] 12/12
 │ └◇845:Re[3]: コンパイルがうまくいきません。 [bar] 12/12
 │  ├◇847:Re[4]: コンパイルがうまくいきません。 [H_N] 12/13
 │  └◇848:ありがとうございました。 [H_N] 12/13 <
 └◇843:Re:コンパイルがうまくいきません。 [bar] 12/12


840● コンパイルがうまくいきません。[ H_N ] 2002 12/12 16:13
お世話になります。
10年くらい前のプログラムをコンパイル(リンク)した
いのですが、次のようなエラーが出てmakeできません。
どうもプログラムよりも設定を含めcygwinの問題だと思います。
たぶんX関係の問題かとも思いますが、初心者なのでよく分かり
ません。
どなたか、アドバイスをお願いします。

makefileの内容:
g77 -o xycyg -v xycyg.o senksub.o senkcalc.o cklib.o -lXm -lXt -lX11 -lm -L/usr/X11R6/lib

エコーバック及びエラー(あまりに長いのでかなり省略)
Driving: g77 -o xycyg -v xycyg.o senksub.o senkcalc.o cklib.o -lXm -lXt -lX11 -lm -L/usr/X11R6/lib -lfrtbegin -lg2c
Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/3.2/specs
  ・(省 略)
  ・
  ・
  ・
  ・
rnel32 -ladvapi32 -lshell32 -lgcc /usr/lib/gcc-lib/i686-pc-cygwin/3.2/crtend.o
/usr/X11R6/lib/libXt.a(Shell.o)(.text+0x3536):Shell.c: undefined reference to `_SmcCloseConnection'・
  ・
  ・(以下同様のShell.cのエラーが続く) 
  ・
  ・
  ・
SmcSaveYourselfDone'
collect2: ld returned 1 exit status
make: *** [xycyg] Error 1

なお、上のファイルのうち
xycyg.oはC、senksub.o senkcalc.o cklib.oはFORTRAN
プログラムで、それぞれをコンパイルしたときには正常終了
しています。

長くなって申し訳ありませんが、よろしくお願いします。
スレッド一覧


841● Re:コンパイルがうまくいきません。[ H_N ] 2002 12/12 16:37
すみません。上記は質問です。
スレッド一覧


842● Re: コンパイルがうまくいきません。[ foo ] 2002 12/12 17:22
> /usr/X11R6/lib/libXt.a(Shell.o)(.text+0x3536):Shell.c: undefined reference to `_SmcCloseConnection'

> SmcSaveYourselfDone'

これらは libSM.a にあります。
スレッド一覧


844● Re[2]: コンパイルがうまくいきません。[ H_N ] 2002 12/12 17:46
fooさん、barさん、ありがとうございました。
かなりエラーは少なくなりましたが、同じような内容でまだいくつか出ています。

すみませんが、よろしくお願いいたします。

makefileの内容:
g77 -o xycyg -v xycyg.o senksub.o senkcalc.o cklib.o -lXm -lXt -lX11 -lSM -lXext -L/usr/X11R6/lib

エコーバック及びエラー(今回は省略していません。)
Driving: g77 -o xycyg -v xycyg.o senksub.o senkcalc.o cklib.o -lXm -lXt -lX11 -l
SM -lXext -L/usr/X11R6/lib -lfrtbegin -lg2c
Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/3.2/specs
Configured with: /netrel/src/gcc-3.2-3/configure --enable-languages=c,c++,f77,ja
va --enable-libgcj --enable-threads=posix --with-system-zlib --enable-nls --with
out-included-gettext --enable-interpreter --disable-sjlj-exceptions --disable-ve
rsion-specific-runtime-libs --enable-shared --build=i686-pc-linux --host=i686-pc
-cygwin --target=i686-pc-cygwin --enable-haifa --prefix=/usr --exec-prefix=/usr
--sysconfdir=/etc --libdir=/usr/lib --includedir=/nonexistent/include --libexecd
ir=/usr/sbin
Thread model: posix
gcc version 3.2 20020927 (prerelease)
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/collect2.exe -Bdynamic --dll-search-prefix=
cyg -o xycyg.exe /usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../crt0.o /usr/lib/gc
c-lib/i686-pc-cygwin/3.2/crtbegin.o -L/usr/X11R6/lib -L/usr/lib/gcc-lib/i686-pc-
cygwin/3.2 -L/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../.. xycyg.o senksub.o senk
calc.o cklib.o -lXm -lXt -lX11 -lSM -lXext -lfrtbegin -lg2c -lgcc -lcygwin -luse
r32 -lkernel32 -ladvapi32 -lshell32 -lgcc /usr/lib/gcc-lib/i686-pc-cygwin/3.2/cr
tend.o
/usr/X11R6/lib/libXt.a(Shell.o)(.text+0x37cd):Shell.c: undefined reference to `_
IceConnectionNumber'
/usr/X11R6/lib/libXt.a(Shell.o)(.text+0x3e85):Shell.c: undefined reference to `_
IceProcessMessages'
collect2: ld returned 1 exit status
make: *** [xycyg] Error 1

nishida@HNISHI1 ~/xsenkplot
$ make
g77 -o xycyg -v xycyg.o senksub.o senkcalc.o cklib.o -lXm -lXt -lX11 -lSM -lXext
-L/usr/X11R6/lib
Driving: g77 -o xycyg -v xycyg.o senksub.o senkcalc.o cklib.o -lXm -lXt -lX11 -l
SM -lXext -L/usr/X11R6/lib -lfrtbegin -lg2c
Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/3.2/specs
Configured with: /netrel/src/gcc-3.2-3/configure --enable-languages=c,c++,f77,ja
va --enable-libgcj --enable-threads=posix --with-system-zlib --enable-nls --with
out-included-gettext --enable-interpreter --disable-sjlj-exceptions --disable-ve
rsion-specific-runtime-libs --enable-shared --build=i686-pc-linux --host=i686-pc
-cygwin --target=i686-pc-cygwin --enable-haifa --prefix=/usr --exec-prefix=/usr
--sysconfdir=/etc --libdir=/usr/lib --includedir=/nonexistent/include --libexecd
ir=/usr/sbin
Thread model: posix
gcc version 3.2 20020927 (prerelease)
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/collect2.exe -Bdynamic --dll-search-prefix=
cyg -o xycyg.exe /usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../crt0.o /usr/lib/gc
c-lib/i686-pc-cygwin/3.2/crtbegin.o -L/usr/X11R6/lib -L/usr/lib/gcc-lib/i686-pc-
cygwin/3.2 -L/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../.. xycyg.o senksub.o senk
calc.o cklib.o -lXm -lXt -lX11 -lSM -lXext -lfrtbegin -lg2c -lgcc -lcygwin -luse
r32 -lkernel32 -ladvapi32 -lshell32 -lgcc /usr/lib/gcc-lib/i686-pc-cygwin/3.2/cr
tend.o
/usr/X11R6/lib/libXt.a(Shell.o)(.text+0x37cd):Shell.c: undefined reference to `_
IceConnectionNumber'
/usr/X11R6/lib/libXt.a(Shell.o)(.text+0x3e85):Shell.c: undefined reference to `_
IceProcessMessages'
collect2: ld returned 1 exit status
make: *** [xycyg] Error 1
スレッド一覧


845● Re[3]: コンパイルがうまくいきません。[ bar ] 2002 12/12 18:06
じゃあ、さらに -lICE を追加。

なんでそれでうまくいくのか少しは考えてくれよ。
スレッド一覧


847● Re[4]: コンパイルがうまくいきません。[ H_N ] 2002 12/13 08:13
どうも、お手数をお掛けして申し訳ありません。

エラーの出ている関数を検索して、関連のライブラリーを探そうとしたのですが、見つけることができなく、投稿いたしました。
そのような情報は、どこを見れば分かるのでしょうか?
初心者ですので、向学のため、是非お伺いしたいんですが・・・・・・

重ね重ねお手数をお掛けいたしますが、よろしくお願いいたします。
スレッド一覧


848● ありがとうございました。[ H_N ] 2002 12/13 08:39
ありがとうございました。
コンパイル成功です。
また、関連のライブラリーの見つけ方ですが、テキスト検索で
何とか分かることができました。なにをとち狂ったか"_"まで付けて検索していたので引っかからなかったようです。とにかく何かライブラリーが足らないことだけははっきりしていたのですが、かなりイライラしていたので更にはまっていたようです。

大変お手数をお掛けしました。
スレッド一覧


843● Re:コンパイルがうまくいきません。[ bar ] 2002 12/12 17:27
cygwin の問題ではないですね。
makefile というか コンパイルオプションがよくないようです。
-lXm -lXt -lX11 を -lXm -lXt -lX11 -lSM -lXext にしてみましょう。
あと、 cygwin では -lm は不要です。
スレッド一覧

早田のホームページへ
CGIROOM