Cygwin + MinGW + GCC 相談室 Part 3
at TECH
1:デフォルトの名無しさん
07/04/30 23:52:47
Windows上で動作するフリーの開発環境 CygwinとMinGWに関する相談スレッドです。
過去スレ:
cygwin + mingwn + gcc 相談室 Part2
スレリンク(tech板)
cygwin + mingwn + gcc 相談室
スレリンク(tech板)
関連サイト:
Cygwin URLリンク(www.cygwin.com)
MinGW URLリンク(www.mingw.org)
関連スレッド:
GCCについて part7
スレリンク(tech板)
【激遅】AppleGCC【絶望】
スレリンク(tech板)
2:デフォルトの名無しさん
07/05/01 00:17:39
乙
3:デフォルトの名無しさん
07/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 `ヽ / ゝ-,ヲ''' )
4:デフォルトの名無しさん
07/05/01 03:06:07
>>1
乙
5:デフォルトの名無しさん
07/05/01 03:52:09
スレタイを修正したのは良かったと思うよ
6:デフォルトの名無しさん
07/05/01 20:34:51
Apple版GCCのスレは全然関連してないと思うが
7:デフォルトの名無しさん
07/05/03 12:25:29
枯れ木も山の賑わいと申しまして・・・
GCCの話すらしてないな、あそこは。
8:デフォルトの名無しさん
07/05/03 23:18:11
>>1乙
前スレはタイトル修正せずに立ててしまって正直スマンカッタ。
9:デフォルトの名無しさん
07/05/11 21:20:02
質問です。
msys用のmanコマンドって落ちてませんか?
10:デフォルトの名無しさん
07/05/11 23:04:07
>>9
URLリンク(www.mingw.org)
manpageで検索すれ
11:デフォルトの名無しさん
07/05/14 05:52:03
実数x,yの値をキーボードから入力し,足し算,引き算,掛け算,割り算の結果を同時に出力できるプログラムを作成する
の作成方法教えて下さーいm(_ _)m
12:デフォルトの名無しさん
07/05/14 06:07:40
宿題は(略
13:デフォルトの名無しさん
07/05/14 07:15:33
>>11
氏ね
14:デフォルトの名無しさん
07/05/14 07:16:12
UNIX板Cygwinスレとのマルチかよ
何故こいつはcygwinスレで質問するのか
そもそもなぜunix板にcygwinスレがあるのか
いくつもの謎を乗り越えて
このスレは育っていくのだな
15:デフォルトの名無しさん
07/05/14 09:02:47
>>11
エディタでソース書いてコンパイラに食わせる。
16:デフォルトの名無しさん
07/05/14 09:33:40
cygwin はどっちかっつーと Linux 板の領分な気がするんだけど、
Linux 板には 1 つもスレないのな。
17:デフォルトの名無しさん
07/05/14 10:45:01
>>16
cygwinはunixでもlinuxでもないんだからなくてもおかしくはないだろ。
bashを始めとした擬似Unix環境なんだからあってもおかしくはないが。
18:デフォルトの名無しさん
07/05/14 10:53:05
本家の第一声がこれだからな。
Cygwin is a Linux-like environment for Windows.
まあ、Windows 板にあるのがベストだと思うが、1 つしかスレないのな。
19:17
07/05/14 10:54:22
そうか、じゃ、「擬似Linux環境」に訂正w
20:デフォルトの名無しさん
07/05/14 10:56:01
>>18
2つあったら重複で削除だろうに、「1つしか」って何が不満だ?
21:デフォルトの名無しさん
07/05/14 11:02:56
Unix 板には cygwin 関連スレが 4 つあるからね。
一番 Unix 板が cygwin に関心があるのかね。
22:デフォルトの名無しさん
07/05/14 13:41:08
>21
つーか、Linux板ではLinuxじゃないから板違いと言われそうだし
Win板はレベル低いヤツはとことん低いからな
Cygwinとは関連が微妙に薄いながらも
何気に一番まともにスレを進行できるのがUnix板ってことなんじゃね
23:デフォルトの名無しさん
07/05/14 21:45:31
一応関連スレはひととおりみてるけど
ここが一番会話が充実してる気がする
24:デフォルトの名無しさん
07/05/15 13:10:41
>>18
もともと UNIX-like environment って言ってて、
いつの頃からか linux をターゲットに路線変更して
linux-like environment を標榜するようになった
んだったと記憶してるが俺の記憶は定かではない。
25:デフォルトの名無しさん
07/05/15 13:35:51
>>21
坊やが気まぐれで立てた糞スレが何年も消えずに残ってるだけ
あそこは過疎板だから数年放置しても落ちないんだな
26:デフォルトの名無しさん
07/05/15 13:49:16
なるほど。
27:デフォルトの名無しさん
07/05/15 14:31:37
>>24
しかし Linux をターゲットってのもおかしな話なんだよねぇ…
cygwin が kernel 含むわけでもないし…
POSIX and GNU environment って感じ?
28:デフォルトの名無しさん
07/05/15 14:33:00
まあ、-like だからいいんじゃね?
29:デフォルトの名無しさん
07/05/15 16:08:43
MinGWでコンパイルされたオープンソースなアプリがあるのだけど
これって弄ればVC8でコンパイル出来るようになるのん?
素人の俺にもわかるように教えて
30:デフォルトの名無しさん
07/05/15 16:16:52
>>29
できるかもしれんし、できないかもしれん。WinAPI以外のライブラリ(例えばsocket)を特に使っていないのなら、多分大丈夫。
使っている場合は、類似ライブラリ(上記のようにsocketならばWinSock)を使用するように修正する必要がある。
31:デフォルトの名無しさん
07/05/15 16:25:40
C/C++以外で書かれてたりしても無理だな
32:デフォルトの名無しさん
07/05/15 16:29:26
Ada とかか。
33:デフォルトの名無しさん
07/05/15 16:51:30
サンクス
出来るかどうかはわからないけどやってみるよ
34:デフォルトの名無しさん
07/05/15 22:04:17
>24
俺の記憶でも最初 UNIX-like って言ってたような気がするので変遷をさらってみた。
URLリンク(web.archive.org)
URLリンク(web.archive.org)
>The Cygwin tools are ports of the popular GNU development tools and utilities for Windows 95, 98, and NT.
URLリンク(web.archive.org)
>The Cygwin tools are ports of the popular GNU development tools and utilities for Windows.
↑まで次の文で UNIX-like API って記述がある。
URLリンク(web.archive.org)
URLリンク(web.archive.org)
>Cygwin is a UNIX environment for Windows.
URLリンク(web.archive.org)
URLリンク(web.archive.org)
>Cygwin is a UNIX environment, developed by Red Hat, for Windows.
URLリンク(web.archive.org)
URLリンク(web.archive.org)
>Cygwin is a UNIX environment for Windows.
URLリンク(web.archive.org)
>Cygwin is a Linux-like environment for Windows.
35:デフォルトの名無しさん
07/05/16 04:53:36
ホンマや!
何か趣旨替えでもしたんだろうか。
36:デフォルトの名無しさん
07/05/16 11:27:30
Windows XPで MinGW + MSYS で開発をしています。
コマンドプロンプトからMSYSのsh.exeを立ち上げて使っています。
この環境で、Cのプログラムから fprintf(stderr,"hoge\n"); とすると、
ちゃんと出力されません。
ちなみにMSYSのrvxtを普通に立ち上げて使えば、ちゃんと出力されます。
どうすれば出力されるようになりますでしょうか?
もっと適したスレがあったらすみません。
37:デフォルトの名無しさん
07/05/16 15:24:44
>>36
sh-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$
38:35
07/05/17 10:15:46
>>36
ありがとうございます。おかげさまで落ち着きが出て原因がわかりました。
「return 0」ではなくコンパイルオプションに「-mwindows」があることが原因でした。
コンパイルオプションに「-mconsole」をつけることで解決しました。
39:デフォルトの名無しさん
07/05/17 10:27:09
WindowsXPにMingw+MSYSでプログラミングしています。
Mesa-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を見つけられてないような気がしるのですが、
ライブラリをコピーするだけではだめなのでしょうか。
40:デフォルトの名無しさん
07/05/17 10:40:07
>>39
リンカは引き数の順番に意味があるから、-Lを-lより前に持ってきてみたら?
#それでダメならまた別の理由と言うことになるけど。
41:デフォルトの名無しさん
07/05/17 13:16:54
>40
コメントありがとうございます。
入れ替えてみましたが変わりありませんでした。
その昔触っていたFreeBSDでライブラリをコピーしたあとldconfig
し忘れていたような状態に似ているのですが、
MinGW+MSYSにldconfigはないようで。
42:ライブラリが足りないとか?
07/05/17 13:36:18
>>39
つ[nm -v /mingw/lib/libglut32.a | grep -w T | grep glutMainLoop]
43:39
07/05/17 14:47:14
$ nm -v /mingw/lib/libglut32.a |grep -w T |grep glutMainLoop
00000000 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
一応あるみたいです。
44:35
07/05/17 14:58:19
昔(2006/07/25頃)のmemoで申し訳ないですが、以下のようにしたらコンパイルできました。
---
C:\MinGW\lib には libglut32.a, libglut.a などがあるが、なぜか glut.h がない。
Windows 用の glut である,glut-3.7.6-bin.zip を入手、展開(URLリンク(www.xmission.com)から)
glut32.dll を C:\WINDOWS\system32 に入れる
ming32gl.zip を google 等で探して展開し、GL ディレクトリの中身をすべて、C:\MinGW\include\GL と置き換え。
* compile
gcc -o a.out test01.c -lopengl32 -lglut32
45:デフォルトの名無しさん
07/05/17 15:39:39
>>39
確か普通に MinGW インストールしたらインポートライブラリ(libglut32.a)は
インストールされる気がしたんだが…dllとヘッダだけコピーすればOKじゃなかった?
URLリンク(cefiro.homelinux.org)
URLリンク(cefiro.homelinux.org)
46:39
07/05/17 17:23:30
いろいろコメントいただきありがとうございます。
主たる目的がMesaをソースからコンパイルするところに
ありまして、バイナリをコピーするというのではイマイチ
解決にはならなかったりします。(^_^;
ところで妙なことになりました。
このパソコンにはcygwinもインストールされていまして、
$ /c/cygwin/bin/gcc -o test.exe test.c -L/mingw/lib/ -lglut32 -lopengl32
とやると、実行ファイルができウィンドが表示できました。
全然めでたくはないです。
しかし一歩前進ということで。
47:39
07/05/18 10:00:29
どうも自前でコピーしたglut.hが気に入らなかったようで、
>44 のヘッダファイルと差し替えるとコンパイルできました。
根本的な原因についてはおいおい調べることにします。
>35
CygwinがRedHatに吸収されてから替わったような気がします。
48:デフォルトの名無しさん
07/05/18 11:42:28
cdeclとstdcallじゃないの?
49:デフォルトの名無しさん
07/05/18 12:33:25
久々にcygwinやってみようとデフォでインスコしてみたら、容量でかすぎワラタw
50:デフォルトの名無しさん
07/05/19 08:33:25
全部入れる香具師がいるとは
51:デフォルトの名無しさん
07/05/19 11:13:38
全部入れたら2Gくらいか
52:デフォルトの名無しさん
07/05/19 12:51:01
質問するスレを間違っていましたら誘導お願いします
アセンブラにて
.global hoge
.type hoge, @function
という書き方があるのですが、.type以降の意味はなんでしょうか?
53:デフォルトの名無しさん
07/05/19 18:49:06
>>52
アセンブラ… ( ゚д゚)ウッウー
スレリンク(tech板)l50
54:デフォルトの名無しさん
07/05/20 12:10:32
>>53
誘導ありがとうございます
向こうで聞いてみます
55:デフォルトの名無しさん
07/05/20 19:11:45
>>53のスレで聞きましたけど
Windowsで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'
56:デフォルトの名無しさん
07/05/20 20:46:16
>>55
せめてどんなプログラムを書いたか、どんなコマンドを入力したか、くらいは書こうや。
57:デフォルトの名無しさん
07/05/20 21:00:33
>>55
C標準ライブラリともリンクしてあげてください。
58:デフォルトの名無しさん
07/05/20 21:31:08
>>55-56
すみません。
@Cで以下のようなソースを書きました。
#include <stdio.h>
int main()
{
printf("Hello World!");
return 0;
}
AGCC(MinGW 3.4.2)で -S 付けてアセンブリのソースを出力
B出てきたアセンブリを as を使い ld を実行すると>>55のようなエラーでました。
以上です。
59:デフォルトの名無しさん
07/05/20 21:37:10
gcc -o hoge hoge.s
60:デフォルトの名無しさん
07/05/20 22:17:06
>>58
リンカのオプションは?
61:デフォルトの名無しさん
07/05/20 22:31:36
>>60
リンカのオプションは何も付けていません。
付けないよまずいですかね?
62:デフォルトの名無しさん
07/05/21 09:43:51
みんなデバッガとして何を使ってる?
63:デフォルトの名無しさん
07/05/21 09:47:48
syslog
64:デフォルトの名無しさん
07/05/21 11:00:47
だーから MinGWとは、
ゴールデンウィークが最小限であることを言い表す言葉なんだって。
65:デフォルトの名無しさん
07/05/21 19:24:03
VC
66:デフォルトの名無しさん
07/05/21 22:42:54
insight使ってる
軟弱者でスマン
67:デフォルトの名無しさん
07/05/22 00:17:10
gdb
68:デフォルトの名無しさん
07/05/22 16:23:45
fprintf
Purifyplusとか使ってる金持ちおるんかいな。使い心地とか聞いてみたい。
69:デフォルトの名無しさん
07/05/22 16:53:26
symdeb
70:デフォルトの名無しさん
07/05/26 00:03:12
autoconfって必要? 一発でまともにconfigure通ったことが無い。
71:デフォルトの名無しさん
07/05/26 21:14:23
autotoolizeされたソフトであっても Cygwin や MinGW+MSYS で
テストされていないものが多いからそんなもんだよ…
必要なライブラリが足りてないとかだったら >>70 が悪いだけだが…
72:デフォルトの名無しさん
07/06/03 15:47:12
cygwinでscanfのEOFはctrl+Dですか?
73:デフォルトの名無しさん
07/06/03 15:50:11
いいえ bash で CTRL+D すると EOF になります。
74:デフォルトの名無しさん
07/06/03 18:45:46
cshでもそうだな。
CTRL+DがEOFじゃないcygwin上のシェルは何になるの?
75:デフォルトの名無しさん
07/06/03 18:51:44
cmd.exe とか?
「cygwin上の」って意味が分からんから外れてるかもしれんが。
76:デフォルトの名無しさん
07/06/14 03:32:28
cygwinホストからlinuxをターゲットにクロスコンパイルしようと思い、
gcc-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程度しか出て来ず、解決に至りません。
77:デフォルトの名無しさん
07/06/14 10:54:55
いまどきエミュ環境なんか使ってるなよ。
VMか、colinuxか、本物のLinuxを入れるのが一番いい。
78:デフォルトの名無しさん
07/06/14 11:03:27
>>76
そのasのラッパに、asの実体のパスがうまく伝わってないっぽいな。
本来なら exec 〜/as -Qy -o となるところが exec -Qy -o となっているんだろう。
cygwin上でlinuxのcrossなんてきちんと検証されてないだろ。
自力で解決できないならあきらめろ。
79:デフォルトの名無しさん
07/06/14 12:43:55
>>76
クロスアセンブラは用意してある?
80:デフォルトの名無しさん
07/06/14 14:40:46
gcc だけじゃなくて binutils, glibc が必要
81:デフォルトの名無しさん
07/06/15 20:29:47
>>77
Win32 のコマンドラインアプリと、UNIX 由来のツールをパイプでつなげるときはどうするの
WINE だったら大爆笑だけど
82:デフォルトの名無しさん
07/06/15 23:27:53
パイプでつなげて使いたいようなWin32のコマンドラインアプリって・・・ある?
83:デフォルトの名無しさん
07/06/16 00:31:19
>>82
dir | more
84:デフォルトの名無しさん
07/06/16 02:01:46
>>81
だから本来そういう用途のためのcygwinだろ。
何が悲しくてwin32でlinuxのcrossを動かさにゃならんのだ。逆ならともかく。
85:デフォルトの名無しさん
07/06/16 08:29:23
UNIX系のコマンドは正常のときは比較的無口で
エラーのときは情報を必要十分な量だけ的確に吐くから
パイプで繋げるときに有効性が出てくるんだけど
Windows系のそれは無駄口が多いくせに
その割に状況を正確に把握出来ないほど
決定的に不足していて使い物にならないことが多い
86:デフォルトの名無しさん
07/06/16 08:43:24
linuxで試しにdirと打ってみたらファイル一覧が表示された
lsのエイリアスが張ってあるな
87:デフォルトの名無しさん
07/06/16 08:54:03
>>86
最近は、coreutilsに入ってるはず > dir
88:デフォルトの名無しさん
07/06/16 13:59:57
>>85
対象としてるユーザ層がそもそも違うOSだからな。
89:デフォルトの名無しさん
07/06/20 14:47:27
MingwのOpenMP対応まだぁ?
90:デフォルトの名無しさん
07/06/21 23:25:01
>>82
自分でデータ処理するための細々したツールをmingwで書いてパイプでつないでるよ。
mingwだからwin32アプリだ。
つーか、そうしたいからcygwinやらmingwやら使ってるんじゃないの?
GUIアプリ作りたきゃ、タダのvisual studio使ったほうがマシだよ。
91:デフォルトの名無しさん
07/06/21 23:40:02
>>90
その用途だと mingw である必然がないと思うが…
CUI でも Visual Studio 使って作ればいいんじゃね?
# cygwin で POXIS API使って作りたいとか cygwin 上の
# UNIX ライクツールと組み合せて使うとかならわかるんだが…
92:デフォルトの名無しさん
07/06/22 14:47:29
個人の自由にけちをつける変態スレはここですか?
93:デフォルトの名無しさん
07/06/22 16:24:16
公共の場でオナニーをする奴はけちつけられると思うヨー
94:デフォルトの名無しさん
07/06/27 16:06:19
GCJの質問もOKですか?
95:デフォルトの名無しさん
07/07/04 18:56:17
下記のページを見てdllを作ろうとしています。
トップページ
URLリンク(www2.atwiki.jp)
見ているところは下のほうの 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
原因は何でしょうか?
96:デフォルトの名無しさん
07/07/05 12:49:07
>>96
--driver-name gccを取ったりしたらうまくいかない?
97:デフォルトの名無しさん
07/07/05 18:47:58
>>96
試してみたところ同じですね。
ところで、一応解決しました。
過去にインストールした古い 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
確認したソースは下記です。
URLリンク(www.borujoa.org)
98:デフォルトの名無しさん
07/07/07 00:02:22
SJISコードがうごかねー。
いい加減、gccもデフォルトでSJISに対応してくれよな。。。
せめて単純追加オプションで。
99:デフォルトの名無しさん
07/07/07 00:06:54
>>98
つ URLリンク(www.noppi.jp)
100:95 , 97
07/07/07 00:29:16
dllwrapに関して質問した経緯上、引き続きdllwrapを調査していたのですが、
どうやら
URLリンク(www.mingw.org)
からリンクが貼られている
URLリンク(sourceforge.net)
の
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
等を追加すると正常動作するものと思われます。
以上、ご報告まで。間違いがあれば指摘お願いします。
101:デフォルトの名無しさん
07/07/07 12:51:43
こちらで質問するのがあっているのがわからないのですがC言語の勉強を始めたのです、
研修先が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ぐらいの方法しか見つかりませんでしたので、検索ワードぐらいでも教えていただけれたらと思います。
102:101
07/07/07 12:57:38
すみません
細かいところですが
hello c でなくHello World! を表示させるでした・・・
103:デフォルトの名無しさん
07/07/07 13:05:59
>>101
1.
./a
2.
testという既存のコマンドが実行されている。testに関してはmanpage参照。
自作のtest.exeを動かしたいのなら./test
3.
起動したらHello, world!と出力してすぐ終了するプログラムなんだから
ウィンドウがすぐ閉じるのは当然。むしろ閉じてくれないと意図しない動作になるでしょ。
コマンドプロンプトから実行するか、return 0;の前にscanfなりgetcharなり
使えるのならgetcharなりで入力待ちを作る。
104:デフォルトの名無しさん
07/07/07 13:29:48
>>101
cygwinじゃなくて、Unix系コマンドインタプリタの基礎知識なんだが。
Unix系コマンドインタプリタ(以下シェル)では、実行モジュールを探すのにPATH環境変数を利用する。
ロートルUnixオペレータはしばしばカレントディレクトリ(.)をPATH環境変数に含めてしまう。
そうすると、カレントディレクトリの実行モジュールがパスなし(ファイル名のみ)で実行できてしまう。
最近のシェルは一般的にディフォルトではカレントディレクトリをPATHに含めるようなことはしないので、
パスなしでは実行できない。それだけのこと。
何故カレントディレクトリをPATHに含めてはいけないか、についてはスレ違いでもあるので
自身で調査することをお勧めする。
105:101
07/07/08 14:28:03
>>103
ご丁寧にありがとうございます。
説明されればああ、当たり前のことなんだと理解はできるのですが
解決までもっていけないほど初心者だったので恥ずかしく思っています。
>>104
言い訳になってしまうのですがパスについてすらならっていなかったので
丁寧に説明していただいてありがとうございます。
カレントディレクトリをPATHに含めない件はスレ違いとのことですが
お勧めしていただいたので調べたので必要ないかもですが
理解したという報告まで・・ 環境によってコマンドが変わる事を避けるためと理解しました。
ありがとうございます。
返答が遅れましたが本当にスレ汚しのような質問にご丁寧に答えていただいてありがとうございます。
cygwinのインストールがおかしいのかと消しては入れなおしたりを半日以上繰り返していた
ため本当に助かりました。
本当にありがとうございます。
106:デフォルトの名無しさん
07/07/08 15:30:51
たぶんみんな知ってるから
わざわざ報告しなくてもいいと思う
そのレスもこのレスも無駄と判断するのが
UNXクオリティ
107:デフォルトの名無しさん
07/07/08 16:26:11
俺は解決したらそれっきりって奴よりいいと思うけどな。
108:デフォルトの名無しさん
07/07/15 18:41:13
ムダかどうかというムダなレスが三つ(これも含む)増えてしまったわけだが。
109:デフォルトの名無しさん
07/07/19 00:13:23
cygwinを導入し、windowsのコマンドプロンプトでUNIXコマンドを利用しています。
ls や which といった一般的なコマンドは使用できるのですが、
../hoge.exe
などと打ち込むと
'.' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
というメッセージが出てしまいます。
./ を有効にすることは可能でしょうか?
OSはWindows XP pro です。
ご教授お願いいたします
110:デフォルトの名無しさん
07/07/19 02:28:45
>>109
cmd.exe は / をパスの区切りとしては見てくれない。
.\hoge.exe でがまんせい。
111:デフォルトの名無しさん
07/07/19 02:44:29
cygwin 導入したんなら、cygwin で作業すればいいと思うんだけど。
112:デフォルトの名無しさん
07/07/19 04:43:23
APIレベルでは/でも通るって本当?
113:デフォルトの名無しさん
07/07/19 08:46:54
本当?
114:デフォルトの名無しさん
07/07/19 10:34:08
本当。
115:デフォルトの名無しさん
07/07/21 19:31:36
Windows Vista にcygwinをインストールしたいんだけど、
ダウンロードが終わった後のインストール段階で、33%くらい進んだところで必ずとまってしまって、
後は何時間放置してもうんともすんとも言わないんだけど、仕様?
116:デフォルトの名無しさん
07/07/21 21:22:35
おそらく後ろに別のウィンドウが隠れている
117:デフォルトの名無しさん
07/07/21 21:25:21
いや、何もなかったんだが
118:デフォルトの名無しさん
07/07/21 21:30:18
ぼくのちんちんも皮の中に何か隠れています。
119:デフォルトの名無しさん
07/07/21 21:38:36
箪笥の下に一匹いました
120:デフォルトの名無しさん
07/07/24 18:34:02
MinGW + GCC から Excel ファイルを作ろうと思います。
どのようにするのが一番コンパクトですかね?
121:デフォルトの名無しさん
07/07/24 18:37:35
>>120
xls限定? csvじゃダメなの?
122:デフォルトの名無しさん
07/07/24 18:48:55
>>120
最近POIをgcjでコンパイルして,CNIでC++から使おうとして挫折しましたorz
トライしません?
この方法Linux上だとうまくいったのだけど,
Linux上でwin32へのクロスコンパイル環境を作って,
それで試したら私は失敗しました.
123:120
07/07/25 11:33:31
>>121
うん、xlsがいいな。できれば幅変えたり色つけたりしたい。
>>122
Javaやrubyを通せばできなくはないけど、C++使っててそれは・・ねぇ。
そんなに需要がないわけでもなさそうなのに情報がみつからん・・・。
124:デフォルトの名無しさん
07/07/25 19:30:29
Win32環境だったらExcelをCOM経由で呼び出すのはどうだ?
OOoもいけるのかな?
125:デフォルトの名無しさん
07/07/25 20:51:47
COMを使うならVC++の#importが恋しい。
126:デフォルトの名無しさん
07/07/26 18:09:14
プロプラなんだから情報なんざそうそうあるわけねぇ
OOoから物故抜け
127:デフォルトの名無しさん
07/07/26 18:48:00
OOoってmingwでビルドできるんだっけ?
128:デフォルトの名無しさん
07/08/06 19:27:22
mingwのgccってstl エラー無く作動するの?
129:デフォルトの名無しさん
07/08/06 22:12:06
mingwでSTL使ったら感染するのかな?
GPLに
130:デフォルトの名無しさん
07/08/07 00:53:06
>>128 どのgccがstlエラーありますか?
131:デフォルトの名無しさん
07/08/07 00:53:53
>>129 ヘッダにライセンス書いてあるから読んどけ。
132:デフォルトの名無しさん
07/08/07 09:48:52
gcc (GCC) 3.4.2 (mingw-special)
#include <vector>
void m(const char *s0)
{
std::vector<int> vec(20);
}
gcc src.cppで
: undefined reference to `__gxx_personality_sj0'
collect2: ld returned 1 exit status
てなエラー。こういう眠くなるエラー見るだけでやる気ナッシング。
133:デフォルトの名無しさん
07/08/07 09:51:42
>>132
ググレカス
URLリンク(www.google.co.jp)
× gcc
○ g++
134:デフォルトの名無しさん
07/08/07 09:53:06
特にSTLのエラーメッセージははまると最悪。
135:デフォルトの名無しさん
07/08/07 10:11:33
>>134
そんな次元の質問じゃねーよw
136:デフォルトの名無しさん
07/08/07 10:37:01
普段C使ってるけど、STLコンテナ使いたくてC++にした。
だからついgcc でやる。
gccのコマンドオプションも眠くなるぐらいあるから気がつかなかった。
やっぱ敷居が高そうだし、vs2005 cl にもどろっかな。
137:デフォルトの名無しさん
07/08/07 10:56:34
普通はMakefileに書いておくのでいちいち手でコマンドうったりはしないような…
まぁ書き捨てプログラムで gcc a.c とかはやるけど
138:デフォルトの名無しさん
07/08/07 16:16:35
俺は汎用 Makefile 作って、
それを include するだけの Makefile をカレントディレクトリに作るコマンド作ってるな。
まあ、書き捨てプログラムは特定のディレクトリを使い回してるけど。
139:デフォルトの名無しさん
07/08/07 16:21:25
まぁまぁまぁまぁまぁライオン
140:デフォルトの名無しさん
07/08/07 16:58:27
違う言語から呼び出すために、APIをラップしたちょっとしたDLL作ってる。(JAVA)
141:デフォルトの名無しさん
07/08/08 22:55:04
VC++に無い関数を使いたくて
Cygwin+gccでラッパーDLLを作ろうと思っています。
そこで質問なのですが、Cygwinのfopen()の返すファイルディスクリプタと、VC++のfopen()の返すそれとでは、互換性はあるのでしょうか?
142:デフォルトの名無しさん
07/08/08 23:00:12
そもそもFILE構造体自体に互換性がなかった希ガス。
mingwならいざ知らず、ラッパー作るのも一筋縄じゃいかないような。
一体全体、何をやりたいんだ?
143:デフォルトの名無しさん
07/08/08 23:05:32
プログラム全体をCygwin上でコンパイルしたほうがきっと楽。
144:デフォルトの名無しさん
07/08/09 03:25:42
VC++になくってcygwinにある関数を使いたいって…
そのcygwinの関数はVC++で使えるであろう Win32 API で
実装されてると思うからえらく遠まわりなことをしてる気が…
145:デフォルトの名無しさん
07/08/09 03:35:24
ソースコンパチのコード書く場合、てっとりやばいからじゃない?
たとえば、mmapを使いたいとかね。MapViewOfFileだと、結構差があるからそこから合わせるのは結構面倒。
っていうか、>>141のレスからしてmmapでビンゴな希ガス
146:デフォルトの名無しさん
07/08/09 03:36:49
ちなみに100%GCC向けでコードかけばソースコンパチじゃないかって話になるが
まぁ、デバッグの都合上とか、最適化機能がgccは割とトロいとか、その辺の話かな
147:デフォルトの名無しさん
07/08/09 03:43:35
>>146
「GCC向けコード」って何のことを指してるんだ?
コンパイラとしてGCCを使ったとしても使える API は OS 毎違うわけで…
API も同じにしたい人が cygwin のような API レベルのエミュレーションを使うわけで…
148:デフォルトの名無しさん
07/08/09 03:52:48
ああ、そこをつつかれるとは思わなかった
Cygwin向け(POSIX向け)ね。
mmapはWindowsのWin32APIにはないから。
149:デフォルトの名無しさん
07/08/09 03:55:32
>>147
Win32APIにはmmapは用意されてないんだよ。
>>145の言うように代用のAPIがある。
あと、Cygwin使えば基本的にはPOSIX準拠のAPIは使えるよ。
150:デフォルトの名無しさん
07/08/09 12:04:56
なんかスンゴイの作ってるんだよ。きっと
151:デフォルトの名無しさん
07/08/09 17:33:16
質問です。
Cygwin+GCCで開発を行っているのですが
EclipseやVisualStudioのような、高機能でGUIな開発環境を使いたいのですが
何かありませんか?コード保管や、エディタと連動したデバッガなどの機能が使いたいのです。
よろしくお願いします。
152:デフォルトの名無しさん
07/08/09 17:54:18
>>151
何故EclipseやVisualStudioを使わないのですか?
誰も止めませんよ?
153:デフォルトの名無しさん
07/08/09 17:57:32
>>152
製作はWindowsで、
実際の運用はBSD系の環境でやりたいのです。
作業の効率化の為にWindowsで作業しているものの、普通のエディタで作業してもメリットは薄く
VisualStudioでやっていましたが、当然ですが、デバッグ機能はMSのコンパイラでなければまともに動きません。
154:デフォルトの名無しさん
07/08/09 18:03:45
だから、何故VisualStudioで開発しないの?
運用がBSD系だからと言って、クロスで開発できるのならgccに拘る必要もないでしょうに。
もし仮に、BSD系にしかない関数を使っているのならソースを入手してきてコンパイルするとか、
ダミー関数を作るとか、いくらでも手はあるでしょ。
155:デフォルトの名無しさん
07/08/09 18:05:44
>もし仮に、BSD系にしかない関数を使っているのならソースを入手してきてコンパイルするとか、
>ダミー関数を作るとか、いくらでも手はあるでしょ。
当然開発環境がなければ、その選択を取る必要があるでしょうが
あると仮定するならば、わざわざバグが潜む可能性がある開発技法をとるメリットがありません。
156:デフォルトの名無しさん
07/08/09 18:08:19
よくわからんがBSDターゲットでわざわざcygwinでクロス開発を
してるってことかしら
BSDでEmacsenかEclipse + CDTでも使って開発したほうがいいんでないの
157:デフォルトの名無しさん
07/08/09 18:08:40
>>154
何故、そんな遠回りをわざわざ選ばせるんだ?
>>153
Dev-C++
URLリンク(www.bloodshed.net)
つーか、Eclipseでgcc+cygwin対応の開発環境+デバッガがあったろ?
俺はSun嫌いだから、つかわねぇけど
158:デフォルトの名無しさん
07/08/09 18:17:37
>>157
Sun嫌いだとEclipse使わないのか…
IBM嫌いで使わないってならまだわかるけど…
159:デフォルトの名無しさん
07/08/09 18:27:32
Eclipseの意味を辞書で引いたことがないんでないの?
>>157
皮肉。横着するための努力を惜しむなと。
#どうせ他人事だしね。
160:デフォルトの名無しさん
07/08/09 18:32:46
>>158
君は、Javaの自動アップデートがかかって、Eclipseが不安定になった事が無いのか。
あれほど腹の立つことは無い。
#単純には自動外せば良い話だが、俺はもうSunを信用する事が出来ん。
>>159
皮肉を言うなら、もっと徹底的に。
中途半端過ぎる。
161:デフォルトの名無しさん
07/08/09 19:09:49
>>160
>君は、Javaの自動アップデートがかかって、Eclipseが不安定になった事が無いのか。
ない.JREのバージョンによらずEclipseはもともと不安定だしな.
162:デフォルトの名無しさん
07/08/09 19:45:18
やっぱりオープンだと変なやつ多いな。
きっと、なんかスンゴイの作ってるんだろうな。
163:デフォルトの名無しさん
07/08/12 08:37:59
MSYSで/usrをマウントしたいんですが/にマッピングされてしまいます。
ディレクトリ E:\usr を作って etc/fstabに E:\usr /usr と書いてみたんですが
マウントできませんでした。MSYSで/usrをマウントすることはできないでしょうか。
164:デフォルトの名無しさん
07/08/16 00:08:12
スンゴイで逃げるなよ。皮肉に失敗してただの馬鹿っぽくなってるぞ?
165:デフォルトの名無しさん
07/08/16 01:43:49
gonzuiの作ってるんだろうな。
166:デフォルトの名無しさん
07/08/18 15:29:03
ぶひー cygwinのgdbでwatch pointを使いたいのですが反応がありません おまえらのcygwinでは使えてますか?
167:デフォルトの名無しさん
07/08/18 20:07:00
はい
168:デフォルトの名無しさん
07/08/18 21:39:04
MinGWを3.4.5にしてみた
STLport5.1.3をビルドすると3.4.2では出なかった警告がわらわらと・・・・
何か心配だべ
169:デフォルトの名無しさん
07/08/19 00:41:57
俺は snapshot の msys にしてみたら
$ mkdir foo.dir
$ rm -rf foo.dir
rm: cannot remove directory `foo.dir': No such file or directory
だぜ なんだこりゃ.. orz
170:166
07/08/19 00:58:08
うーむ いちおうHardware access (read/write) watchpoint 1ってでるんですが止まらずそのまま実行されちゃいます
171:デフォルトの名無しさん
07/08/19 22:26:47
>>169
rmだけ戻すといいよ
172:デフォルトの名無しさん
07/08/20 05:52:13
>>171
さんくす戻してみます
この現象どうもマウントポイント以下で起きますね
mkdir /foo; rm -r /foo は消せるけど
マウントした /mingw の下にあるディレクトリが消せない(見えてない)
173:デフォルトの名無しさん
07/08/20 08:09:41
msys上での configureが超遅いのには泣ける。
gccのビルドが半日がかりだよ。 orz
174:デフォルトの名無しさん
07/08/21 16:56:54
そういえばついに MinGW 公式での gcc-4.2.1 のプレビュー版が出てきたな…
URLリンク(sourceforge.net)
暇なひと人柱よろ〜
175:デフォルトの名無しさん
07/08/21 17:40:56
そういや最近の事情を知らないんだけど何が変わったの?
176:デフォルトの名無しさん
07/08/21 20:11:35
>>175
OpenMP が入った
177:デフォルトの名無しさん
07/08/21 21:17:52
意味あるのそれ
178:デフォルトの名無しさん
07/08/21 23:30:02
#pragma omp parallel num_threads(100)
printf("uho!\n");
179:デフォルトの名無しさん
07/08/24 20:53:56
Cygwin ってなんのためにあるの?
180:デフォルトの名無しさん
07/08/24 21:21:34
>>179
UNIX の魂を持つ社畜が Windows を使わされた時の救済のために
181:デフォルトの名無しさん
07/08/24 21:34:16
>>180
そしてそのAPIの遅さに絶望するんだよなw
# シェル環境としては便利だからいいけど
182:デフォルトの名無しさん
07/08/24 22:27:28
mingw 使うからいいさー
183:デフォルトの名無しさん
07/08/24 22:44:12
> UNIX の魂を持つ社畜が Windows を使わされた時の救済のために
いや、そのりくつはおかしい。
そういうときは、会社辞めればいいんだよ。
184:デフォルトの名無しさん
07/08/24 22:50:26
Windowsのホームディレクトリ(Document and Settings以下)でls実行すると
異常に時間がかかりすぎ
たかがlsで何やってんだよ
185:デフォルトの名無しさん
07/08/25 12:27:05
MinGW で boost 1.34 使おうと思ってDOS窓から bjam したけど
"-sTOOLS=mingw" を認識しない
ビルドできねw
1.33 の時はこれで通ったんだけどなぁ・・
186:デフォルトの名無しさん
07/08/25 12:42:41
Boostスレ行ってV2で検索汁
187:デフォルトの名無しさん
07/08/25 14:25:11
>>183
社畜が会社を辞めようなんて思うわけがないだろ
社畜はリストラされると全人格が否定されたが如く思って自殺するような人種を指すんだぞ(w
188:185
07/08/25 16:39:32
>>186
ありがとう、ビルドできました!
189:デフォルトの名無しさん
07/08/25 20:49:37
> 社畜が会社を辞めようなんて思うわけがないだろ
> 社畜はリストラされると全人格が否定されたが如く思って自殺するような人種を指すんだぞ(w
今の時代にそんな人いるの?www
190:デフォルトの名無しさん
07/08/26 11:39:12
>>179
無料Xサーバのため。
191:デフォルトの名無しさん
07/08/26 12:42:49
>190
それだけなら Xming もあるべ。
192:デフォルトの名無しさん
07/08/26 12:50:54
Astec X ってどうなった?
逆串か何かおかしいようで Web みれんけど。
193:デフォルトの名無しさん
07/08/31 19:34:58
MinGWでmecabをコンパイルしてみたのですが
できあがったdllがlibmecab-1.dllみたいに"-数字.dll"となってしまいます
これをlibmecab.dllのように吐きたいのですがどこを見ればよいのでしょうか
194:デフォルトの名無しさん
07/09/01 17:10:14
>>191
いいこと聞いた。
でも、sshdを使うためにcygwin
195:デフォルトの名無しさん
07/09/02 02:06:50
>193
configure した結果できる libtool の soname_spec を書き換えるのが簡単だと思う。
196:デフォルトの名無しさん
07/09/02 12:26:36
>>195
ありがとうございます!
ご指摘通りsoname_specのversuffixを潰したら望み通りの結果になりました
197:デフォルトの名無しさん
07/09/04 13:08:04
cygwinでwine-0.9.44をmakeできるpatchありませぬか?
というか、configureするとヘッダは検出できるのに
-lX11とか-lpngとか-lfreetypeとか、ライブラリが一切
検出されないんだけど、なんなんだろうか。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4763日前に更新/237 KB
担当:undef