Cygwin + MinGW + GCC 相談室 Part 3
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2007/04/30(月) 23:52:47過去スレ:
cygwin + mingwn + gcc 相談室 Part2
http://pc11.2ch.net/test/read.cgi/tech/1126103347/
cygwin + mingwn + gcc 相談室
http://pc8.2ch.net/test/read.cgi/tech/1058134693/
関連サイト:
Cygwin http://www.cygwin.com/
MinGW http://www.mingw.org/
関連スレッド:
GCCについて part7
http://pc11.2ch.net/test/read.cgi/tech/1145357824/
【激遅】AppleGCC【絶望】
http://pc11.2ch.net/test/read.cgi/tech/1173267844/
0002デフォルトの名無しさん
2007/05/01(火) 00:17:390003デフォルトの名無しさん
2007/05/01(火) 01:25:27/ \ ∧__T _ ,,,r -r-T‐-、
/ \─ 。r *o:*::f:::r:::..l
__,-,,-、 ___'/ /\ /\\::::::::*o;;;ro ot_f_ヽ丿
__/| | l |ヾ-"~ | (_人) | -v--v-'''''''"V"~~┴
l⌒ 二 -l ..uUU""l-- \ /
└ l´ (,,,, ./., - イ /
.ト | { |,.ィ'''フ''''=、r'"~ i,, `ヽr''"`ヽ、 ヽ、
ヽ、i / .∠ / / .| ノ" )=、 ̄ ̄,,..ィ'"´i ヽ、
/ y'_/ / / / | ノ ´ ̄ `Y"´ i
.ゝ-+-::i⌒ヽ / '' ,.| .__,,.. レ _,,,,、 j、、
.__/::| | i >>1 / r´ } ィ'''i" J ,,.ィ'"~ `'ヲ''ー-、ノ、 ヽ、
/ /:| | i ,,ノ / ,,l ,人 ,,l、 ノt ) `ヽヽ
i ::| | ) .| /, ,;' .人 /"``ゝ、 人 ,,イ jt、 ヽ i
/i ::し// |''´ 、 ` _ノ /、 `ー--;::-ニ"_,ゝ=---‐''" ,ノ ヽ、 ヽ t、
::| (( ヾ、ノ, .__ノ´ ヽ、 r 、 f" `i´ ̄` Y `ヽ / ゝ-,ヲ''' )
0004デフォルトの名無しさん
2007/05/01(火) 03:06:07乙
0005デフォルトの名無しさん
2007/05/01(火) 03:52:090006デフォルトの名無しさん
2007/05/01(火) 20:34:510007デフォルトの名無しさん
2007/05/03(木) 12:25:29GCCの話すらしてないな、あそこは。
0008デフォルトの名無しさん
2007/05/03(木) 23:18:11前スレはタイトル修正せずに立ててしまって正直スマンカッタ。
0009デフォルトの名無しさん
2007/05/11(金) 21:20:02msys用のmanコマンドって落ちてませんか?
0010デフォルトの名無しさん
2007/05/11(金) 23:04:07http://www.mingw.org/MinGWiki/index.php/FAQ
manpageで検索すれ
0011デフォルトの名無しさん
2007/05/14(月) 05:52:03の作成方法教えて下さーいm(_ _)m
0012デフォルトの名無しさん
2007/05/14(月) 06:07:400013デフォルトの名無しさん
2007/05/14(月) 07:15:33氏ね
0014デフォルトの名無しさん
2007/05/14(月) 07:16:12何故こいつはcygwinスレで質問するのか
そもそもなぜunix板にcygwinスレがあるのか
いくつもの謎を乗り越えて
このスレは育っていくのだな
0015デフォルトの名無しさん
2007/05/14(月) 09:02:47エディタでソース書いてコンパイラに食わせる。
0016デフォルトの名無しさん
2007/05/14(月) 09:33:40Linux 板には 1 つもスレないのな。
0017デフォルトの名無しさん
2007/05/14(月) 10:45:01cygwinはunixでもlinuxでもないんだからなくてもおかしくはないだろ。
bashを始めとした擬似Unix環境なんだからあってもおかしくはないが。
0018デフォルトの名無しさん
2007/05/14(月) 10:53:05Cygwin is a Linux-like environment for Windows.
まあ、Windows 板にあるのがベストだと思うが、1 つしかスレないのな。
001917
2007/05/14(月) 10:54:220020デフォルトの名無しさん
2007/05/14(月) 10:56:012つあったら重複で削除だろうに、「1つしか」って何が不満だ?
0021デフォルトの名無しさん
2007/05/14(月) 11:02:56一番 Unix 板が cygwin に関心があるのかね。
0022デフォルトの名無しさん
2007/05/14(月) 13:41:08つーか、Linux板ではLinuxじゃないから板違いと言われそうだし
Win板はレベル低いヤツはとことん低いからな
Cygwinとは関連が微妙に薄いながらも
何気に一番まともにスレを進行できるのがUnix板ってことなんじゃね
0023デフォルトの名無しさん
2007/05/14(月) 21:45:31ここが一番会話が充実してる気がする
0024デフォルトの名無しさん
2007/05/15(火) 13:10:41もともと UNIX-like environment って言ってて、
いつの頃からか linux をターゲットに路線変更して
linux-like environment を標榜するようになった
んだったと記憶してるが俺の記憶は定かではない。
0025デフォルトの名無しさん
2007/05/15(火) 13:35:51坊やが気まぐれで立てた糞スレが何年も消えずに残ってるだけ
あそこは過疎板だから数年放置しても落ちないんだな
0026デフォルトの名無しさん
2007/05/15(火) 13:49:160027デフォルトの名無しさん
2007/05/15(火) 14:31:37しかし Linux をターゲットってのもおかしな話なんだよねぇ…
cygwin が kernel 含むわけでもないし…
POSIX and GNU environment って感じ?
0028デフォルトの名無しさん
2007/05/15(火) 14:33:000029デフォルトの名無しさん
2007/05/15(火) 16:08:43これって弄ればVC8でコンパイル出来るようになるのん?
素人の俺にもわかるように教えて
0030デフォルトの名無しさん
2007/05/15(火) 16:16:52できるかもしれんし、できないかもしれん。WinAPI以外のライブラリ(例えばsocket)を特に使っていないのなら、多分大丈夫。
使っている場合は、類似ライブラリ(上記のようにsocketならばWinSock)を使用するように修正する必要がある。
0031デフォルトの名無しさん
2007/05/15(火) 16:25:400032デフォルトの名無しさん
2007/05/15(火) 16:29:260033デフォルトの名無しさん
2007/05/15(火) 16:51:30出来るかどうかはわからないけどやってみるよ
0034デフォルトの名無しさん
2007/05/15(火) 22:04:17俺の記憶でも最初 UNIX-like って言ってたような気がするので変遷をさらってみた。
ttp://web.archive.org/web/20000815200506/sources.redhat.com/cygwin/
ttp://web.archive.org/web/20010515223905/http://cygwin.com/
>The Cygwin tools are ports of the popular GNU development tools and utilities for Windows 95, 98, and NT.
ttp://web.archive.org/web/20010629115427/http://www.cygwin.com/
>The Cygwin tools are ports of the popular GNU development tools and utilities for Windows.
↑まで次の文で UNIX-like API って記述がある。
ttp://web.archive.org/web/20010815132508/http://www.cygwin.com/index.html
ttp://web.archive.org/web/20011201190309/http://cygwin.com/index.html
>Cygwin is a UNIX environment for Windows.
ttp://web.archive.org/web/20020206235942/http://cygwin.com/index.html
ttp://web.archive.org/web/20021130213920/http://www.cygwin.com/
>Cygwin is a UNIX environment, developed by Red Hat, for Windows.
ttp://web.archive.org/web/20021231144231/http://cygwin.com/index.html
ttp://web.archive.org/web/20030423062911/http://www.cygwin.com/
>Cygwin is a UNIX environment for Windows.
http://web.archive.org/web/20030605214340/http://www.cygwin.com/
>Cygwin is a Linux-like environment for Windows.
0035デフォルトの名無しさん
2007/05/16(水) 04:53:36何か趣旨替えでもしたんだろうか。
0036デフォルトの名無しさん
2007/05/16(水) 11:27:30コマンドプロンプトからMSYSのsh.exeを立ち上げて使っています。
この環境で、Cのプログラムから fprintf(stderr,"hoge\n"); とすると、
ちゃんと出力されません。
ちなみにMSYSのrvxtを普通に立ち上げて使えば、ちゃんと出力されます。
どうすれば出力されるようになりますでしょうか?
もっと適したスレがあったらすみません。
0037デフォルトの名無しさん
2007/05/16(水) 15:24:44sh-2.04$ cat test.c
#include <stdio.h>
int main(int argc, char **argv) { fprintf(stderr, "hoge\n"); }
sh-2.04$ gcc -o test.exe test.c
sh-2.04$ test
sh-2.04$ cat test2.c
#include <stdio.h>
int main(int argc, char **argv) { fprintf(stderr, "hoge\n"); return 0; }
sh-2.04$ gcc -o test2.exe test2.c
sh-2.04$ test2
hoge
sh-2.04$
003835
2007/05/17(木) 10:15:46ありがとうございます。おかげさまで落ち着きが出て原因がわかりました。
「return 0」ではなくコンパイルオプションに「-mwindows」があることが原因でした。
コンパイルオプションに「-mconsole」をつけることで解決しました。
0039デフォルトの名無しさん
2007/05/17(木) 10:27:09Mesa-6.5.3とglut-3.7.6をmakeし、/mingw/include /mingw/libに
ヘッダファイルとライブラリをコピーし次のサンプルプログラム
をコンパイルしたところlinkerエラーになってしまいます。
#include <GL/glut.h>
void display(void) { }
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutCreateWindow(argv[0]);
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
$ gcc -o test.exe test.c -lglut32 -lopengl32 -L/mingw/lib
C:/(hoge)/Temp/ccG2baaa.o:test.c:(.text+0x1c): undefined reference to `__glutInitWithExit'
C:/(hoge)/Temp/ccG2baaa.o:test.c:(.text+0x37): undefined reference to `__glutCreateWindowWithExit'
C:/(hoge)/Temp/ccG2baaa.o:test.c:(.text+0x52): undefined reference to `__glutCreateMenuWithExit'
C:/(hoge)/Temp/ccG2baaa.o:test.c:(.text+0xae): undefined reference to `glutDisplayFunc'
C:/(hoge)/Temp/ccG2baaa.o:test.c:(.text+0xb3): undefined reference to `glutMainLoop'
collect2: ld returned 1 exit status
リンカーがlibglut32.aを見つけられてないような気がしるのですが、
ライブラリをコピーするだけではだめなのでしょうか。
0040デフォルトの名無しさん
2007/05/17(木) 10:40:07リンカは引き数の順番に意味があるから、-Lを-lより前に持ってきてみたら?
#それでダメならまた別の理由と言うことになるけど。
0041デフォルトの名無しさん
2007/05/17(木) 13:16:54コメントありがとうございます。
入れ替えてみましたが変わりありませんでした。
その昔触っていたFreeBSDでライブラリをコピーしたあとldconfig
し忘れていたような状態に似ているのですが、
MinGW+MSYSにldconfigはないようで。
0042ライブラリが足りないとか?
2007/05/17(木) 13:36:18つ[nm -v /mingw/lib/libglut32.a | grep -w T | grep glutMainLoop]
004339
2007/05/17(木) 14:47:1400000000 T _glutMainLoop@0
$ nm -v /mingw/lib/libglut32.a |grep -w T |grep glutDisplayFunc
00000000 T _glutDisplayFunc@4
$ nm -v /mingw/lib/libglut32.a |grep -w T |grep __glutCreateMenuWithExit
00000000 T ___glutCreateMenuWithExit@8
$ nm -v /mingw/lib/libglut32.a |grep -w T |grep __glutCreateWindowWithExit
00000000 T ___glutCreateWindowWithExit@8
$ nm -v /mingw/lib/libglut32.a |grep -w T |grep __glutInitWithExit
00000000 T ___glutInitWithExit@12
一応あるみたいです。
004435
2007/05/17(木) 14:58:19---
C:\MinGW\lib には libglut32.a, libglut.a などがあるが、なぜか glut.h がない。
Windows 用の glut である,glut-3.7.6-bin.zip を入手、展開(http://www.xmission.com/~nate/glut.htmlから)
glut32.dll を C:\WINDOWS\system32 に入れる
ming32gl.zip を google 等で探して展開し、GL ディレクトリの中身をすべて、C:\MinGW\include\GL と置き換え。
* compile
gcc -o a.out test01.c -lopengl32 -lglut32
0045デフォルトの名無しさん
2007/05/17(木) 15:39:39確か普通に MinGW インストールしたらインポートライブラリ(libglut32.a)は
インストールされる気がしたんだが…dllとヘッダだけコピーすればOKじゃなかった?
ttp://cefiro.homelinux.org/topics/MinGW/setup-20070319.html
ttp://cefiro.homelinux.org/resources/doc/GLUT/install-mingw32-01.html
004639
2007/05/17(木) 17:23:30主たる目的がMesaをソースからコンパイルするところに
ありまして、バイナリをコピーするというのではイマイチ
解決にはならなかったりします。(^_^;
ところで妙なことになりました。
このパソコンにはcygwinもインストールされていまして、
$ /c/cygwin/bin/gcc -o test.exe test.c -L/mingw/lib/ -lglut32 -lopengl32
とやると、実行ファイルができウィンドが表示できました。
全然めでたくはないです。
しかし一歩前進ということで。
004739
2007/05/18(金) 10:00:29>44 のヘッダファイルと差し替えるとコンパイルできました。
根本的な原因についてはおいおい調べることにします。
>35
CygwinがRedHatに吸収されてから替わったような気がします。
0048デフォルトの名無しさん
2007/05/18(金) 11:42:280049デフォルトの名無しさん
2007/05/18(金) 12:33:250050デフォルトの名無しさん
2007/05/19(土) 08:33:250051デフォルトの名無しさん
2007/05/19(土) 11:13:380052デフォルトの名無しさん
2007/05/19(土) 12:51:01アセンブラにて
.global hoge
.type hoge, @function
という書き方があるのですが、.type以降の意味はなんでしょうか?
0053デフォルトの名無しさん
2007/05/19(土) 18:49:06アセンブラ… ( ゚д゚)ウッウー
http://pc11.2ch.net/test/read.cgi/tech/1174825173/l50
0054デフォルトの名無しさん
2007/05/20(日) 12:10:32誘導ありがとうございます
向こうで聞いてみます
0055デフォルトの名無しさん
2007/05/20(日) 19:11:45WindowsでGAS使いたいけど、どうすればいいのでしょう?
asm文書いてコンパイルしてリンカすると以下のようにエラーになってしまいます。
ld: warning: cannot find entry symbol _mainCRTStartup; defaulting to 00401000
a.out(.text+0x21):hello.c: undefined reference to `_alloca'
a.out(.text+0x26):hello.c: undefined reference to `__main'
a.out(.text+0x32):hello.c: undefined reference to `printf'
0056デフォルトの名無しさん
2007/05/20(日) 20:46:16せめてどんなプログラムを書いたか、どんなコマンドを入力したか、くらいは書こうや。
0057デフォルトの名無しさん
2007/05/20(日) 21:00:33C標準ライブラリともリンクしてあげてください。
0058デフォルトの名無しさん
2007/05/20(日) 21:31:08すみません。
�@Cで以下のようなソースを書きました。
#include <stdio.h>
int main()
{
printf("Hello World!");
return 0;
}
�AGCC(MinGW 3.4.2)で -S 付けてアセンブリのソースを出力
�B出てきたアセンブリを as を使い ld を実行すると>>55のようなエラーでました。
以上です。
0059デフォルトの名無しさん
2007/05/20(日) 21:37:100060デフォルトの名無しさん
2007/05/20(日) 22:17:06リンカのオプションは?
0061デフォルトの名無しさん
2007/05/20(日) 22:31:36リンカのオプションは何も付けていません。
付けないよまずいですかね?
0062デフォルトの名無しさん
2007/05/21(月) 09:43:510063デフォルトの名無しさん
2007/05/21(月) 09:47:480064デフォルトの名無しさん
2007/05/21(月) 11:00:47ゴールデンウィークが最小限であることを言い表す言葉なんだって。
0065デフォルトの名無しさん
2007/05/21(月) 19:24:030066デフォルトの名無しさん
2007/05/21(月) 22:42:54軟弱者でスマン
0067デフォルトの名無しさん
2007/05/22(火) 00:17:100068デフォルトの名無しさん
2007/05/22(火) 16:23:45Purifyplusとか使ってる金持ちおるんかいな。使い心地とか聞いてみたい。
0069デフォルトの名無しさん
2007/05/22(火) 16:53:260070デフォルトの名無しさん
2007/05/26(土) 00:03:120071デフォルトの名無しさん
2007/05/26(土) 21:14:23テストされていないものが多いからそんなもんだよ…
必要なライブラリが足りてないとかだったら >>70 が悪いだけだが…
0072デフォルトの名無しさん
2007/06/03(日) 15:47:120073デフォルトの名無しさん
2007/06/03(日) 15:50:110074デフォルトの名無しさん
2007/06/03(日) 18:45:46CTRL+DがEOFじゃないcygwin上のシェルは何になるの?
0075デフォルトの名無しさん
2007/06/03(日) 18:51:44「cygwin上の」って意味が分からんから外れてるかもしれんが。
0076デフォルトの名無しさん
2007/06/14(木) 03:32:28gcc-4.2.0 のソースを ~/gcc/gcc-4.2.0.tar.bz2 に落としてきて展開し、その ~/gcc/gcc-4.2.0 で
$ ./configure --target=i686-pc-linux --enable-languages=c,c++ --prefix=/usr/local/gcc-4.2.0
$ make CC=gcc LANGUAGES="c c++"
/home/username/gcc/gcc-4.2.0/host-i686-pc-cygwin/gcc/as: line 2: exec: -o: invalid option
exec: usage: exec [-cl] [-a name] file [redirection ...]
make[2]: *** [crtbegin.o] Error 1
make[1]: *** [all-gcc] Error 2
make: *** [all] Error 2
と出ました。
因みに as の中身は、 exec "$@" で、の引数は下のようでした。
-Qy -o crtbegin.o /cygdrive/c/DOCUME~1/username/LOCALS~1/Temp/ccbwsMK0.s
コマンドが見当たりません。
エラーの原因が分かりません。
ググっても英語のBBS程度しか出て来ず、解決に至りません。
0077デフォルトの名無しさん
2007/06/14(木) 10:54:55VMか、colinuxか、本物のLinuxを入れるのが一番いい。
0078デフォルトの名無しさん
2007/06/14(木) 11:03:27そのasのラッパに、asの実体のパスがうまく伝わってないっぽいな。
本来なら exec 〜/as -Qy -o となるところが exec -Qy -o となっているんだろう。
cygwin上でlinuxのcrossなんてきちんと検証されてないだろ。
自力で解決できないならあきらめろ。
0079デフォルトの名無しさん
2007/06/14(木) 12:43:55クロスアセンブラは用意してある?
0080デフォルトの名無しさん
2007/06/14(木) 14:40:460081デフォルトの名無しさん
2007/06/15(金) 20:29:47Win32 のコマンドラインアプリと、UNIX 由来のツールをパイプでつなげるときはどうするの
WINE だったら大爆笑だけど
0082デフォルトの名無しさん
2007/06/15(金) 23:27:530083デフォルトの名無しさん
2007/06/16(土) 00:31:19dir | more
0084デフォルトの名無しさん
2007/06/16(土) 02:01:46だから本来そういう用途のためのcygwinだろ。
何が悲しくてwin32でlinuxのcrossを動かさにゃならんのだ。逆ならともかく。
0085デフォルトの名無しさん
2007/06/16(土) 08:29:23エラーのときは情報を必要十分な量だけ的確に吐くから
パイプで繋げるときに有効性が出てくるんだけど
Windows系のそれは無駄口が多いくせに
その割に状況を正確に把握出来ないほど
決定的に不足していて使い物にならないことが多い
0086デフォルトの名無しさん
2007/06/16(土) 08:43:24lsのエイリアスが張ってあるな
0087デフォルトの名無しさん
2007/06/16(土) 08:54:03最近は、coreutilsに入ってるはず > dir
0088デフォルトの名無しさん
2007/06/16(土) 13:59:57対象としてるユーザ層がそもそも違うOSだからな。
0089デフォルトの名無しさん
2007/06/20(水) 14:47:270090デフォルトの名無しさん
2007/06/21(木) 23:25:01自分でデータ処理するための細々したツールをmingwで書いてパイプでつないでるよ。
mingwだからwin32アプリだ。
つーか、そうしたいからcygwinやらmingwやら使ってるんじゃないの?
GUIアプリ作りたきゃ、タダのvisual studio使ったほうがマシだよ。
0091デフォルトの名無しさん
2007/06/21(木) 23:40:02その用途だと mingw である必然がないと思うが…
CUI でも Visual Studio 使って作ればいいんじゃね?
# cygwin で POXIS API使って作りたいとか cygwin 上の
# UNIX ライクツールと組み合せて使うとかならわかるんだが…
0092デフォルトの名無しさん
2007/06/22(金) 14:47:290093デフォルトの名無しさん
2007/06/22(金) 16:24:160094デフォルトの名無しさん
2007/06/27(水) 16:06:190095デフォルトの名無しさん
2007/07/04(水) 18:56:17トップページ
http://www2.atwiki.jp/ccw/pages/4.html
見ているところは下のほうの GCC - DLL の作成 のところです。
ページに書いてある通りのファイル名のファイルを作成し、中身はコピーペーストで
貼り付けました。
ページ内の gcc -c calc.c はうまくいっていると思います。
(通常のアプリで -c でコンパイルしたものをリンクすると正常動作するので)
ところが次の
dllwrap -k -def calc.def --driver-name gcc -o calc.dll calc.o
が失敗します。エラーメッセージは下記です。
D:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: Can't open base file \/cca02560.base
collect2: ld returned 1 exit status
D:\MinGW\bin\dllwrap.exe: gcc exited with status 1
原因は何でしょうか?
0096デフォルトの名無しさん
2007/07/05(木) 12:49:07--driver-name gccを取ったりしたらうまくいかない?
0097デフォルトの名無しさん
2007/07/05(木) 18:47:58試してみたところ同じですね。
ところで、一応解決しました。
過去にインストールした古い dllwrap がPC内に残っているのを発見したので、
それに差し替えたところ正常動作しました。
新しいものだと何か設定が必要なのか、
あるいは私のPCの環境が新しいdllwrapに悪影響を及ぼすのか、
それともdllwrapのバクなのか(可能性薄いかな)良くわからんです。
正常動作したバージョンは下記です。
DllTest> dllwrap --version
GNU D:\MinGW\bin\dllwrap.exe 2.15.94 20050118
うまくいかなかったバージョンは下記です。
DllTest> dllwrap --version
GNU D:\MinGW\bin\dllwrap.exe 2.16.91 20060119
確認したソースは下記です。
http://www.borujoa.org/upload/source/upload12756.zip
0098デフォルトの名無しさん
2007/07/07(土) 00:02:22いい加減、gccもデフォルトでSJISに対応してくれよな。。。
せめて単純追加オプションで。
0099デフォルトの名無しさん
2007/07/07(土) 00:06:54つ ttp://www.noppi.jp/diary/?date=20041126
010095 , 97
2007/07/07(土) 00:29:16どうやら
http://www.mingw.org/
からリンクが貼られている
http://sourceforge.net/project/showfiles.php?group_id=2435
の
binutils-2.17.50-20060824-1.tar.gz
に問題があるようです。
おそらく、
binutils-2.17.50-20060824-1.tar.gzのdllwrapを使用すると >>95 が再現するものと思われます。
(確認する根性のある人は従来のdllwrap.exeはバックアップしておいてください。)
原因はTMPDIRもしくはTMPもしくはTEMPが正しく設定されていない状態でコンパイルされたdllwrap
が、binutils-2.17.50-20060824-1.tar.gzに含まれているせいだと思われます。
それらが設定されていない場合、stdio.hの #define _P_tmpdir "\\" が中間ファイルの先頭に配置され、
中間ファイルの作成に支障をきたすようです。
>>95と同じ症状で困っている方は、dllwrapのオプションに
-base-file aazz1199.base
等を追加すると正常動作するものと思われます。
以上、ご報告まで。間違いがあれば指摘お願いします。
0101デフォルトの名無しさん
2007/07/07(土) 12:51:43研修先がunix を使い vi gcc gdb を使っているので自宅でも似た環境をと思ってcygwinを利用しようと思い導入いたしました。
allでインストールをしてとりあえずhello c と表示させるプログラムを書きました。
ソースは下記のとおりです。
#include <stdio.h>
int main(void)
{
printf("Hello World!\n");
return 0;
}
この程度なのでコンパイルエラーは起きていません。ファイル名はtest.c です。
問題点は3つありまして
1つ目
gcc test.c でコンパイルをした際に a.exeができます。a.exe で実行した際に bash: a.exe: command not foundと出てしまいます。 なぜ実行できないのでしょうか?
2つ目
gcc -o test test.c でコンパイルしてできたtest.exeをtest.exeで実行しても実行はされているようなのですが(エラー等がでていないだけの理由ですが・・・)
何も表示されず 次の入力待ちの状態になってしまいます。なぜ表示されないのでしょうか?
3つ目
以上の理由からぐぐってみたのですが解決方法がわからずcygwin上でなくウィンドウズ上のコマンドライン?で実行できるようにあったので試してみました。
gcc -mno-cygwin test.c です。これでコンパイルしたものをウィンドウズ上で実行してみたのですが1瞬ちらっと表示されて窓が消えてしまいます。
ぎりぎりプログラムとおり表示されていると確認できたのですがこれ以降このままだと困るのでしっかり表示されるようにするにはどうしたらいいのか?
unixも今回初めて触って勉強中なのでおかしな言葉遣いや初心者過ぎるミスなのかもしれませんが、
ご回答のほどよろしくお願いします。
また、それぐらい調べろよ・・・と思うかもしれませんが cygwin c言語 で検索してみたのですが
質問3ぐらいの方法しか見つかりませんでしたので、検索ワードぐらいでも教えていただけれたらと思います。
■ このスレッドは過去ログ倉庫に格納されています