5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

Cygwin + MinGW + GCC 相談室 Part 3

1 :デフォルトの名無しさん:2007/04/30(月) 23:52:47
Windows上で動作するフリーの開発環境 CygwinとMinGWに関する相談スレッドです。

過去スレ:
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/


2 :デフォルトの名無しさん:2007/05/01(火) 00:17:39


3 :デフォルトの名無しさん: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  `ヽ /  ゝ-,ヲ'''   )

4 :デフォルトの名無しさん:2007/05/01(火) 03:06:07
>>1


5 :デフォルトの名無しさん:2007/05/01(火) 03:52:09
スレタイを修正したのは良かったと思うよ

6 :デフォルトの名無しさん:2007/05/01(火) 20:34:51
Apple版GCCのスレは全然関連してないと思うが

7 :デフォルトの名無しさん:2007/05/03(木) 12:25:29
枯れ木も山の賑わいと申しまして・・・
GCCの話すらしてないな、あそこは。

8 :デフォルトの名無しさん:2007/05/03(木) 23:18:11
>>1

前スレはタイトル修正せずに立ててしまって正直スマンカッタ。

9 :デフォルトの名無しさん:2007/05/11(金) 21:20:02
質問です。

msys用のmanコマンドって落ちてませんか?

10 :デフォルトの名無しさん:2007/05/11(金) 23:04:07
>>9
http://www.mingw.org/MinGWiki/index.php/FAQ
manpageで検索すれ

11 :デフォルトの名無しさん:2007/05/14(月) 05:52:03
実数x,yの値をキーボードから入力し,足し算,引き算,掛け算,割り算の結果を同時に出力できるプログラムを作成する

の作成方法教えて下さーいm(_ _)m

12 :デフォルトの名無しさん:2007/05/14(月) 06:07:40
宿題は(略

13 :デフォルトの名無しさん:2007/05/14(月) 07:15:33
>>11
氏ね

14 :デフォルトの名無しさん:2007/05/14(月) 07:16:12
UNIX板Cygwinスレとのマルチかよ

何故こいつはcygwinスレで質問するのか
そもそもなぜunix板にcygwinスレがあるのか

いくつもの謎を乗り越えて
このスレは育っていくのだな

15 :デフォルトの名無しさん:2007/05/14(月) 09:02:47
>>11
エディタでソース書いてコンパイラに食わせる。

16 :デフォルトの名無しさん:2007/05/14(月) 09:33:40
cygwin はどっちかっつーと Linux 板の領分な気がするんだけど、
Linux 板には 1 つもスレないのな。

17 :デフォルトの名無しさん:2007/05/14(月) 10:45:01
>>16
cygwinはunixでもlinuxでもないんだからなくてもおかしくはないだろ。
bashを始めとした擬似Unix環境なんだからあってもおかしくはないが。

18 :デフォルトの名無しさん:2007/05/14(月) 10:53:05
本家の第一声がこれだからな。

Cygwin is a Linux-like environment for Windows.

まあ、Windows 板にあるのがベストだと思うが、1 つしかスレないのな。

19 :17:2007/05/14(月) 10:54:22
そうか、じゃ、「擬似Linux環境」に訂正w

20 :デフォルトの名無しさん:2007/05/14(月) 10:56:01
>>18
2つあったら重複で削除だろうに、「1つしか」って何が不満だ?

21 :デフォルトの名無しさん:2007/05/14(月) 11:02:56
Unix 板には cygwin 関連スレが 4 つあるからね。
一番 Unix 板が cygwin に関心があるのかね。

22 :デフォルトの名無しさん:2007/05/14(月) 13:41:08
>21
つーか、Linux板ではLinuxじゃないから板違いと言われそうだし
Win板はレベル低いヤツはとことん低いからな
Cygwinとは関連が微妙に薄いながらも
何気に一番まともにスレを進行できるのがUnix板ってことなんじゃね

23 :デフォルトの名無しさん:2007/05/14(月) 21:45:31
一応関連スレはひととおりみてるけど
ここが一番会話が充実してる気がする

24 :デフォルトの名無しさん:2007/05/15(火) 13:10:41
>>18
もともと UNIX-like environment って言ってて、
いつの頃からか linux をターゲットに路線変更して
linux-like environment を標榜するようになった



んだったと記憶してるが俺の記憶は定かではない。

25 :デフォルトの名無しさん:2007/05/15(火) 13:35:51
>>21
坊やが気まぐれで立てた糞スレが何年も消えずに残ってるだけ
あそこは過疎板だから数年放置しても落ちないんだな

26 :デフォルトの名無しさん:2007/05/15(火) 13:49:16
なるほど。

27 :デフォルトの名無しさん:2007/05/15(火) 14:31:37
>>24
しかし Linux をターゲットってのもおかしな話なんだよねぇ…
cygwin が kernel 含むわけでもないし…
POSIX and GNU environment って感じ?

28 :デフォルトの名無しさん:2007/05/15(火) 14:33:00
まあ、-like だからいいんじゃね?

29 :デフォルトの名無しさん:2007/05/15(火) 16:08:43
MinGWでコンパイルされたオープンソースなアプリがあるのだけど
これって弄ればVC8でコンパイル出来るようになるのん?
素人の俺にもわかるように教えて

30 :デフォルトの名無しさん:2007/05/15(火) 16:16:52
>>29
できるかもしれんし、できないかもしれん。WinAPI以外のライブラリ(例えばsocket)を特に使っていないのなら、多分大丈夫。
使っている場合は、類似ライブラリ(上記のようにsocketならばWinSock)を使用するように修正する必要がある。

31 :デフォルトの名無しさん:2007/05/15(火) 16:25:40
C/C++以外で書かれてたりしても無理だな

32 :デフォルトの名無しさん:2007/05/15(火) 16:29:26
Ada とかか。

33 :デフォルトの名無しさん:2007/05/15(火) 16:51:30
サンクス
出来るかどうかはわからないけどやってみるよ

34 :デフォルトの名無しさん:2007/05/15(火) 22:04:17
>24
俺の記憶でも最初 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.

35 :デフォルトの名無しさん:2007/05/16(水) 04:53:36
ホンマや!
何か趣旨替えでもしたんだろうか。

36 :デフォルトの名無しさん:2007/05/16(水) 11:27:30
Windows XPで MinGW + MSYS で開発をしています。
コマンドプロンプトからMSYSのsh.exeを立ち上げて使っています。

この環境で、Cのプログラムから fprintf(stderr,"hoge\n"); とすると、
ちゃんと出力されません。

ちなみにMSYSのrvxtを普通に立ち上げて使えば、ちゃんと出力されます。

どうすれば出力されるようになりますでしょうか?
もっと適したスレがあったらすみません。

37 :デフォルトの名無しさん:2007/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:2007/05/17(木) 10:15:46
>>36
ありがとうございます。おかげさまで落ち着きが出て原因がわかりました。

「return 0」ではなくコンパイルオプションに「-mwindows」があることが原因でした。
コンパイルオプションに「-mconsole」をつけることで解決しました。

39 :デフォルトの名無しさん:2007/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 :デフォルトの名無しさん:2007/05/17(木) 10:40:07
>>39
リンカは引き数の順番に意味があるから、-Lを-lより前に持ってきてみたら?
#それでダメならまた別の理由と言うことになるけど。

41 :デフォルトの名無しさん:2007/05/17(木) 13:16:54
>40
コメントありがとうございます。
入れ替えてみましたが変わりありませんでした。

その昔触っていたFreeBSDでライブラリをコピーしたあとldconfig
し忘れていたような状態に似ているのですが、
MinGW+MSYSにldconfigはないようで。

42 :ライブラリが足りないとか?:2007/05/17(木) 13:36:18
>>39
つ[nm -v /mingw/lib/libglut32.a | grep -w T | grep glutMainLoop]

43 :39:2007/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:2007/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 を入手、展開(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

45 :デフォルトの名無しさん:2007/05/17(木) 15:39: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

46 :39:2007/05/17(木) 17:23:30
いろいろコメントいただきありがとうございます。
主たる目的がMesaをソースからコンパイルするところに
ありまして、バイナリをコピーするというのではイマイチ
解決にはならなかったりします。(^_^;

ところで妙なことになりました。
このパソコンにはcygwinもインストールされていまして、
$ /c/cygwin/bin/gcc -o test.exe test.c -L/mingw/lib/ -lglut32 -lopengl32
とやると、実行ファイルができウィンドが表示できました。
全然めでたくはないです。
しかし一歩前進ということで。


47 :39:2007/05/18(金) 10:00:29
どうも自前でコピーしたglut.hが気に入らなかったようで、
>44 のヘッダファイルと差し替えるとコンパイルできました。
根本的な原因についてはおいおい調べることにします。

>35
CygwinがRedHatに吸収されてから替わったような気がします。


48 :デフォルトの名無しさん:2007/05/18(金) 11:42:28
cdeclとstdcallじゃないの?

49 :デフォルトの名無しさん:2007/05/18(金) 12:33:25
久々にcygwinやってみようとデフォでインスコしてみたら、容量でかすぎワラタw

50 :デフォルトの名無しさん:2007/05/19(土) 08:33:25
全部入れる香具師がいるとは

51 :デフォルトの名無しさん:2007/05/19(土) 11:13:38
全部入れたら2Gくらいか

52 :デフォルトの名無しさん:2007/05/19(土) 12:51:01
質問するスレを間違っていましたら誘導お願いします
アセンブラにて
.global hoge
.type hoge, @function
という書き方があるのですが、.type以降の意味はなんでしょうか?


53 :デフォルトの名無しさん:2007/05/19(土) 18:49:06
>>52
アセンブラ… ( ゚д゚)ウッウー
http://pc11.2ch.net/test/read.cgi/tech/1174825173/l50

54 :デフォルトの名無しさん:2007/05/20(日) 12:10:32
>>53
誘導ありがとうございます
向こうで聞いてみます

55 :デフォルトの名無しさん:2007/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 :デフォルトの名無しさん:2007/05/20(日) 20:46:16
>>55
せめてどんなプログラムを書いたか、どんなコマンドを入力したか、くらいは書こうや。

57 :デフォルトの名無しさん:2007/05/20(日) 21:00:33
>>55
C標準ライブラリともリンクしてあげてください。

58 :デフォルトの名無しさん:2007/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 :デフォルトの名無しさん:2007/05/20(日) 21:37:10
gcc -o hoge hoge.s

60 :デフォルトの名無しさん:2007/05/20(日) 22:17:06
>>58
リンカのオプションは?

61 :デフォルトの名無しさん:2007/05/20(日) 22:31:36
>>60
リンカのオプションは何も付けていません。
付けないよまずいですかね?

62 :デフォルトの名無しさん:2007/05/21(月) 09:43:51
みんなデバッガとして何を使ってる?

63 :デフォルトの名無しさん:2007/05/21(月) 09:47:48
syslog

64 :デフォルトの名無しさん:2007/05/21(月) 11:00:47
だーから MinGWとは、
ゴールデンウィークが最小限であることを言い表す言葉なんだって。



65 :デフォルトの名無しさん:2007/05/21(月) 19:24:03
VC

66 :デフォルトの名無しさん:2007/05/21(月) 22:42:54
insight使ってる
軟弱者でスマン

67 :デフォルトの名無しさん:2007/05/22(火) 00:17:10
gdb

68 :デフォルトの名無しさん:2007/05/22(火) 16:23:45
fprintf

Purifyplusとか使ってる金持ちおるんかいな。使い心地とか聞いてみたい。

69 :デフォルトの名無しさん:2007/05/22(火) 16:53:26
symdeb

70 :デフォルトの名無しさん:2007/05/26(土) 00:03:12
autoconfって必要? 一発でまともにconfigure通ったことが無い。

71 :デフォルトの名無しさん:2007/05/26(土) 21:14:23
autotoolizeされたソフトであっても Cygwin や MinGW+MSYS で
テストされていないものが多いからそんなもんだよ…
必要なライブラリが足りてないとかだったら >>70 が悪いだけだが…

72 :デフォルトの名無しさん:2007/06/03(日) 15:47:12
cygwinでscanfのEOFはctrl+Dですか?

73 :デフォルトの名無しさん:2007/06/03(日) 15:50:11
いいえ bash で CTRL+D すると EOF になります。

74 :デフォルトの名無しさん:2007/06/03(日) 18:45:46
cshでもそうだな。
CTRL+DがEOFじゃないcygwin上のシェルは何になるの?

75 :デフォルトの名無しさん:2007/06/03(日) 18:51:44
cmd.exe とか?
「cygwin上の」って意味が分からんから外れてるかもしれんが。

76 :デフォルトの名無しさん:2007/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 :デフォルトの名無しさん:2007/06/14(木) 10:54:55
いまどきエミュ環境なんか使ってるなよ。
VMか、colinuxか、本物のLinuxを入れるのが一番いい。

78 :デフォルトの名無しさん:2007/06/14(木) 11:03:27
>>76
そのasのラッパに、asの実体のパスがうまく伝わってないっぽいな。
本来なら exec 〜/as -Qy -o となるところが exec -Qy -o となっているんだろう。

cygwin上でlinuxのcrossなんてきちんと検証されてないだろ。
自力で解決できないならあきらめろ。

79 :デフォルトの名無しさん:2007/06/14(木) 12:43:55
>>76
クロスアセンブラは用意してある?


80 :デフォルトの名無しさん:2007/06/14(木) 14:40:46
gcc だけじゃなくて binutils, glibc が必要

81 :デフォルトの名無しさん:2007/06/15(金) 20:29:47
>>77
Win32 のコマンドラインアプリと、UNIX 由来のツールをパイプでつなげるときはどうするの
WINE だったら大爆笑だけど

82 :デフォルトの名無しさん:2007/06/15(金) 23:27:53
パイプでつなげて使いたいようなWin32のコマンドラインアプリって・・・ある?

83 :デフォルトの名無しさん:2007/06/16(土) 00:31:19
>>82
dir | more

84 :デフォルトの名無しさん:2007/06/16(土) 02:01:46
>>81
だから本来そういう用途のためのcygwinだろ。
何が悲しくてwin32でlinuxのcrossを動かさにゃならんのだ。逆ならともかく。

85 :デフォルトの名無しさん:2007/06/16(土) 08:29:23
UNIX系のコマンドは正常のときは比較的無口で
エラーのときは情報を必要十分な量だけ的確に吐くから
パイプで繋げるときに有効性が出てくるんだけど

Windows系のそれは無駄口が多いくせに
その割に状況を正確に把握出来ないほど
決定的に不足していて使い物にならないことが多い



86 :デフォルトの名無しさん:2007/06/16(土) 08:43:24
linuxで試しにdirと打ってみたらファイル一覧が表示された
lsのエイリアスが張ってあるな

87 :デフォルトの名無しさん:2007/06/16(土) 08:54:03
>>86
最近は、coreutilsに入ってるはず > dir


88 :デフォルトの名無しさん:2007/06/16(土) 13:59:57
>>85
対象としてるユーザ層がそもそも違うOSだからな。

89 :デフォルトの名無しさん:2007/06/20(水) 14:47:27
MingwのOpenMP対応まだぁ?

90 :デフォルトの名無しさん:2007/06/21(木) 23:25:01
>>82
自分でデータ処理するための細々したツールをmingwで書いてパイプでつないでるよ。
mingwだからwin32アプリだ。
つーか、そうしたいからcygwinやらmingwやら使ってるんじゃないの?
GUIアプリ作りたきゃ、タダのvisual studio使ったほうがマシだよ。

91 :デフォルトの名無しさん:2007/06/21(木) 23:40:02
>>90
その用途だと mingw である必然がないと思うが…
CUI でも Visual Studio 使って作ればいいんじゃね?
# cygwin で POXIS API使って作りたいとか cygwin 上の
# UNIX ライクツールと組み合せて使うとかならわかるんだが…

92 :デフォルトの名無しさん:2007/06/22(金) 14:47:29
個人の自由にけちをつける変態スレはここですか?

93 :デフォルトの名無しさん:2007/06/22(金) 16:24:16
公共の場でオナニーをする奴はけちつけられると思うヨー

94 :デフォルトの名無しさん:2007/06/27(水) 16:06:19
GCJの質問もOKですか?

95 :デフォルトの名無しさん:2007/07/04(水) 18:56:17
下記のページを見てdllを作ろうとしています。
トップページ
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

原因は何でしょうか?

96 :デフォルトの名無しさん:2007/07/05(木) 12:49:07
>>96
--driver-name gccを取ったりしたらうまくいかない?


97 :デフォルトの名無しさん:2007/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

確認したソースは下記です。
http://www.borujoa.org/upload/source/upload12756.zip

98 :デフォルトの名無しさん:2007/07/07(土) 00:02:22
SJISコードがうごかねー。
いい加減、gccもデフォルトでSJISに対応してくれよな。。。
せめて単純追加オプションで。

99 :デフォルトの名無しさん:2007/07/07(土) 00:06:54
>>98
つ ttp://www.noppi.jp/diary/?date=20041126

100 :95 , 97:2007/07/07(土) 00:29:16
dllwrapに関して質問した経緯上、引き続きdllwrapを調査していたのですが、
どうやら
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
等を追加すると正常動作するものと思われます。
以上、ご報告まで。間違いがあれば指摘お願いします。

101 :デフォルトの名無しさん:2007/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:2007/07/07(土) 12:57:38
すみません
細かいところですが
 hello c でなくHello World! を表示させるでした・・・

103 :デフォルトの名無しさん:2007/07/07(土) 13:05:59
>>101
1.
./a

2.
testという既存のコマンドが実行されている。testに関してはmanpage参照。
自作のtest.exeを動かしたいのなら./test

3.
起動したらHello, world!と出力してすぐ終了するプログラムなんだから
ウィンドウがすぐ閉じるのは当然。むしろ閉じてくれないと意図しない動作になるでしょ。
コマンドプロンプトから実行するか、return 0;の前にscanfなりgetcharなり
使えるのならgetcharなりで入力待ちを作る。

104 :デフォルトの名無しさん:2007/07/07(土) 13:29:48
>>101
cygwinじゃなくて、Unix系コマンドインタプリタの基礎知識なんだが。

Unix系コマンドインタプリタ(以下シェル)では、実行モジュールを探すのにPATH環境変数を利用する。
ロートルUnixオペレータはしばしばカレントディレクトリ(.)をPATH環境変数に含めてしまう。
そうすると、カレントディレクトリの実行モジュールがパスなし(ファイル名のみ)で実行できてしまう。
最近のシェルは一般的にディフォルトではカレントディレクトリをPATHに含めるようなことはしないので、
パスなしでは実行できない。それだけのこと。

何故カレントディレクトリをPATHに含めてはいけないか、についてはスレ違いでもあるので
自身で調査することをお勧めする。

105 :101:2007/07/08(日) 14:28:03
>>103
ご丁寧にありがとうございます。
説明されればああ、当たり前のことなんだと理解はできるのですが
解決までもっていけないほど初心者だったので恥ずかしく思っています。
>>104
言い訳になってしまうのですがパスについてすらならっていなかったので
丁寧に説明していただいてありがとうございます。
カレントディレクトリをPATHに含めない件はスレ違いとのことですが
お勧めしていただいたので調べたので必要ないかもですが
理解したという報告まで・・ 環境によってコマンドが変わる事を避けるためと理解しました。
ありがとうございます。


返答が遅れましたが本当にスレ汚しのような質問にご丁寧に答えていただいてありがとうございます。
cygwinのインストールがおかしいのかと消しては入れなおしたりを半日以上繰り返していた
ため本当に助かりました。
本当にありがとうございます。

106 :デフォルトの名無しさん:2007/07/08(日) 15:30:51
たぶんみんな知ってるから
わざわざ報告しなくてもいいと思う
そのレスもこのレスも無駄と判断するのが
UNXクオリティ

107 :デフォルトの名無しさん:2007/07/08(日) 16:26:11
俺は解決したらそれっきりって奴よりいいと思うけどな。

108 :デフォルトの名無しさん:2007/07/15(日) 18:41:13
ムダかどうかというムダなレスが三つ(これも含む)増えてしまったわけだが。

109 :デフォルトの名無しさん:2007/07/19(木) 00:13:23
cygwinを導入し、windowsのコマンドプロンプトでUNIXコマンドを利用しています。
ls や which といった一般的なコマンドは使用できるのですが、
../hoge.exe
などと打ち込むと

'.' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

というメッセージが出てしまいます。
./ を有効にすることは可能でしょうか?
OSはWindows XP pro です。
ご教授お願いいたします

110 :デフォルトの名無しさん:2007/07/19(木) 02:28:45
>>109
cmd.exe は / をパスの区切りとしては見てくれない。
.\hoge.exe でがまんせい。


111 :デフォルトの名無しさん:2007/07/19(木) 02:44:29
cygwin 導入したんなら、cygwin で作業すればいいと思うんだけど。

112 :デフォルトの名無しさん:2007/07/19(木) 04:43:23
APIレベルでは/でも通るって本当?

113 :デフォルトの名無しさん:2007/07/19(木) 08:46:54
本当?

114 :デフォルトの名無しさん:2007/07/19(木) 10:34:08
本当。

115 :デフォルトの名無しさん:2007/07/21(土) 19:31:36
Windows Vista にcygwinをインストールしたいんだけど、
ダウンロードが終わった後のインストール段階で、33%くらい進んだところで必ずとまってしまって、
後は何時間放置してもうんともすんとも言わないんだけど、仕様?

116 :デフォルトの名無しさん:2007/07/21(土) 21:22:35
おそらく後ろに別のウィンドウが隠れている

117 :デフォルトの名無しさん:2007/07/21(土) 21:25:21
いや、何もなかったんだが

118 :デフォルトの名無しさん:2007/07/21(土) 21:30:18
ぼくのちんちんも皮の中に何か隠れています。

119 :デフォルトの名無しさん:2007/07/21(土) 21:38:36
箪笥の下に一匹いました

120 :デフォルトの名無しさん:2007/07/24(火) 18:34:02
MinGW + GCC から Excel ファイルを作ろうと思います。
どのようにするのが一番コンパクトですかね?

121 :デフォルトの名無しさん:2007/07/24(火) 18:37:35
>>120
xls限定? csvじゃダメなの?

122 :デフォルトの名無しさん:2007/07/24(火) 18:48:55
>>120
最近POIをgcjでコンパイルして,CNIでC++から使おうとして挫折しましたorz
トライしません?

この方法Linux上だとうまくいったのだけど,
Linux上でwin32へのクロスコンパイル環境を作って,
それで試したら私は失敗しました.


123 :120:2007/07/25(水) 11:33:31
>>121
うん、xlsがいいな。できれば幅変えたり色つけたりしたい。

>>122
Javaやrubyを通せばできなくはないけど、C++使っててそれは・・ねぇ。

そんなに需要がないわけでもなさそうなのに情報がみつからん・・・。

124 :デフォルトの名無しさん:2007/07/25(水) 19:30:29
Win32環境だったらExcelをCOM経由で呼び出すのはどうだ?
OOoもいけるのかな?

125 :デフォルトの名無しさん:2007/07/25(水) 20:51:47
COMを使うならVC++の#importが恋しい。

126 :デフォルトの名無しさん:2007/07/26(木) 18:09:14
プロプラなんだから情報なんざそうそうあるわけねぇ
OOoから物故抜け

127 :デフォルトの名無しさん:2007/07/26(木) 18:48:00
OOoってmingwでビルドできるんだっけ?


128 :デフォルトの名無しさん:2007/08/06(月) 19:27:22
mingwのgccってstl エラー無く作動するの?

129 :デフォルトの名無しさん:2007/08/06(月) 22:12:06
mingwでSTL使ったら感染するのかな?
GPLに

130 :デフォルトの名無しさん:2007/08/07(火) 00:53:06
>>128 どのgccがstlエラーありますか?

131 :デフォルトの名無しさん:2007/08/07(火) 00:53:53
>>129 ヘッダにライセンス書いてあるから読んどけ。

132 :デフォルトの名無しさん:2007/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 :デフォルトの名無しさん:2007/08/07(火) 09:51:42
>>132
ググレカス
http://www.google.co.jp/search?q=%22undefined+reference+to+%60__gxx_personality_sj0%27%22

× gcc
○ g++

134 :デフォルトの名無しさん:2007/08/07(火) 09:53:06
特にSTLのエラーメッセージははまると最悪。

135 :デフォルトの名無しさん:2007/08/07(火) 10:11:33
>>134
そんな次元の質問じゃねーよw

136 :デフォルトの名無しさん:2007/08/07(火) 10:37:01
普段C使ってるけど、STLコンテナ使いたくてC++にした。
だからついgcc でやる。
gccのコマンドオプションも眠くなるぐらいあるから気がつかなかった。
やっぱ敷居が高そうだし、vs2005 cl にもどろっかな。

137 :デフォルトの名無しさん:2007/08/07(火) 10:56:34
普通はMakefileに書いておくのでいちいち手でコマンドうったりはしないような…
まぁ書き捨てプログラムで gcc a.c とかはやるけど

138 :デフォルトの名無しさん:2007/08/07(火) 16:16:35
俺は汎用 Makefile 作って、
それを include するだけの Makefile をカレントディレクトリに作るコマンド作ってるな。
まあ、書き捨てプログラムは特定のディレクトリを使い回してるけど。

139 :デフォルトの名無しさん:2007/08/07(火) 16:21:25
まぁまぁまぁまぁまぁライオン

140 :デフォルトの名無しさん:2007/08/07(火) 16:58:27
違う言語から呼び出すために、APIをラップしたちょっとしたDLL作ってる。(JAVA)

141 :デフォルトの名無しさん:2007/08/08(水) 22:55:04
VC++に無い関数を使いたくて
Cygwin+gccでラッパーDLLを作ろうと思っています。

そこで質問なのですが、Cygwinのfopen()の返すファイルディスクリプタと、VC++のfopen()の返すそれとでは、互換性はあるのでしょうか?


142 :デフォルトの名無しさん:2007/08/08(水) 23:00:12
そもそもFILE構造体自体に互換性がなかった希ガス。
mingwならいざ知らず、ラッパー作るのも一筋縄じゃいかないような。
一体全体、何をやりたいんだ?

143 :デフォルトの名無しさん:2007/08/08(水) 23:05:32
プログラム全体をCygwin上でコンパイルしたほうがきっと楽。

144 :デフォルトの名無しさん:2007/08/09(木) 03:25:42
VC++になくってcygwinにある関数を使いたいって…
そのcygwinの関数はVC++で使えるであろう Win32 API で
実装されてると思うからえらく遠まわりなことをしてる気が…

145 :デフォルトの名無しさん:2007/08/09(木) 03:35:24
ソースコンパチのコード書く場合、てっとりやばいからじゃない?
たとえば、mmapを使いたいとかね。MapViewOfFileだと、結構差があるからそこから合わせるのは結構面倒。

っていうか、>>141のレスからしてmmapでビンゴな希ガス

146 :デフォルトの名無しさん:2007/08/09(木) 03:36:49
ちなみに100%GCC向けでコードかけばソースコンパチじゃないかって話になるが
まぁ、デバッグの都合上とか、最適化機能がgccは割とトロいとか、その辺の話かな

147 :デフォルトの名無しさん:2007/08/09(木) 03:43:35
>>146
「GCC向けコード」って何のことを指してるんだ?
コンパイラとしてGCCを使ったとしても使える API は OS 毎違うわけで…
API も同じにしたい人が cygwin のような API レベルのエミュレーションを使うわけで…

148 :デフォルトの名無しさん:2007/08/09(木) 03:52:48
ああ、そこをつつかれるとは思わなかった
Cygwin向け(POSIX向け)ね。
mmapはWindowsのWin32APIにはないから。


149 :デフォルトの名無しさん:2007/08/09(木) 03:55:32
>>147
Win32APIにはmmapは用意されてないんだよ。
>>145の言うように代用のAPIがある。

あと、Cygwin使えば基本的にはPOSIX準拠のAPIは使えるよ。

150 :デフォルトの名無しさん:2007/08/09(木) 12:04:56
なんかスンゴイの作ってるんだよ。きっと

151 :デフォルトの名無しさん:2007/08/09(木) 17:33:16
質問です。
Cygwin+GCCで開発を行っているのですが
EclipseやVisualStudioのような、高機能でGUIな開発環境を使いたいのですが
何かありませんか?コード保管や、エディタと連動したデバッガなどの機能が使いたいのです。

よろしくお願いします。

152 :デフォルトの名無しさん:2007/08/09(木) 17:54:18
>>151
何故EclipseやVisualStudioを使わないのですか?
誰も止めませんよ?

153 :デフォルトの名無しさん:2007/08/09(木) 17:57:32
>>152
製作はWindowsで、
実際の運用はBSD系の環境でやりたいのです。
作業の効率化の為にWindowsで作業しているものの、普通のエディタで作業してもメリットは薄く
VisualStudioでやっていましたが、当然ですが、デバッグ機能はMSのコンパイラでなければまともに動きません。


154 :デフォルトの名無しさん:2007/08/09(木) 18:03:45
だから、何故VisualStudioで開発しないの?
運用がBSD系だからと言って、クロスで開発できるのならgccに拘る必要もないでしょうに。
もし仮に、BSD系にしかない関数を使っているのならソースを入手してきてコンパイルするとか、
ダミー関数を作るとか、いくらでも手はあるでしょ。

155 :デフォルトの名無しさん:2007/08/09(木) 18:05:44
>もし仮に、BSD系にしかない関数を使っているのならソースを入手してきてコンパイルするとか、
>ダミー関数を作るとか、いくらでも手はあるでしょ。
当然開発環境がなければ、その選択を取る必要があるでしょうが
あると仮定するならば、わざわざバグが潜む可能性がある開発技法をとるメリットがありません。



156 :デフォルトの名無しさん:2007/08/09(木) 18:08:19
よくわからんがBSDターゲットでわざわざcygwinでクロス開発を
してるってことかしら
BSDでEmacsenかEclipse + CDTでも使って開発したほうがいいんでないの

157 :デフォルトの名無しさん:2007/08/09(木) 18:08:40
>>154
何故、そんな遠回りをわざわざ選ばせるんだ?

>>153
Dev-C++
ttp://www.bloodshed.net/

つーか、Eclipseでgcc+cygwin対応の開発環境+デバッガがあったろ?
俺はSun嫌いだから、つかわねぇけど


158 :デフォルトの名無しさん:2007/08/09(木) 18:17:37
>>157
Sun嫌いだとEclipse使わないのか…
IBM嫌いで使わないってならまだわかるけど…

159 :デフォルトの名無しさん:2007/08/09(木) 18:27:32
Eclipseの意味を辞書で引いたことがないんでないの?

>>157
皮肉。横着するための努力を惜しむなと。
#どうせ他人事だしね。

160 :デフォルトの名無しさん:2007/08/09(木) 18:32:46
>>158
君は、Javaの自動アップデートがかかって、Eclipseが不安定になった事が無いのか。
あれほど腹の立つことは無い。
#単純には自動外せば良い話だが、俺はもうSunを信用する事が出来ん。

>>159
皮肉を言うなら、もっと徹底的に。
中途半端過ぎる。

161 :デフォルトの名無しさん:2007/08/09(木) 19:09:49
>>160
>君は、Javaの自動アップデートがかかって、Eclipseが不安定になった事が無いのか。
ない.JREのバージョンによらずEclipseはもともと不安定だしな.

162 :デフォルトの名無しさん:2007/08/09(木) 19:45:18
やっぱりオープンだと変なやつ多いな。
きっと、なんかスンゴイの作ってるんだろうな。

163 :デフォルトの名無しさん:2007/08/12(日) 08:37:59
MSYSで/usrをマウントしたいんですが/にマッピングされてしまいます。
ディレクトリ E:\usr を作って etc/fstabに E:\usr /usr と書いてみたんですが
マウントできませんでした。MSYSで/usrをマウントすることはできないでしょうか。

164 :デフォルトの名無しさん:2007/08/16(木) 00:08:12
スンゴイで逃げるなよ。皮肉に失敗してただの馬鹿っぽくなってるぞ?

165 :デフォルトの名無しさん:2007/08/16(木) 01:43:49
gonzuiの作ってるんだろうな。

166 :デフォルトの名無しさん:2007/08/18(土) 15:29:03
ぶひー cygwinのgdbでwatch pointを使いたいのですが反応がありません おまえらのcygwinでは使えてますか?

167 :デフォルトの名無しさん:2007/08/18(土) 20:07:00
はい

168 :デフォルトの名無しさん:2007/08/18(土) 21:39:04
MinGWを3.4.5にしてみた
STLport5.1.3をビルドすると3.4.2では出なかった警告がわらわらと・・・・
何か心配だべ

169 :デフォルトの名無しさん:2007/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:2007/08/19(日) 00:58:08
うーむ いちおうHardware access (read/write) watchpoint 1ってでるんですが止まらずそのまま実行されちゃいます

171 :デフォルトの名無しさん:2007/08/19(日) 22:26:47
>>169
rmだけ戻すといいよ

172 :デフォルトの名無しさん:2007/08/20(月) 05:52:13
>>171
さんくす戻してみます
この現象どうもマウントポイント以下で起きますね
mkdir /foo; rm -r /foo は消せるけど
マウントした /mingw の下にあるディレクトリが消せない(見えてない)

173 :デフォルトの名無しさん:2007/08/20(月) 08:09:41
msys上での configureが超遅いのには泣ける。

gccのビルドが半日がかりだよ。 orz


174 :デフォルトの名無しさん:2007/08/21(火) 16:56:54
そういえばついに MinGW 公式での gcc-4.2.1 のプレビュー版が出てきたな…
http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=241304
暇なひと人柱よろ〜

175 :デフォルトの名無しさん:2007/08/21(火) 17:40:56
そういや最近の事情を知らないんだけど何が変わったの?

176 :デフォルトの名無しさん:2007/08/21(火) 20:11:35
>>175
OpenMP が入った

177 :デフォルトの名無しさん:2007/08/21(火) 21:17:52
意味あるのそれ

178 :デフォルトの名無しさん:2007/08/21(火) 23:30:02
#pragma omp parallel num_threads(100)
printf("uho!\n");

179 :デフォルトの名無しさん:2007/08/24(金) 20:53:56
Cygwin ってなんのためにあるの?

180 :デフォルトの名無しさん:2007/08/24(金) 21:21:34
>>179
UNIX の魂を持つ社畜が Windows を使わされた時の救済のために

181 :デフォルトの名無しさん:2007/08/24(金) 21:34:16
>>180
そしてそのAPIの遅さに絶望するんだよなw
# シェル環境としては便利だからいいけど

182 :デフォルトの名無しさん:2007/08/24(金) 22:27:28
mingw 使うからいいさー

183 :デフォルトの名無しさん:2007/08/24(金) 22:44:12
> UNIX の魂を持つ社畜が Windows を使わされた時の救済のために

いや、そのりくつはおかしい。
そういうときは、会社辞めればいいんだよ。

184 :デフォルトの名無しさん:2007/08/24(金) 22:50:26
Windowsのホームディレクトリ(Document and Settings以下)でls実行すると
異常に時間がかかりすぎ
たかがlsで何やってんだよ

185 :デフォルトの名無しさん:2007/08/25(土) 12:27:05
MinGW で boost 1.34 使おうと思ってDOS窓から bjam したけど
"-sTOOLS=mingw" を認識しない
ビルドできねw
1.33 の時はこれで通ったんだけどなぁ・・

186 :デフォルトの名無しさん:2007/08/25(土) 12:42:41
Boostスレ行ってV2で検索汁

187 :デフォルトの名無しさん:2007/08/25(土) 14:25:11
>>183
社畜が会社を辞めようなんて思うわけがないだろ
社畜はリストラされると全人格が否定されたが如く思って自殺するような人種を指すんだぞ(w

188 :185:2007/08/25(土) 16:39:32
>>186
ありがとう、ビルドできました!

189 :デフォルトの名無しさん:2007/08/25(土) 20:49:37
> 社畜が会社を辞めようなんて思うわけがないだろ
> 社畜はリストラされると全人格が否定されたが如く思って自殺するような人種を指すんだぞ(w

今の時代にそんな人いるの?www

190 :デフォルトの名無しさん:2007/08/26(日) 11:39:12
>>179
無料Xサーバのため。

191 :デフォルトの名無しさん:2007/08/26(日) 12:42:49
>190
それだけなら Xming もあるべ。

192 :デフォルトの名無しさん:2007/08/26(日) 12:50:54
Astec X ってどうなった?
逆串か何かおかしいようで Web みれんけど。

193 :デフォルトの名無しさん:2007/08/31(金) 19:34:58
MinGWでmecabをコンパイルしてみたのですが
できあがったdllがlibmecab-1.dllみたいに"-数字.dll"となってしまいます
これをlibmecab.dllのように吐きたいのですがどこを見ればよいのでしょうか

194 :デフォルトの名無しさん:2007/09/01(土) 17:10:14
>>191
いいこと聞いた。
でも、sshdを使うためにcygwin

195 :デフォルトの名無しさん:2007/09/02(日) 02:06:50
>193
configure した結果できる libtool の soname_spec を書き換えるのが簡単だと思う。

196 :デフォルトの名無しさん:2007/09/02(日) 12:26:36
>>195
ありがとうございます!
ご指摘通りsoname_specのversuffixを潰したら望み通りの結果になりました

197 :デフォルトの名無しさん:2007/09/04(火) 13:08:04
cygwinでwine-0.9.44をmakeできるpatchありませぬか?
というか、configureするとヘッダは検出できるのに
-lX11とか-lpngとか-lfreetypeとか、ライブラリが一切
検出されないんだけど、なんなんだろうか。

198 :デフォルトの名無しさん:2007/09/05(水) 01:16:35
find /cygdrive/c/ -name 'libX*' -print

199 :デフォルトの名無しさん:2007/09/05(水) 01:59:40
>197
configure のスクリプト自体が Windows 上の場合にライブラリ名を判別しないように作成されている。
aclocal.m4 先頭の WINE_CHECK_SONAME 参照。
cygcheck 使って依存 DLL を引っ張ってくれば設定できるかもしれない。

で、単なる興味本位だが、Linux 板の Wine スレでも見たんだけどさぁ、なんで Cygwin 上で Wine を使いたいの?

200 :デフォルトの名無しさん:2007/09/05(水) 02:36:25
そこに、やまが、ある、か ら

201 :デフォルトの名無しさん:2007/09/06(木) 04:20:56
>>199
別に MinGW でもいいけど、windows で wine が動けば
ベースになる windows のバージョンに依らずにアプリを
動かすラッパーというか互換レイヤーというか、そんな
感じに使えそうな気がしないか。

まあ、make 通っても結局 windows のシステムコールに
頼るわけで、動いても実用的でなさそうだとは思うけどな。
しかし、実際には動かないのではただの皮算用だし、
せめて動かすとこまでいってくれないかなあと思うのは
人情というものだ。

# 「下手の考え休むに似たり」というツッコミは勘弁してくれ

202 :デフォルトの名無しさん:2007/09/06(木) 04:30:29
そして wine の上で cygwin を動かすんだよな

203 :デフォルトの名無しさん:2007/09/06(木) 04:32:14
河童の川流れ

204 :デフォルトの名無しさん:2007/09/06(木) 06:30:41
>>202
当然w

205 :デフォルトの名無しさん:2007/09/06(木) 07:46:38
取らぬ狸の皮算用

206 :デフォルトの名無しさん:2007/09/06(木) 18:46:22
zshでcdとかで補完候補リスト内の要素をタブ連打で選んでる時
リスト内に日本語のファイル名があるとリストのレイアウトが崩れて
なおかつタブ押すたんびに、改行が入ってしまうのですが解決策はありますか?

lsでは問題なく日本語のファイル名を表示できているのでzsh側に問題があると思います

207 :デフォルトの名無しさん:2007/09/07(金) 01:30:31
杉樽如御呼猿

208 :デフォルトの名無しさん:2007/09/08(土) 18:35:35
ckがマルチバッファに対応してる事に今気がついた俺ガイル
screen起動すると日本語化けてたのですがこれで幸せになれそうです

209 :デフォルトの名無しさん:2007/09/10(月) 18:46:33
MinGWでgcc-4.2.1使ってみたけど
VistaでGCC_EXEC_PREFIXをセットしないと正常に動かない問題が
解決されたんだな

210 :デフォルトの名無しさん:2007/09/11(火) 05:23:20
今まで気にしたこともない”[.exe”が何なのかググろうとしたがGoogleの中の人が記号の連続を無視しやがる。

211 :デフォルトの名無しさん:2007/09/11(火) 07:58:24
中の人も大変だな
シェルスクリプトの

if [ ... ];

で使われる。

212 :デフォルトの名無しさん:2007/09/11(火) 08:56:51
>>210
Unixだと大抵testの別名(ハードリンク)だな。

213 :デフォルトの名無しさん:2007/09/11(火) 13:49:35
googleの中の人に[やら.やらをエスケープして渡すことはできますか

という質問かと思った。

214 :デフォルトの名無しさん:2007/09/12(水) 00:38:44
>>213
それだとスレ違いになってしまうと思ったのだが。
案外素直にそういうことだったのかも知らん。

215 :デフォルトの名無しさん:2007/09/12(水) 05:26:48
ただのちらしの裏だろ
みんな親切すぎw

216 :デフォルトの名無しさん:2007/09/17(月) 23:57:26
質問ですが
cygwin + ada でヘローワールドを作成しました

これがcygwin上からでしか動かない
またはDLLが必要になるのですが
C++ + minGW みたいにexe単体で動かす事は出来るのですか?

217 :デフォルトの名無しさん:2007/09/18(火) 00:25:02
cygwinでコンパイラをMinGWに

218 :デフォルトの名無しさん:2007/09/18(火) 00:26:11
>>216
MinGWのgnatを入れる

219 :デフォルトの名無しさん:2007/09/18(火) 11:28:31
OKベイベー!試してみるぜヨロシク!!!

220 :デフォルトの名無しさん:2007/09/18(火) 21:03:55
>>216
コンパイル時に-mno-cygwinオプション付ければいいよ。
GUIなアプリケーション書いてるならさらに-mwindowsオプションも付ける。

221 :221:2007/09/18(火) 21:14:20
みんなありがとう!

なんかエラーが出たッぽい
リンカエラーだ
だがここから先は俺の役目
>>221
俺に任せろ!

222 :デフォルトの名無しさん:2007/09/18(火) 21:20:02
adaでも-mno-cygwinって使えるのか?

223 :デフォルトの名無しさん:2007/09/18(火) 21:36:23
オーバーマンキングエイダー 超人ada王
エイダーマンキングゲイナー ada人ゲイナー王

224 :デフォルトの名無しさん:2007/09/18(火) 23:04:41
質問させてください。
windresでリソースをコンパイルしようとしたのですが、下記のエラーがでます。
gcc: installation problem, cannot exec `cc1': No such file or directory
解決策をご存知の方おられますか?


225 :デフォルトの名無しさん:2007/09/18(火) 23:37:06
>>224
再インストール
今度は正しくな

226 :デフォルトの名無しさん:2007/09/19(水) 15:30:35
Cygwin + MinGW + GCC
なんてソースしか公開してないイケズなアプリのコンパイルにだけ使えばいいんです。

227 :デフォルトの名無しさん:2007/09/21(金) 10:07:03
cygwinのg++でstd::wcoutやstd::wstringを使いたいと思い
gcc3.4.5をビルドしそれを使いコンパイルしてみたのですが「stdにwcoutなんてないよ」と言われてしまいました

configureのログを見てみると
checking for fgetwc... no
checking for fgetws... no
checking for fputwc... no
checking for fputws... no
checking for fwide... no
とありwidecharを扱うCの関数がないのが問題のひとつだと思うのですが
cygwinでこれらを使えるようにできるパッチなどはありますか?

228 :デフォルトの名無しさん:2007/09/21(金) 23:03:41
>227
Cygwin のロケール実装が腐ってるのがそもそもの原因なので諦めるのが吉。

229 :デフォルトの名無しさん:2007/09/21(金) 23:25:10
そしてMinGWではライブラリ実装が未整備という罠

230 :デフォルトの名無しさん:2007/09/22(土) 00:17:00
結論:MSのVisual C++を持っている奴を殺して奪い取り世紀末覇者になれ!!

231 :デフォルトの名無しさん:2007/09/22(土) 01:17:19
そこまでしなくてもExpressとPlatform SDKでいけるだろ
スレ違いだが

232 :デフォルトの名無しさん:2007/09/22(土) 01:56:07
今はWindows SDKに改称されたみたいだけど、アホみたいにサイズがでかいんだよな
ダイアルアップの俺には厳しいぜ
その点、MinGWは必要な部分だけダウンロードできるからうまー

233 :デフォルトの名無しさん:2007/09/22(土) 02:06:41
人んち、学校、ネカフェ……。
どこか高速回線のところで落としてDVDに焼けばうまー。

234 :デフォルトの名無しさん:2007/09/22(土) 02:11:08
Windows SDKはどれを使うべきなんだろう?どれ選んだらいいかわからんす
VCでも起きるんだけど dxguid と strmbase/strmiids を一緒にリンクすると衝突するよね。
新しいWindows SDKの strmbase/strmiids では直っているのかな。

235 :デフォルトの名無しさん:2007/09/22(土) 02:17:41
まあCOMベースなのでこのためにわざわざ替える必要もないか。。

236 :デフォルトの名無しさん:2007/09/22(土) 10:38:44
まあドトネトイラネな人にとっては、Platform SDKで良かったのにって話だわな
Windows SDKに統合されたおかげでドトネト部分のドキュメントも
英語オンリになっちまったし

237 :デフォルトの名無しさん:2007/09/22(土) 13:49:46
>>236
Windows SDK日本語版なら、
.NET Framework部分は日本語だぞ。

238 :デフォルトの名無しさん:2007/09/22(土) 20:21:41
>>232
友達いないのか
大変だな

239 :デフォルトの名無しさん:2007/09/22(土) 20:51:03
こんな過疎スレに来てまで罵倒する相手探しとは
よほど暇なんですね

240 :デフォルトの名無しさん:2007/10/03(水) 11:45:02
すいません、MINGW+Msysでコンパイルしたコマンドラインプログラムを
コマンドプロンプトから実行しようとすると、
"KKCFUNCを組み込みました" というメッセージがでて端末が
フリーズしたようになってしまうんですが、これを回避する方法はありますか?

mingw5.1.3, msys1.0.10 on WindowsXP sp2 です

ちなみにlibcurlを作るためにビルドしたcurlコマンドも同様になります。
opensslコマンドはちゃんと動いているように見えるけど、
これはlinux上でクロスコンパイルしたものです。


241 :デフォルトの名無しさん:2007/10/03(水) 12:39:44
>>240
うちではなりません。

242 :デフォルトの名無しさん:2007/10/03(水) 13:14:45
>>241
ありがとう。
いまリンカオプションが臭いような気がしてopensslのMakefileを眺めてる
なんかわかったら報告する。しなかったら挫折したということで。


243 :デフォルトの名無しさん:2007/10/03(水) 13:35:32
kkcfuncっていえば16bitアプリになってるような気がするね
いや、よくわからんですけど

244 :デフォルトの名無しさん:2007/10/04(木) 08:24:33
kkcfuncが原因じゃないと思う
とりあえず必要最小限の再現可能ソースを晒せ

245 :240:2007/10/04(木) 15:58:57
とりあえず報告
問題はlibcurl.dllにあったみたい。
こいつがどうも変なライブラリにリンクしてて、
それが16bit?な環境に依存してるのでKKCFUNCが起動された...と思う。
Windowsは正直良くわからない。

CURLの本家が配布してる2000/XP用のlibcurlバイナリに差し替えたら直った。
なんでCURLがそんな変なライブラリに依存してたかは時間があれば調べてみる
時間がかかったのは、単純に問題のlibcurlにリンクして初期化するだけの
プログラムでは問題が起きなかったから。でもこれは勘違いかも。

autotools使ってるunixソフトの移植なんて簡単さ、と思ってたら
結構いろんなとこでハマって困った。
つか、windowsのリンクってなんか変。


246 :デフォルトの名無しさん:2007/10/08(月) 04:22:25
漏れもkkcふんcを組み込みましたというえらーにであたことあります
拡張子がcomの実行ファイルがjっじこうされたことがっげえいんだったとおもいます
たぶんpythonかrubyだったとおもいます それをけしてふつうのEXEがじこうしたらふつうになりました

247 :デフォルトの名無しさん:2007/10/09(火) 04:10:09
Cygwinで
setlocale(LC_ALL,"Japanese_Japan.932");
が動いた記念カキコ。

-mno-cygwin -finput-charset=cp932 -fexec-charset=cp932

これでCロケール使わせれば、Boost.Regex使えないかな・・・


248 :デフォルトの名無しさん:2007/10/09(火) 09:16:17
>>247
日本語 Windows では cp932 がデフォルトだから、それ、
setlocale() が動いたんじゃなくて無視されてるだけじゃないの?

どんなコードが「動いた」のか教えてほしい。

249 :デフォルトの名無しさん:2007/10/09(火) 09:23:36
>>247
それおもいっきりMSVC用のロケール文字列だな
-mno-sygwinしてて実はmingwでした
MSVCRTとリンクしてました

ってとこじゃねぇのか

250 :デフォルトの名無しさん:2007/10/09(火) 10:28:31
-mno-cygwin なんだから当然 cygwin.dll じゃなく MSVCRT だろ

251 :デフォルトの名無しさん:2007/10/09(火) 10:44:50
>>250
ああすまん、>>247で思いっきり-mno-cygwin指定してんだな
見逃してたw

252 :247:2007/10/10(水) 21:52:09
cygwinで(Boost1.33.1)
Boost.Regex for ICU 使えたよ。
-finput-charset=cp932 -fexec-charset=cp932

(1)ICUをインストール
(罠:configure系スクリプトの改行コードを変更してインストール)
/usr/local にデフォルトでインストールされる。

(2)Boostをインストール
boost/regex/usr.hppの
#define BOOST_REGEX_MATCH_EXTRA
#define BOOST_HAS_ICU
のコメントアウトをはずしてからICUのパスを指定してインストール
./bjam -sICU_PATH=/usr/local --toolset=gcc install

(3)テストではまった点

・ICUはdllだがlibとほぼ同様にリンクできる。
・IDEはDevC++でやると少し楽かもしらん。
・ICUのUnicodeStringはgetTerminatedBuffer使わないとNULL文字がついてこない罠がある
・標準出力はwide->narrowに変換してから使う。
 (ただし、cygwinのCP932のsetlocaleは失敗するぽいのでロケール関数は使えなかった。緊急策としてMingwでsetlocale,mbstowcs,wcstombsをラップしたDLLを作成して対処した。>>247参照)


253 :デフォルトの名無しさん:2007/10/11(木) 02:25:15
cygwinでtgifを使いたいです。
そこで、こちらのサイトを参考にしました。

Cygwin + X + 日本語アプリケーション
ttp://www.eaflux.com/cygwin-xfree-jp-supplement/

おそらくインストールは完了したとは思います。
でも、いざ実行しようとしたら
Error: Can't open display:
とエラーが表示されます。どうすれば解決できるでしょうか?

254 :デフォルトの名無しさん:2007/10/11(木) 03:05:42
>>253
つ[DISPLAY]

255 :デフォルトの名無しさん:2007/10/11(木) 03:36:36
ごめんなさい。よく分からないです。
オプションを参照せよとのことでしょうか?

256 :デフォルトの名無しさん:2007/10/11(木) 07:58:07
xならdisplay接続先のXサーバがあるわけで、それを指定するには大抵DISPLAY環境変数を使うわけだ。
Xサーバがローカルなら、DISPLAY環境変数に":0.0"でも設定しておけばいいはずなんだが。
もしXの環境構築の経験がないなら、LinuxでもMacでもSolarisでも一度その辺りを覗いてきたら?

257 :デフォルトの名無しさん:2007/10/12(金) 05:17:15
詳しい解説ありがとうございます。
残念ながら全く理解できません。
私は環境構築とかのレベルじゃないようです。
失礼しました・・・。

258 :デフォルトの名無しさん:2007/10/14(日) 06:15:36
前の方でglutの話が出てたのでメモ
http://mywebpage.netscape.com/PtrPck/glut.htm

259 :デフォルトの名無しさん:2007/10/14(日) 09:57:01
GDI+は
MinGWでも使うことはできるのでしょうか?


260 :デフォルトの名無しさん:2007/10/14(日) 10:40:08
>>259
試したことねーけど普通に使えると思うよ
gdiplus.dllに入ってるのはflat APIとよばれる普通のCインタフェースで
それをC++のヘッダに書かれたクラス群でラップしてるだけだから
リンケージやABIまわりの問題は無いはず

261 :259:2007/10/14(日) 14:53:45
>>260
サンクス。
G++用の<windows.h>を使うので、DevC++でWinApplication作成。

PlatformSDK/IncludeからGdiplus関係のヘッダーをプロジェクトにコピーしてGdiplus.hをインクルード
Gdiplus.libをLibraryに追加

このままだとエラーでるので少し修正必要ぽいです。
動作テストはしてませんが、コンパイルは通りました。

GdiplusEnums.hの
534行目のenum EmfPlusRecordType;をコメントアウト。(前方宣言いらないくさい)
538行目のGDIP_WMF_RECORD_TO_EMFPLUS(n)マクロのEmfPlusRecordTypeへのキャストをコメントアウト

GdiplusImaging.hの
156行目の PixelFormat PixelFormat;を ::Gdiplus::PixelFormat PixelFormat;

GdiHeaders.hの
653行目の friend Graphics;をfriend class Graphics;


262 :デフォルトの名無しさん:2007/10/18(木) 18:02:58
すいませんgccスレで聞いたほうがいいっていわれたんで聞かせてください

調べてもわからんかったので聞きたいんだけどeclipseのエラーで

Error launching external scanner info generator (gcc -E -P -v -dD C:/Eclipse/workspace/.metadata/.plugins/org.eclipse.cdt.make.core/specs.c) try1

これ何すか?
プロジェクトを作るとすぐに警告が出ててできません。

どうすればなおるでしょうか?

263 :デフォルトの名無しさん:2007/10/25(木) 06:50:28
バージョンも環境も書かずに

264 :デフォルトの名無しさん:2007/10/25(木) 15:42:22
多分その前のスレの奴らは

こんな奴相手に出来るか!

と思って厄介払いしたんだな。

265 :デフォルトの名無しさん:2007/10/29(月) 01:59:11
Windows上でGtkmm使ったプログラムを創ろうとしています
Cygwin環境でやるのがいいか
Mingw環境でやるのがいいか
それともネイティブがいいのか
迷っています


266 :デフォルトの名無しさん:2007/10/29(月) 12:09:57
>>265
迷う程度の知識レベルなら止めた方がいいと思います。

267 :デフォルトの名無しさん:2007/10/30(火) 08:40:24
Qt4でやれ

268 :デフォルトの名無しさん:2007/11/02(金) 23:07:37
cygwin環境のgccで.cをコンパイルしたんですが、実行している途中
タスクマネージャで実行プロセスを見ると最大使用メモリ量と使用メモリ量が同じでした。
これは使用メモリ量の制限によって処理速度が落ちていると考えてよろしいでしょうか?
時間のかかる処理なので少しでも速くしたいのですが、解決策はありますか?
regtoolでcygwinの最大メモリを増やすのは試しましたが、見当違いだったようです。

269 :デフォルトの名無しさん:2007/11/02(金) 23:43:46
>>268
そもそもメモリが足りなければ、GCCは落ちると思う。

タスクマネージャのヘルプによれば、
最大使用メモリ量は、プロセスが開始してからのメモリ使用量のピーク値。
だから、これが使用メモリ量と同じだったからといって、足りていないということではない。

270 :デフォルトの名無しさん:2007/11/03(土) 00:59:12
>>269
そうなんですか、己の無知がお恥ずかしい・・・
迅速な返信ありがとうございました。

271 :デフォルトの名無しさん:2007/11/03(土) 02:28:11
>>269
gccの実行中という意味なのか?

>>270
速くしたいなら効率の良いプログラミングが出来るように
勉強したり、経験を積むしかないだろ

272 :デフォルトの名無しさん:2007/11/05(月) 11:30:13
コンパイル中のメモリのことじゃなくて
実行プログラムの方の話を行ってるんだろう

>>271は日本語の勉強をしたほうがいい

273 :デフォルトの名無しさん:2007/11/05(月) 20:46:37
>>270
JavaやLispのようなGCあり言語の経験を元に話してる?

コミットチャージが物理メモリを越えてとスワップ処理で遅くなるけど
最大メモリは関係ない。プロファイルとってみたら?

274 :デフォルトの名無しさん:2007/11/10(土) 06:18:35
Cygwinではstrdup関数はどこのフォルダのどのファイルに定義されていますか?
string.hでは宣言のみでした。

275 :デフォルトの名無しさん:2007/11/10(土) 06:26:11
strdupの返り値は(char *)型のはずなのに、Cygwinだと↓で警告が出るのですが


#include <stdio.h>

struct p_person {
char *name;
char *address;
char *tel;
};

int main(void)
{
struct p_person person;
person.name = strdup("abcd");
person.address = strdup("埼玉県所沢市どこそこ9-3-1");
person.tel = strdup("042-951-XXXX");
return 0;
}



ちなみにバージョンは
$ help
GNU bash, version 2.05b.0(9)-release (i686-pc-cygwin)

276 :デフォルトの名無しさん:2007/11/10(土) 10:30:53
>>274
ライブラリの中。

>>275
何て警告が出るの?それを読んで、どうすればいいかわからないの?

そのバージョン、 bash のバージョンだよ。コンパイラのバージョンは
gcc --version ね。

277 :デフォルトの名無しさん:2007/11/10(土) 14:05:24
MinGW-5.1.3とgcc-3.4.5でSTLport-5.1.4を使いたいのだけど、
コンパイル時undefined reference toとか出てきて上手くいかない。
(-lstlport.5.1とかやってるにも関わらず)

上手く動いている方、インストールの手順を教えてくれませんか?

278 :デフォルトの名無しさん:2007/11/10(土) 16:50:11
>>277
configure してる?

279 :デフォルトの名無しさん:2007/11/10(土) 17:13:20
MinGWのGCC使ってOpenGLのプログラム書いてるんだけど
なんかgl.libとかglu.libがないような気がするんだが。

undefined reference to wglCreateContext@4 とか出るし。

280 :デフォルトの名無しさん:2007/11/10(土) 18:50:10
マニュアル嫁よ

281 :デフォルトの名無しさん:2007/11/10(土) 18:58:18
>>278
それはmsysでbuild/libで./configure -c gccしてからmake -f gcc.mak install-staticするってこと?
やってみたけど駄目だった。orz
以下、コンパイル時のコマンド
g++ -lstlport.5.1 stl.cpp
C:/DOCUME~1/main/LOCALS~1/Temp/ccyobaaa.o:stl.cpp:(.text+0x33): undefined reference to `_imp___ZN11stlpmtx_std4coutE'
(以下略)

282 :271:2007/11/11(日) 11:16:59
>>272
日本語の勉強が必要なのは269だろ。
あとお前は脳神経外科にでも池

283 :277:2007/11/13(火) 00:32:20
解決した。
-oオプションが抜けてた。orz

けど、プログラムの先頭に
#define _STLP_USE_STATIC_LIB
と書いてもダイナミックリンクになってしまうんだがこれってmingwの使用か?

284 :デフォルトの名無しさん:2007/11/13(火) 00:54:41
#defineはプリプロセッサへの指示であってリンカへの指示じゃないぞ。

285 :277:2007/11/13(火) 08:50:58
>>284
その通りだな。orz
初心者ですまん。

286 :デフォルトの名無しさん:2007/11/13(火) 17:51:27
先日cygwinを導入してこちらのサイトにあるソース
ttp://www.geekpage.jp/programming/linux-network/getaddrinfo-1.php
をgccでコンパイルしようとしたところ

net2.c: In function `main':
net2.c:11: error: storage size of 'hints' isn't known
net2.c:12: error: storage size of 'addr' isn't known
net2.c:24: error: dereferencing pointer to incomplete type

このようなエラーが出てしまい、うまくコンパイルできませんでした・・
他サイトの似たようなソース等も試してみたのですが同様のエラーが発生して
うまくいきません。
これをどうにか回避できないでしょうか?

gccのバージョンは
gcc (GCC) 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)
です。

287 :デフォルトの名無しさん:2007/11/13(火) 20:32:40
netdb.hを探して"addrinfo"で検索かけてみ

288 :デフォルトの名無しさん:2007/11/13(火) 20:51:19
オウ・・無いですね
手打ちで追加してみたんですがどうもうまくいかないのですが
cygwinでコンパイルするにはどうすればいいのでしょう?

289 :デフォルトの名無しさん:2007/11/21(水) 23:19:42
PCクラッシュをきっかけに、MP4Boxのbinaryを探していたら、GPACの公式にてLisence問題?
でSourceのみの配布に変わっていた為、初めてMinGW+MSYSな環境を立ち上げようとして
います。

SourceForgeから必要最低限のbinaryを取ってきたのですが、MSYS*.exeが見つかりません。

それでも何とかshellが動作するようになったのですが、/ に本来Installしたフォルダとは別に
/usrも後からmountされてしまいます。fstabにはその様な記載はしておらず、レジストリに
情報が無いかと検索を掛けてみてもmount情報が見つかりません。予想通り、/usrの下は
/になっており、コマンドのpathが通らなくて目的のbinatyがbuild出来ない状況です。

mount情報には、fstab以外の情報も有るところを見ると、何処かで設定していると思ってい
るのですが、自分の力不足で見つけることが出来ず困っております。レベルの低い質問で
申し訳有りませんが、情報、「スレ違いだから***で聞け!」等、アドバイス頂けないでしょ
うか。


290 :デフォルトの名無しさん:2007/11/22(木) 03:03:47
ごちゃごちゃしてよくわからん

291 :デフォルトの名無しさん:2007/11/22(木) 09:11:49
fstabに書いてないのがマウントされるのはそんなものだと思うけど。
俺のfstabはこんなの
c:/MinGW /mingw
c:/msys /msys

で、mountの出力はこんなの
D:\TEMP on /tmp type user (binmode,noumount)
c:\MinGW on /mingw type user (binmode)
C:\msys on / type user (binmode,noumount)
C:\msys on /usr type user (binmode,noumount)
c:\msys on /msys type user (binmode)
c: on /c type user (binmode,noumount)
d: on /d type user (binmode,noumount)
f: on /f type user (binmode,noumount)

gccとか動くの?

292 :289:2007/11/22(木) 23:03:52
説明下手ですいません。
まず、msys*.exeが無いので困ったのですが、msysCORE-1.0.11-2007.01.19-1.tar.bz2
を入れたところ、shellの起動が可能になりました。
その後、make install出来る環境が出来たのですが、入れたはずのbinaryが無かったり
エラーを吐きまくったりしたのでmount情報を見たところ、/usr が / にmountされていて、
pathの整合性が取れていない状態になって今に至ります。
mountの出力は>>291さんと同じような感じです。

C:\DOCUME~1\hara\LOCALS~1\Temp on /tmp type user (binmode,noumount)
c:\msys\mingw on /mingw type user (binmode)
c:\tools on /usr/local type user (binmode)
C:\msys on / type user (binmode,noumount)
C:\msys on /usr type user (binmode,noumount)
c: on /c type user (binmode,noumount)
d: on /d type user (binmode,noumount)
z: on /z type user (binmode,noumount)

これがおかしいと思うのですが。cd /usrとしても/に戻ってきてしまいます。
> C:\msys on / type user (binmode,noumount)
> C:\msys on /usr type user (binmode,noumount)

win上のc:\msys\usr\binと、shell上の/usr/binが別の場所を指してしまいます。
c:\msys\usr\binにはcvs.exeやmake.exe,msys-z.dllが入っていてshell上でcvs
が実行出来ない状態です。

win上のc:\msysが、/ だと思っていたので、ここでお手上げになりました。c:\msys
は / なのでしょうか?/usrなのでしょうか?

293 :デフォルトの名無しさん:2007/11/23(金) 00:34:45
普通に置いてあるだろ…
http://downloads.sourceforge.net/mingw/MSYS-1.0.10.exe

294 :デフォルトの名無しさん:2007/11/23(金) 00:35:10
んーと msys だと /usr も / も msys にマウントされるみたいなのよ
だから /usr/bin は /usr の下つまり msys の下だから msys\bin になる
違和感を覚えるけど
まあそういうものみたいだと割り切ってるけど

295 :デフォルトの名無しさん:2007/11/23(金) 10:37:12
質問ですが、MinGWで関数名の最後に@XXがついていないDLLを使用するにはどうすればよろしいでしょうか?
@XXのないDLLを作成するのは-kオプションでできますが、それをMinGWから利用しようとするとundefined referenceと出てしまいます。
DLLをコンパイルするときに-kオプションをつけなければ難なく呼び出せます。
呼び出し規約はstdcallです。IDEはDev-C++を使っています。
どうしても@XX以降をなしにしたいです。

296 :295:2007/11/23(金) 14:29:52
解決しました。
モジュール定義ファイルに@XXつきの関数を列挙してそれを元にdlltoolしたところ問題なくできました。

297 :289:2007/11/24(土) 00:55:18
反応遅くてすいません。さすがに会社から書き込みはしないようにしてるので。

>>293
すみません。1.1.11は正式リリースでは無いんですね。1.1.10を入れれば何も
問題は無かったようで。

>>294
環境が落ち着いたらsrcからbuildで/binにインストールされますが、最初に
幾つかbinaryでwinからインストールした時には。c:\msys\usr\binにコピー
していたので混乱しました。入っているはずのperlが無いとかzlibが無いとか
言われ、面倒なのでwinから見たc:\msys\usr以下を全てc'\msysへ移動さ
せました。これで今のところ問題は出なくなったのですが、/bin=/usr/binは、
やはり違和感有りますね。別途mountしないと、/usr/localがc:\msys\local
になるので、やはり直せるもので有れば直したいところです>mount情報。

298 :デフォルトの名無しさん:2007/11/24(土) 06:30:46
>入っているはずのperlが無いとか〜
以下
チラシの裏に書け。

299 :デフォルトの名無しさん:2007/11/25(日) 15:20:07
MinGWをコンパネのプログラムの追加と削除でアンインストール(MSYS含む)
したんだけど、フォルダとその中身が消えね。
誰か正しいアンインストールの方法おしえテルミー。
レジストリもなんかいじってんのかな?

300 :デフォルトの名無しさん:2007/11/25(日) 16:05:29
フォルダとその中身を消せばいいんじゃね?

301 :デフォルトの名無しさん:2007/11/25(日) 16:14:10
レジストリに何か残ってたらまずいんだけど。。。

302 :デフォルトの名無しさん:2007/11/25(日) 16:35:03
OS再インストールすればいいんじゃね?w

303 :デフォルトの名無しさん:2007/11/25(日) 21:54:35
Vistaにcygwin入れたんだけど、マウスでドラッグして文字列選択する場合
、いちいち[編集(E)]→[範囲指定(K)]してからじゃないと選択できないんだけど
2000でやってたときは、何もしなくも選択できたのに
何とかならんでしょうか?

304 :デフォルトの名無しさん:2007/11/25(日) 22:21:17
プロパティで簡易編集モードをONに

305 :デフォルトの名無しさん:2007/11/25(日) 22:29:50
>>304
できた、ありがとう、助かったよ

306 :本田:2007/11/26(月) 00:32:24
HX DOS Extender
http://www.japheth.de/HX.html
Many development environments which support creating Win32 console applications are compatible with HX, among them are:

* Open Watcom C++
* Digital Mars C++
* MinGW (uses GCC)
* CygWin (uses GCC)
* MS Visual C++, including the free version of MS Visual C++ Toolkit 2003
* Borland C++, including the free version of C++ Builder Command Line Tools
* LADSoft CC386
* Pelles C
* LCC-Win32 (C compiler)
* Borland Delphi
* Free Pascal (Win32)
* Pascal Pro
* Virtual Pascal (Win32)
* FreeBasic (Win32)
* PowerBasic
* MicroFocus Object Cobol
* XDS Modula II
* MASM, TASM, POASM, WASM, FASM, LZASM, NASM, GOASM, ...

307 :デフォルトの名無しさん:2007/11/26(月) 04:40:35
do sex tender か
いやらしいな

308 :デフォルトの名無しさん:2007/11/26(月) 15:11:04
However, as I mentioned above, the -mno-cygwin parameter is going to be
phased out. Primarily because people think it does something it
doesn't, and that leads to way too many support requests on the cygwin
mailing list:
Q: My unix app compiles on cygwin. Now I want to make a version that
doesn't use cygwin, so all I need to do is say -mno-cygwin, right?
A: Wrong...you're still making posix calls...
Q: you guys suck!
A: #!@%!



309 :デフォルトの名無しさん:2007/11/26(月) 15:11:58
部分文字列一致でサクサクパッケージを選択したい.

310 :デフォルトの名無しさん:2007/11/27(火) 00:44:48
僕のcygwin環境だと、ls-lすると、例えば、以下のように表示されるですけど
ここでファイル属性の最後の'+'って何の属性でしょうか?


----------+ 1 xxxxxx None 333402 Aug 9 2005 loop.c

311 :デフォルトの名無しさん:2007/11/27(火) 00:55:33
acl で内科医

312 :デフォルトの名無しさん:2007/11/27(火) 01:22:24
>>311
勉強になりました、ありがとうございます。

313 :デフォルトの名無しさん:2007/11/27(火) 18:43:33
GCCを用いた統合開発環境(IDE)を作ろうかなって思いついたんだけど、
MinGWのGCCってGPLだから、その利用を前提にしたIDEもGPLに従わんといかんのかな?
BSDライセンスとかソースを公開しないでいいGCCってあるの?

314 :デフォルトの名無しさん:2007/11/27(火) 19:58:25
ボーランドのビルダーXとかあったけど

315 :デフォルトの名無しさん:2007/11/27(火) 20:12:50
IDEの動作にGCCが必須ならGPLになるかもしれんけど、
そういうわけではないだろうから問題ないと思う

316 :デフォルトの名無しさん:2007/11/27(火) 21:27:22
>>313
gccじゃないがpccとかBSD界隈では注目されてるね

子プロセスとして起動する程度ならGPLの影響はないけど
ソースレベルで利用するの?

317 :デフォルトの名無しさん:2007/11/27(火) 22:09:27
Eclipse+CDTを使えばいいじゃない。

318 :デフォルトの名無しさん:2007/11/27(火) 22:29:12
既にあるじゃん、って話なら他にも腐るほどあるじゃない。

319 :デフォルトの名無しさん:2007/11/29(木) 02:35:33
>>313
リンクしたりしなければGPLに感染したりしない.
#コマンドを呼んで感染するならシェルはみんなGPLだな…

320 :デフォルトの名無しさん:2007/11/29(木) 09:14:53
CC:
LDLIBS = -l/usr/X11R6/include -L/usr/X11R6/lib -lGLU -lGL -lXmu -lXi -lXext -lX11 -lm
.c:
$(CC) init2.c $(LDLIBS) -o init2
というMakeFileを使用して

make init2

を実行したのですが、以下のような表示が出力されて実行ファイルが作成できません。
どんな原因なのでしょうか?

$ make init2
cc init2.c -l/usr/X11R6/include -L/usr/X11R6/lib -lGLU -lGL -lXmu -lXi -lXext -l
X11 -lm -o init2
init2.c:68:2: warning: no newline at end of file
/usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: cannot find
-l/usr/X11R6/include
collect2: ld returned 1 exit status
make: *** [init2] Error 1

321 :デフォルトの名無しさん:2007/11/29(木) 09:44:18
cannot find -l/usr/X11R6/includeってちゃんと理由書いてあるだろ。

322 :デフォルトの名無しさん:2007/11/29(木) 11:08:08
本当は -I/usr/X11R6/include (小文字の L ではなく大文字の i)
にしたかったんだろうな


323 :デフォルトの名無しさん:2007/11/30(金) 11:21:38
makeしたときにでるNothing to be doneってのだけを消すことはできませんか?
実際にコンパイルしている様子は表示してほしいのですが
Nothing to be doneはうっとおしいので、なにもすることがなければ
静かに終わってほしいのです。
make -sってやるとなにも言わなくなってしまう…

324 :デフォルトの名無しさん:2007/11/30(金) 12:00:08
×うっとおしい
○うっとうしい

325 :デフォルトの名無しさん:2007/11/30(金) 13:12:23
>>323
#!/bin/sh -f
make $*|grep -v 'Nothing to be done'

326 :デフォルトの名無しさん:2007/12/02(日) 01:31:53
>>325
もう少しがんばりましょう

> Nothing to be doneってのだけを消すことはできませんか?

327 :デフォルトの名無しさん:2007/12/02(日) 07:34:35
unixコマンド全般についての質問は板違いなんで他あたってくれ

328 :デフォルトの名無しさん:2007/12/13(木) 22:00:22
..とか~とかカレントディレクトリからの相対パスとかを正規化して絶対パスにしくれるステキ関数ありますか?
/usr/local/suteki.exeに実行ファイルがあるとして
suteki("aaa")  は /usr/local/aaa
suteki("../aaa") は /usr/aaa
にしてくれる関数を探してます

329 :デフォルトの名無しさん:2007/12/13(木) 23:10:00
>>328 glob.h

330 :328:2007/12/14(金) 00:33:08
>>329
GLOB_TILDEを使うとホームディレクトリは展開してくれるのですが.とか..を展開してくれません><

331 :デフォルトの名無しさん:2007/12/14(金) 00:48:57
realpathでいいじゃん

332 :328:2007/12/14(金) 01:38:32
>>331
おおおお まさしくこれです
ありがとうございます

333 :デフォルトの名無しさん:2007/12/14(金) 17:12:16
これでx−window動かしたいんですけど
手順教えてください。

334 :デフォルトの名無しさん:2007/12/14(金) 17:18:36
板違いになるから
Windows板のCygwinスレか
http://pc11.2ch.net/test/read.cgi/win/1175419995/l50
Unix板のCygwinスレでやってくれ
http://pc11.2ch.net/test/read.cgi/unix/1184677144/l50

335 :デフォルトの名無しさん:2007/12/14(金) 17:36:12
すみませんでした

336 :デフォルトの名無しさん:2007/12/18(火) 13:44:38
http://www.mingw.org/MinGWiki/index.php/mingw%20hosted%20cross%20compiler
を参考にしてクロスコンパイラを生成しようとしていますが、問題が2つ出てきました。

環境はbuild-system = host-system = i386-pc-mingw32でtarget-system = arm-unknwon-elf (arm7tdmi)です。

1.本当に成功したのかわからない(Build and installing the c compiler)
サイトにはmkfixinc.shをi?86-*-mingw32*からi?86-*-armにしろと書いてありましたが、
fixincでmakeエラーになったのでarm-*-elf*に変更してやったらmake installまで成功しました。
しかし、インストール先のフォルダを見ると直下のincludeフォルダが空になっています。
fixincはどうやら、includeファイルを生成するもののようなのですが、これは成功なのでしょうか?

以下スクリプトを一部書き換えたところです。
$SRCDIR/configure \
--with-gcc --with-gnu-ld --with-gnu-as --host=mingw32 --target=arm-elf --with-cpu=arm7tdmi
-with-newlib --prefix=$prefix --enable-threads --disable-nls --enable-languages=c,c++
--disable-win32-registry --disable-shared --enable-sjlj-exceptions --enable-libgcj
--disable-java-awt --without-x --disable-libgcj-debug --enable-interpreter
--enable-hash-synchronization --enable-libstdcxx-debug 2>&1 | tee
gcc_configure.log

make all-gcc CFLAGS="-O2 -pipe" CXXFLAGS="-O2 -pipe" LDFLAGS=-s | tee
make-c-only.log 2>&1

成功するがインストール先フォルダ直下のincludeフォルダは空になっている。

2は次をご覧ください。

337 :デフォルトの名無しさん:2007/12/18(火) 13:49:41
2.newlibのmakeが失敗する
これも>>336で言ったサイト(Building and installing newlib)を参考にしています。
そのシェルスクリプトをそのまま実行しました。
しかしmakeでエラーになってしまいます。
make[3]: Entering directory
`/home/(UserName)/build/arm-elf/ARM7TDMI/newlib/etc'
/C/msys/1.0/home/(UserName)/newlib-1.15.0/missing
makeinfo --split-size=5000000 --split-size=5000000 --no-split -I/C/msys/1.0/home/(UserName)/newlib-1.15.0/etc
-o standards.info
/C/msys/1.0/home/(UserName)/newlib-1.15.0/etc/standards.texi
WARNING: `makeinfo' is missing on your system. You should only need it if
you modified a `.texi' or `.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious
call might also be the consequence of using a buggy `make' (AIX,
DU, IRIX). You might want to install the `Texinfo' package or
the `GNU make' package. Grab either from any GNU archive site.
make[3]: *** [standards.info] Error 1
make[3]: Leaving directory
`/home/(UserName)/build/arm-elf/ARM7TDMI/newlib/etc'
make[2]: *** [info] Error 1
make[2]: Leaving directory
`/home/(UserName)/build/arm-elf/ARM7TDMI/newlib/etc'
make[1]: *** [all-etc] Error 2
make[1]: Leaving directory `/home/(UserName)/build/arm-elf/ARM7TDMI/newlib'
make: *** [all] Error 2

WARNINGに書かれているようにTexInfoを
http://sourceforge.net/project/showfiles.php?group_id=2435
からダウンロードしてインストールしても変わりませんでした。どうかよろしくお願いします。

338 :デフォルトの名無しさん:2007/12/18(火) 15:25:46
http://sourceforge.net/project/showfiles.php?group_id=114505&package_id=124206&release_id=434286
DS用のビルドスクリプトだけど
多分、いや確実に参考に出来る

339 :sage:2007/12/18(火) 16:43:26
>>328さん、ありがとうございます。早速試してみたいと思います。

340 :sage:2007/12/18(火) 16:43:54
>>338さんでした。。。

341 :337:2007/12/19(水) 11:41:12
>>338さんから教えていただいたシェルスクリプトで、c compilerのインストールまでは
完了したのですが、newlibのmakeで>>337と同じくエラーになってしまいました。
newlibをMinGW(WinXP)のmakeの方法を知ってらっしゃる方、よろしくお願いします。

342 :デフォルトの名無しさん:2007/12/19(水) 17:18:00
dllからのC++例外をexe側で捕捉できないでしかもhangupするのは仕様ですか?
dllとexeはともにcygwinのg++で作ったものです

ちなみに例外のthrowとcatchがexeで完結してるならちゃんと捕捉できます

343 :デフォルトの名無しさん:2007/12/21(金) 22:46:12
>342
これが Cygwin にも適用されるかどうかはわからないけど
ttp://gcc.gnu.org/faq.html#dso

344 :デフォルトの名無しさん:2007/12/22(土) 10:35:01
MinGW使ったんだけどsys/ioctl.hとかのヘッダーがないけど、
これってMinGWがまだ不完全だからってこと?
それともどっかに落ちてるのを適当に拾って入れればいいの?

345 :デフォルトの名無しさん:2007/12/22(土) 11:49:24
wikiから
>MinGWの名称はMinimalist GNU for Windows(Windowsのための最小限度の
>GNUの意)を表わす。
>CygwinはLinuxや他のUNIXシステムに見られるような、Windows上に完全な
>POSIX層を提供することを目標にしており、互換性のために必要であれば性能も
>犠牲にしている。一方でMinGWはフリーのコンパイラと各種ツールのみを行い、
>性能を重視している。
>MinGWはPOSIX APIを提供していないので、Cygwinでコンパイル可能だが
>MinGWでは可能で無いUnixアプリケーションが存在する。

346 :デフォルトの名無しさん:2007/12/22(土) 20:06:51
つまり、ioctl使いたかったらcygwin使っとけってこと。

347 :デフォルトの名無しさん:2007/12/24(月) 11:04:13
http://sourceforge.net/project/showfiles.php?group_id=2435
SourceForgeのMinGWダウンロードのところのソースファイルをダウンロードして自分でmake installしようとしたんだけど、
makeで必ず失敗する。
WinXPでMinGW環境だとだめってこと?
なんでMinGWのダウンロードのところにあるのにmakeができないの?俺だけ?
i386用のバイナリがあるからそれ使えっていうのもわかるけど、
ちょっとバージョンの新しいのを入れたいからmakeしようとしたら全然だめ。
確認のため、今すでにMinGW版としてあるやつのソースもmakeしたら全然だめ。具体的にはTexInfoね。
これどうゆうこと?

348 :デフォルトの名無しさん:2007/12/24(月) 11:31:14
エラーメッセージが理解できるようになってから来てください

349 :デフォルトの名無しさん:2007/12/24(月) 11:51:51
エラーメッセージくらいわかってるよ。
でもMinGWにはないヘッダーとか使ってるソースがMinGWにあるんだぜ?
しかもバイナリ形式もあるんだぜ?
おかしくない?
それとも俺が何か入れ忘れてるの?

350 :デフォルトの名無しさん:2007/12/24(月) 11:58:02
入れ忘れてんじゃネーの?
makeに必要な環境がなかったらmakeは通らんだろ。

351 :デフォルトの名無しさん:2007/12/24(月) 12:25:24
> でもMinGWにはないヘッダーとか使ってるソースがMinGWにあるんだぜ?

なにも不自然な点は見受けられないんだが

352 :デフォルトの名無しさん:2007/12/24(月) 12:58:36
「環境を構築するための資源」と、「環境を利用するための資源」は違うんだぜ。

353 :デフォルトの名無しさん:2007/12/24(月) 13:07:03
それってどっかからライブラリなりヘッダーなりを調達する必要があるときはあるってこと?
それってMinGW用とかじゃなくて適当なところから持ってきて適当に追加すんの?
具体例とかあるとわかりやすくてうれしいんだが。

354 :デフォルトの名無しさん:2007/12/24(月) 14:34:58
適当ってなんだよ適当って。
MinGW側でパッチが必要なものはMinGW側に置いてあるだろうし、
置いてないものはGNUサイトとかミラーからでも拾って来ればいいだろう常識的に考えて。

355 :デフォルトの名無しさん:2007/12/24(月) 14:52:57
README.devとINSTALL.genericは読んだのか?
configureはちゃんと通ってるのか?
根本的に、スキルが足りないんじゃないのか?

356 :デフォルトの名無しさん:2007/12/24(月) 15:13:53
すまん。もしかしてmsysDVLPRを入れてなかったからなのか?
とりあえずやってみるが、うまくいかなかったらフォローしてくれ。

357 :デフォルトの名無しさん:2007/12/24(月) 17:24:42
http://www.mingw.org/MinGWiki/index.php/MSYSBuildEnvironment
とか読んでみたんだが、よくわからん。
とりあえずmsys直下にmsysDVLPRを解凍していれてやればいいみたいなんだが。
このmsysDVLPRもgcc-libの中にexeがあったりして、これでいいのかとよくわかんない。
それと.profileを編集するようなんだが、これもよくわからん。
くれくれ君ですまないが、誰か知ってる人正しいmsysDVLPRの入れ方とかmsysBuild環境の作り方教えテルミー。

358 :デフォルトの名無しさん:2007/12/24(月) 17:26:34
それと適当に入れてbashのmakeをINSTALL.MSYSにならってしてみたんだが、cc1.exeが-fnative-structというオプションがわからんとか言ってエラーになった。
やっぱり環境構築がおかしいんだろうか。詳しい人たのむ。

359 :デフォルトの名無しさん:2007/12/24(月) 19:17:58
あのさ、一々アゲて「俺、ソースmake初挑戦日記」書くの止めてくんないかな。
そういうのは、mixiでやってくれ。冬休みに入ったのはわかったから。

360 :デフォルトの名無しさん:2007/12/25(火) 11:09:03
>>347

TexInfoのロケールの問題で引っかかってるんじゃない?
以前俺がBuildしたときは、それでエラーになってた。

そんときは LC_ALL=C でBuildしたら通った。


361 :デフォルトの名無しさん:2007/12/25(火) 12:12:18
>>360
すまん。今MinGW/MSYS環境を作り直してるところでそのレベルに行ってない。
昨日適当な環境でTexInfo4.9をmakeしてみたんだがinclude/pwd.hの65行目がおかしいとかいって終了した。
今は正しい環境づくりのため、>>357であげたサイトを調べてる。
正直英語は辛い。訳も半分ぐらいしたが、なんかあやしげ。
msysDVLPRってmsysとmsysDTKをインストールしたあとにそのインストールしたフォルダに入れればいいんだろうか?
それともmsysDVLPRだけでいいんだろうか?
訳してみるとmsysDVLPRだけっぽいんだが、実際としてはmsysインストールしてから追加インストールするものだと思う。
TexInfoとかのビルドが成功した人はどんな風にMSYS環境を作ったのか教えてほしい。

362 :デフォルトの名無しさん:2007/12/25(火) 12:52:23
>>361

基本的にはMSYSとmsysDTK入れただけだな。
あとは msys用bisonとflex入れた程度

mingwはlibiconv入れた



363 :デフォルトの名無しさん:2007/12/25(火) 13:06:24
>>362
環境はWinXP?
俺はMinGW Download pageにあるTexInfo4.11すらビルド失敗。

364 :デフォルトの名無しさん:2007/12/25(火) 14:48:20
mingwのgccのmingw-local patchesって何処にあるの?

365 :デフォルトの名無しさん:2007/12/25(火) 15:40:08
>>363

うん。 WinXP

TexInfoのBuildは、いろいろ入れないとできなかった気がするんで、
うちはバイナリをダウンロードしてきて入れた。

TexInfo入れずに configureしてBuildできなかったっけ?
このTexInfo関係はドキュメント作成するのに必要なだけなんでスキップしても
問題ないんだけどね。


366 :デフォルトの名無しさん:2007/12/25(火) 16:04:10
>>365
うん。俺もドキュメントだから関係ないと思ったけど、
やっぱりみんなが(外人とか)当たり前にビルドしてるのに
できないのが、なんか納得いかなくてな。
それにTexInfoのバージョンあげないと、他のツールをビルドするときにMakefileとかを
強制的に書き換えないといけないのが、なんか嫌だったんだ。
とりあえず今はbashのMinGW Download pageにおいてあるやつをビルドしようと思ってるんだが、
INSTALL.MSYSとか読むと
http://www.mingw.org/MinGWiki/index.php/MSYSBuildEnvironment
が必要らしんだな。でも英語得意じゃないからそれっぽくやってみてもうまくいかないし。
正直もうお手上げ状態だ。英語をちゃんと理解できればいいんだがな。愚痴っぽくなってすまん。

367 :デフォルトの名無しさん:2007/12/25(火) 16:21:08
mingwにあるtexinfo-4.11は
adaのgnat_ugn__unw.texiでエラーでるんでtexinfo-4.8使ってるんだが
これは正常なの?

368 :デフォルトの名無しさん:2007/12/26(水) 14:17:32
誰か頼むからWinXPでMinGW5.13とMSYS1.0.10とmsysDTK-1.0.1入れてbash3.1のソースとか
をビルドできるか試してくれ。
俺はできないと思う。
msysDVLPRも入れてみたがだめだった。えろい人たのむ。

369 :デフォルトの名無しさん:2007/12/26(水) 14:41:02
とりあえずあきらめて悟りを開くかCygwinに乗り換えるかしれ。
立てよ国民!gcc -mno-cygwin!!

370 :デフォルトの名無しさん:2007/12/26(水) 14:59:08
いや俺はあきらめたくない。
mingw-usersとかのメーリングリスト見てるとみんな当たり前にやってんだぜ。
英語が苦手なだけでMinGWを利用できないなんて悔しくてやだ。
でも解決策はわからん。

371 :デフォルトの名無しさん:2007/12/26(水) 15:16:57
どこの中二病患者?

372 :デフォルトの名無しさん:2007/12/26(水) 15:27:33
英語もダメ。スキルもない。出来ないと暴れる。最悪だな。

373 :デフォルトの名無しさん:2007/12/26(水) 15:38:52
>>370
そろそろウザイって言われてることにさっさと気づけよ、邪魔なんだよ。

374 :デフォルトの名無しさん:2007/12/26(水) 15:54:43
お前らだってできねーんだろ?

375 :デフォルトの名無しさん:2007/12/26(水) 15:55:15
煽っても無駄なのにね

376 :デフォルトの名無しさん:2007/12/26(水) 16:02:33
>>368

なんでUNIX系シェルとか依存性の強い物をBuildしようとするかな・・・
たぶんMingw用のglibcヘッダとかライブラリが必要だと思うよ。

たしかどっかにあったはず。

あと binutilとかバグがあるバージョンもあるから、そのあたりも変えてみたら。
binutilは上記のものとかなくてもbuildできるはず。


377 :デフォルトの名無しさん:2007/12/26(水) 17:04:33
ごめんな。感情的になってしまった。
確かに俺は頭悪いが、>>368みたいに親切なやつもいるから
またがんばるよ。

378 :デフォルトの名無しさん:2007/12/26(水) 17:33:01
いみふめい

379 :デフォルトの名無しさん:2007/12/26(水) 17:47:15
>>368
暇だからビルドしてみた。
msysDVLPRとbisonとflexを追加。
http://www.mingw.org/MinGWiki/index.php/bug-termios_h
このバグでちょっとハマった。
おしまい。

380 :デフォルトの名無しさん:2007/12/26(水) 17:51:13
っていうかここに全部書いてあった。
http://www.mingw.org/MinGWiki/index.php/Build%20bash
このページすら読めないようならまず英語の勉強した方がいい。

381 :デフォルトの名無しさん:2007/12/26(水) 18:10:50
おお、みんなありがd。
>>379
俺もこれはやった。msys/includeじゃなくてmsys/lib/gcc-lib/...の方をこれで直して少し進んだんだが、
そのあとやっぱり失敗した。
>>380
俺もそれは読んだよ。gnuwin32のflexとbisonいれてtermiosも>>379のように修正。
だがだめだった。
http://www.mingw.org/MinGWiki/index.php/MSYSBuildEnvironment
ここがちゃんと理解できてないからなのかだめだ。

>>376
glibcのmingwバージョン探してるが、みつからない。


382 :デフォルトの名無しさん:2007/12/26(水) 18:27:51
>>379
どのツールのビルドした?
あとmsysDVLPRだが、以下に書く手順であってるか知りたい。
MinGW5.13、msys1.10.11、msysDTKをインストーラからインストール。
msysDVLPRをtar -zxvf msysDVLPR-1.0.0-alpha-1.tar.gzでmsys/1.0直下から展開。
それと.profileを
if [ $MSYSTEM == MINGW32 ]; then
export PATH=".:/usr/local/bin:/bin:$PATH"
else
export PATH=".:/msys/bin:/usr/local/bin:/bin:$PATH"
fi
といじって、そのごmsysdvlprシェルを起動して白いmsysコンソールからビルド。
違うところがあったら教えてくれ。

383 :デフォルトの名無しさん:2007/12/26(水) 19:05:38
はっきり言ってチョーウザイ。
日記はmixiでやれって言ってんの。
おまいには無理、それでいいだろ。

384 :デフォルトの名無しさん:2007/12/27(木) 09:57:36
>>382

念のために書いておくけど、ちゃんと

./configure

してからmakeしてるよな?
まぁ基本的なことだから大丈夫だとは思うが。

それから msysDVLPRを MinGW5.13の上に上書きするのはちとマズいかもな。
msysDVLPRにも gcc及びライブラリが入ってるから。

385 :デフォルトの名無しさん:2007/12/27(木) 10:16:22
もちコース。./configure、make、make installぐらいは知ってるぜ。
msysDVLPRはmsysの方に入れてるんだがこれって間違い?
MinGWiki読むとmsysの方に解凍してるみたいだが。

386 :デフォルトの名無しさん:2007/12/27(木) 10:18:12
でもbashのビルドはINSTALL.MSYSにしたがって、一応msysrlsbldっていうスクリプトやってるけどな。
中身は結局configure、makeみたいな感じだ。

387 :デフォルトの名無しさん:2007/12/28(金) 23:45:45
Mingwでソケットを使おうとしたら使えない!
インクルードファイルがみあたらないのですがなんででしょう・・・。

388 :デフォルトの名無しさん:2007/12/29(土) 01:14:53
MinGWなんだからwinsock使えよ…

389 :デフォルトの名無しさん:2007/12/30(日) 02:43:17
基本的過ぎる質問だと思うのですが
検索してもわからなかったので書き込ませて頂きます

cygwinのgccを使ってC,やC++の開発を行うときのライブラリは
やはりcygwinのそれっぽいのをとってくるんでしょうか?

それとも別のIDEからライブラリ部分を持ってきたりするんでしょうか?

windows.h 関係が欲しいのですが
通常はどこで手に入れるものなんでしょう?

390 :デフォルトの名無しさん:2007/12/30(日) 02:53:46
w32api

391 :デフォルトの名無しさん:2007/12/30(日) 08:17:47
>>390
ありがとうございます。適当に必要なものとどこからでも良いので
とってくればOKなんでしょうか?

とりあえずcppunitとw32api(3.9-1)をcygwinのsetup.exeからインストールしたんですが
cygwin\lib\w32api 配下に windows.h が存在せず
どこから手に入れればよいのか困っています

「普通はここから持ってくる」そんな場所はありますか?

392 :デフォルトの名無しさん:2007/12/30(日) 08:27:55
どんなオプションを選んだかなんて覚えていないけど、
特に何もしなくても<windows.h>をインクルードできるし、
特にライブラリ指定しなくてもWin32 API使えている。

393 :デフォルトの名無しさん:2007/12/30(日) 10:50:40
$ find /usr/include -name windows.h
/usr/include/w32api/windows.h


394 :デフォルトの名無しさん:2007/12/30(日) 11:05:03
>>391はなんでヘッダファイルをlib配下でのみ探したのだろう

395 :389:2007/12/30(日) 17:38:53
>>392
何が違うんでしょうか…? 俺にはさっぱりです
>>393-394
それは>>389がアホだからに他ならないわけで…。
…ありがとうございました
わからなかったのでPSDK入れようとしてました。


結局こんな感じでコンパイルしたら動きました
g++ test.cpp -I/usr/include -I/usr/include/mingw -v

includeされているパスが色々出てきて
それらがどこで設定されてるのかがイマイチわかっていませんが
おいおい調べていくことにします

396 :デフォルトの名無しさん:2007/12/30(日) 17:57:30
>>395
/usr/include と /usr/include/mingw を一緒に使うのはどうかと思う…
ってかこの辺は解り難いとこなんだけど cygwin の gcc には使うlibcに応じて
2つモードがあるんよ.
- cygwinの提供するPOSIX APIを使う通常の cygwin のモード
- POSIX の API を使わずに Win32 API だけを使ってプログラムを書くための MinGW モード
gcc に -mno-cygwin オプションを付けると後者のモードになって /usr/include/mingw
ってのはその場合に使われるヘッダが入ってるのね。なので両方参照する必要はないはずなのよ?
それぞれのメリットやデメリットは…まぁ適当にぐぐってくださいね。

397 :389:2007/12/30(日) 19:07:24
>>396
なるほど解説ありがとうございます。

初めに /usr/include だけを使った所 windows.h が読み込めて
その後に #include <tchar.h> する必要があったので /usr/include/mingw を読み込んでました。
/usr/include/mingw のみ -I すればコンパイルできました。

-mno-cygwin をつけるだけでもOKなのも確認しました。
クロスコンパイルやらなんやらの問題みたいですね。
とりあえず色々眺めてみることにします


398 :デフォルトの名無しさん:2007/12/30(日) 20:04:19
>397
POSIX API を使うつもりがなくいなら -mno-cygwin を付けた方が
cygwin1.dll をリンクしないでいい分ライセンスとかいろいろ楽。
作りたいアプリケーションに応じて選んでくれ。

399 :デフォルトの名無しさん:2007/12/30(日) 20:20:31
POSIX APIを使わないつもりがなくいときはどうしたらいいでしょう。

400 :デフォルトの名無しさん:2007/12/30(日) 20:43:54
gccでデバッグオプション(-g -O0)を付けてコンパイルしたいのですが、
いったいどうやればいいのでしょうか?
いまのところはMakefile.amのINCLUDE変数に'-g -O0'を追加しているのですが、
明らかにおかしいので正しいやりかたを教えていただきたいのです。
環境はubuntu + gcc + autotoolsです。

(Linux板も探したのですが、適当なスレが見つけられなかったため
こちらに質問させていただきます)

401 :デフォルトの名無しさん:2007/12/30(日) 21:02:09
大抵のMakefileなら、CFLAGS辺りに書けばよさそうだが。

402 :デフォルトの名無しさん:2007/12/30(日) 21:35:22
autotool なら環境変数から引っ張ってきてるよね
CFLAGS="$CFLAGS -g -O0" ./configure
俺はこうして使ってるけど

403 :デフォルトの名無しさん:2007/12/30(日) 21:35:26
>>400
この場合 Autoconf/Automake/Libtool スレあたりが適切かな…?

404 :デフォルトの名無しさん:2007/12/30(日) 21:49:40
>>401
そうですよね

>>402
CFLAGS="$CFLAGS -g -O0" ./configure
のやりかたでできました。
ありがとうございました。

>>403
すいません。次から気を付けたいと思います。

405 :デフォルトの名無しさん:2007/12/31(月) 02:00:32
よくあるのは configure に --enable-debug 付けると
デバッグオプションが付くように作ってあるとかかなぁ

406 :デフォルトの名無しさん:2008/01/01(火) 20:05:29
wxWidgetsをリンクするために
'wx-config --cppflags'の出力されたものを
作成ファイルのMakefile.am内オプションに追加したいのですが
いったいどうやればいいのですか?

何度か同じことをする必要があるので
共通の変数か何かに設定できるとうれしいのですが。
(他のスレでも聞いたのですが、全く反応が無いのでマルポしています)

407 :デフォルトの名無しさん:2008/01/01(火) 20:42:20
>>406
wc-config の出力結果を Makefile.am に書いたら意味ないだろw
configure.in を書いて configure 実行時に wc-config を実行してその結果
がMakefileの変数CXXFLAGSやLIBSに展開されるようにしてやればいいんじゃね?
あと autotools の使い方を基本から勉強しなおしてくれ。
そもそも autotoolize する必要があるのかってところから見直すといいかもしれん。

408 :407:2008/01/01(火) 20:43:27
wc-configってなんだ… wx-config ね

409 :デフォルトの名無しさん:2008/01/01(火) 23:42:35
>407
ありがとうございます。

> Makefileの変数CXXFLAGSやLIBSに展開されるようにして
これはいったいどうやればいいのでしょうか?
configure.inに
 WXCXXFLAGS = 'wx-config --cppflags'
 AC_SUBST(WXCXXFLAGS)
とやってもなしのつぶてで全く効果がありません。

あとautotoolsに関してなのですが、自分はもともとVCを使っていて
linuxでコンパイルする必要が出てきたので最近になってautotoolsを使い始めました。
なので残念ながらautotoolsをほとんど知りません。

これを使っているのは、いろいろなプロジェクトで
configureファイルを見かけるからなのですが
これを使わないとしたら他にどのようなツールが考えられますか?
自分はmakeをそのまま使うかbjamなどが思いつくのですが、
どれを選ぶにしろ大変そうで困っています。
ある程度ポータブルで分かり易いツールであればなんでもいいのですが、
良さそうなものがあれば紹介して頂きたいくらいです。

ちなみに、このプロジェクトのコンパイルに必要な手順は
1、プロジェクトに添付された(小さめの)外部ライブラリのソースからスタティックライブラリを生成
  (この際、wxWidgetsが必要になるものもあります)
2、それらとライブラリのソースから一つのダイナミックライブラリを生成
3、最後に、メインプログラム(というかテストプログラム)をDLLをリンクして生成
と少し複雑です。

410 :デフォルトの名無しさん:2008/01/02(水) 01:29:31
他のスレでもって、wxスレでもautoconfスレでも見かけなかったなぁ
まぁ別にどこでもいいんだけど

411 :デフォルトの名無しさん:2008/01/02(水) 09:11:52
探したら http://pc11.2ch.net/test/read.cgi/tech/1148393695/ にいた…
>>409
基本的に広い範囲で移植性を確保しようと思ったら大変なのはどのツール使っても同じなの
はその通りなんだけど、どの程度の移植性が欲しいのかってところかな?
autotools使うなら本でも読んでじっくり取り組んでくれ。
- http://www.amazon.co.jp/Autoconf-Automake-Libtool-Gary-Vaughan/dp/4274064115/
あまり出来のいい本でもないけど…

412 :デフォルトの名無しさん:2008/01/02(水) 09:30:35
>>411
基本的には
Windows(cygwin), Linux, FreeBSD, Mac
あたりで使えれば嬉しいのですが。
あまりマイナーな環境に対応するのは大変ですしね。
いい環境が見つかるまでは、マニュアルと本でがんばりたいと思います。

413 :デフォルトの名無しさん:2008/01/02(水) 10:20:29
WXCXXFLAGS="`wx-config --cppflags`"
・・・ではないのかな 試してないけど
俺なら AC_PATH_PROG で wx-config あるかチェックするかな

414 :デフォルトの名無しさん:2008/01/02(水) 15:12:07
>>413
ありがとうございます。ただ、それでもダメでした。
(>>409のWXCXXFLAGSはWXCPPFLAGSの間違いでした。すみません)

Makefile.inを見ると変数自体はちゃんと出力されているのですが
その中身がどうも空のようです。
Makefile.amではどちらか分からないので
一応@WXCPPFLAGS@と$(WXCPPFLAGS)の両方の形式で出力させています。

415 :414:2008/01/02(水) 16:27:37
テストプログラムを作成しました。
原因の分かる方いましたら、是非教えてください。

http://www.uploda.org/uporg1184897.tar.html

416 :デフォルトの名無しさん:2008/01/02(水) 17:00:06
>>415
configure.ac の中身
WXCPPFLAGS=`wx-config --cppflags`
- 変数と'='の間にスペースは入れない
- 展開はバッククォート
普段UNIXライクOS使ってないならアレだがシェルスクリプトの基本を勉強する必要があるかも

417 :デフォルトの名無しさん:2008/01/02(水) 17:02:34
>>415
そうそう Makefile.am の方は @WXCPPFLAGS@ でよくて $(WXCPPFLAGS) はいらない

418 :デフォルトの名無しさん:2008/01/02(水) 22:37:44
>>416-417
できました!
やっとコンパイルに取りかかれそうです。
ありがとうございました。

419 :デフォルトの名無しさん:2008/01/04(金) 07:52:12
>>418
Net BeansIDE V6 R3を実装し、C/C++コンポーネントのアドイン指定をし、
Cygwin言語処系gmake,g++,gcc等をインストールし、 Net BeansIDEを起動
することにより、自動でビルド環境が出来るじゃん。
まあ、autoconf automake の勉強するつもりならこんなやり方は為にならんが。
まあ、学生さんだったら時間あって勉強がてらハンドでやるのも良いんだろうけどw
よく考えたら、正月だったのか。じゃあ時間作れそうだな。




420 :419:2008/01/04(金) 07:58:25
こっちの方が正確だったな
http://ja.netbeans.org/
Net BeansIDE V6 R3→表記ミス

組込系なら制約が有るかもしれんな。
ま、その辺り臨機応変にな。

人間がやるより早いぞ。

421 :デフォルトの名無しさん:2008/01/04(金) 09:54:43
>>419
本人はVC使ってて他の環境(LinuxやFreeBSD)で容易にコンパイルできるように
autotoolize してるって書いてあるだろ…
そこで Cygwin + NetBeans 勧めても…

422 :デフォルトの名無しさん:2008/01/04(金) 21:04:54
>>421
奨めないとPGままだろ?
ソフトウェア開発技術者とPGは違うぞ。
コンポーネントプログラミングの妙技も味わって貰わないとなw

423 :デフォルトの名無しさん:2008/01/04(金) 21:21:17
>>421
autotoolizeって何?

スペルミスするくらいならオーソライズって書けよw


424 :デフォルトの名無しさん:2008/01/04(金) 21:25:18
>>423
autoconf/automake 使って
./configure && make all && make install
って, やればインストール出来るようになってる
という意味ではないのか?


425 :デフォルトの名無しさん:2008/01/04(金) 21:45:50
>>424
個人の造語を空想で断定しては恥かくだろう?
俺はレスの文脈からオーソライズと認識したまで。
何ならそのスペルで英和辞典なりコンピュータ用語事典を
探して見たら良い。
一生掛かっても見っからないことは断言できる。
ま、そんなチンケな話で揉めても仕方ないのでここで
ペンを置く。


426 :デフォルトの名無しさん:2008/01/04(金) 22:07:03
うるせーよググれカス

427 :デフォルトの名無しさん:2008/01/04(金) 22:08:42
>>425
レスの文脈からautotool-izeとしか認識できなかったがな。
オーソライズってのはauthorizeのことか?だとしても意味が通らんな
もっと文脈読まないと恥かくぞ?

428 :デフォルトの名無しさん:2008/01/04(金) 22:11:01
>>417
その情報は古い。
Makefile.amでは、$(WXCPPFLAGS)と書くのが今風です。
Makefile.inでよきに計らってくれるので。

そうすると、$ make WXCPPFLAGS="-I/anotherdir/include"
なんかが使えます。

429 :デフォルトの名無しさん:2008/01/04(金) 22:13:26
>>427
ふふ、暇なオジンやな?
本件にレスして道ズレにしようちゅう魂胆かなw
まあ、おまえが口べただと言うことは良く解った。ググった上でのレスだw>>426


430 :デフォルトの名無しさん:2008/01/04(金) 22:22:17
冬休み学生のへたくそな煽りにわざわざ釣られるなよ…

431 :デフォルトの名無しさん:2008/01/04(金) 23:13:08
>>423
これほど「プギャー(AAry」を貼りたくなったレスは初めて見た希ガス。

432 :デフォルトの名無しさん:2008/01/05(土) 01:06:06
世代間ギャップだろw

433 :デフォルトの名無しさん:2008/01/05(土) 01:14:29
>>425
この辺を理解して出直してこい
http://www.catb.org/~esr/jargon/html/construction.html


434 :デフォルトの名無しさん:2008/01/05(土) 02:27:02
↑この粘着馬鹿きも

435 :デフォルトの名無しさん:2008/01/05(土) 08:05:03
お前も十分粘着だよ。

436 :デフォルトの名無しさん:2008/01/05(土) 10:25:14
ageてる人はわかりやすくて良いな

437 :デフォルトの名無しさん:2008/01/05(土) 13:13:44
4+3=7

438 :デフォルトの名無しさん:2008/01/05(土) 17:53:22
新年から運営バイト乙
さくらも必要だからな2ちゃんにはw

車 寅二郎

439 :デフォルトの名無しさん:2008/01/05(土) 18:17:23
To you cotton I dead no death she.

440 :デフォルトの名無しさん:2008/01/06(日) 10:13:59
最近気づいたんだけど、速いCPUでCygwinのgcc使ってコンパイルするより、
遅いCPUでLinuxのgcc使ってコンパイルしたほうが速いのね・・・
体感的にはCygwin@X2 3800+ < Linux@CelD 2.4GHz, Cygwin@CelD 2.4GHz < Linux@P3 900MHzくらい
-pipeつけたらちょっとマシになったけど、それでもやっと同じくらい。
やっぱstat(2)とかが効いてるのかね?

441 :デフォルトの名無しさん:2008/01/06(日) 10:39:27
Windowsはプロセスの起動が遅いうえに
Cygwinでエミュレートまでしてるからかなり遅くなると思うよ

442 :デフォルトの名無しさん:2008/01/06(日) 11:50:41
cygwinと比較してる時点でバイアス満載。

443 :デフォルトの名無しさん:2008/01/06(日) 12:14:27
MinGW使え

444 :デフォルトの名無しさん:2008/01/06(日) 12:29:43
普通は、fgetc()をループで回してもfgets()やfread()を使っても(I/O速度で制限されるので)大差ない時間で処理できるが、
cygwinに限っては、fgetc()版は遥かに遅くなってしまうからね。

445 :デフォルトの名無しさん:2008/01/06(日) 15:35:36
なんで?

446 :デフォルトの名無しさん:2008/01/06(日) 18:02:26
エミュレートしているからでしょ。

447 :デフォルトの名無しさん:2008/01/06(日) 18:26:53
それはfgetcが遅くてfreadが遅くない理由にならなくね?

448 :デフォルトの名無しさん:2008/01/06(日) 19:02:11
>>447
なんでそう思う?

449 :デフォルトの名無しさん:2008/01/06(日) 19:13:11
cygwinはファイルの読み書きは特に重いよね。MinGWにすると凄い速くなる。

450 :デフォルトの名無しさん:2008/01/06(日) 19:35:46
>>447
freadも遅いがエミュレート+ループでfgetcが遥かに遅い理由にならなくね?

451 :デフォルトの名無しさん:2008/01/06(日) 20:47:21
fread()一回では、エミュレートのオーバーヘッドは1回分であることが期待できる。
多くても、BUFSIZごとに1回だろう。
fgetc()では、毎回の呼び出しごとにオーバーヘッドが発生する懸念がある。
ungetc()のために毎回余計に読み込まなくてはいけないと言う事情がこれに拍車を掛けるだろう。

452 :デフォルトの名無しさん:2008/01/06(日) 21:18:40
そゆのってオーバーヘッドのかからない層で
バッファリングすると思うんだけど・・・。

453 :デフォルトの名無しさん:2008/01/06(日) 21:21:49
いや、そうじゃないからこそ、cygwinのエミュレーションは問題だといっている。

454 :デフォルトの名無しさん:2008/01/06(日) 22:18:45
MinGWのgccやg++は、標準ヘッダの検索パスをどこで決めているんでしょ?

c:\mingwにインストールしたときはbinのpathを通すだけでコンパイルできたソースが、
j:\!repos\softwares\mingwにインストールしたときはbinのpathを通すだけだと、
no include path in which to search for stdio.hとか言われる。
C_INCLUDE_PATHやCPLUS_INCLUDE_PATHを設定すればいいみたいだけど・・・。


455 :デフォルトの名無しさん:2008/01/06(日) 22:19:31
>>443
MSYSもいっしょに

456 :デフォルトの名無しさん:2008/01/07(月) 03:31:02
>>451
ソースを読んでどこが悪いとか具体的に確信を持って言ってる?
なんか勘違いしてる気が…

457 :デフォルトの名無しさん:2008/01/07(月) 05:35:00
そのへんを計測してみた人どこかにいないかな

458 :デフォルトの名無しさん:2008/01/07(月) 06:23:28
なんかどっかのスレでも書いた気がするけど
俺のVista(HPx64)でMSYSちゃんが上手く動いてくれない

459 :デフォルトの名無しさん:2008/01/07(月) 10:14:15
XPならHomeでもおk

460 :デフォルトの名無しさん:2008/01/07(月) 10:27:17
MSYS1.0.10に1.0.11の何か上書きしたらイケましたわ。

461 :デフォルトの名無しさん:2008/01/07(月) 13:00:45
使いもしないツールを多く含んだメタボ気味なコンパイラ使うより
いいかもね

462 :デフォルトの名無しさん:2008/01/09(水) 00:20:59
少しスレ違いかもしれませんが質問させてください。

環境は、
MinGW 5.1.3
MSYS  1.0.10

自前のC++ソースをビルドしようとすると、
こんな感じのシンボル未定義のメッセージが並んでリンクエラーになります。
foo.cpp:(.gnu.linkonce.t._ZNK11foo16hogeERKSt6vectorIdSaIdEEj+0x14a) : undefined reference to `_cxa_begin_catch'

nmで見るとlibstdc++.aが必要なようですが、-lでばっちり指定しています。
./libstdc++.a:eh_catch.o:00000000 T ___cxa_begin_catch
./libsupc++.a:eh_catch.o:00000000 T ___cxa_begin_catch

何が原因なんでしょう。。打つ手なしっす。

463 :デフォルトの名無しさん:2008/01/09(水) 00:33:27
-lの方が先に指定されていたりはしないよね?

464 :462:2008/01/09(水) 01:08:24
>>463
-lstdc++を一番後ろに置いてます。
not foundが出るわけではないのでライブラリは見つけてるはずなのですが、、
コンパイラのインストールからやり直すべきなのでしょうか?

465 :デフォルトの名無しさん:2008/01/09(水) 01:13:59
g++コマンドでリンクすりゃ、libstdc++を明示する必要はないはずだが。(勝手にリンカに適切なオプション渡してくれる)

466 :デフォルトの名無しさん:2008/01/09(水) 01:31:54
>>465
一度g++に切り替えて試したときもlstdc++を付けたままで、まったく同じエラーが出ました。
早速明日外してやってみます。

467 :デフォルトの名無しさん:2008/01/09(水) 01:52:52
>>462
アンダースコアの数が違うからリンクできるように見えない。
マップファイルとかアセンブリのソースとか確認しないとわかんないね。

468 :デフォルトの名無しさん:2008/01/09(水) 21:12:22
バージョンが合ってないとか

469 :デフォルトの名無しさん:2008/01/10(木) 22:14:59
C/C++の開発環境を整備:MinGWとEclipse CDT
http://builder.japan.zdnet.com/sp/c-programming-language/story/0,3800083430,20364539,00.htm

470 :デフォルトの名無しさん:2008/01/13(日) 16:32:21
UACが有効なVistaでcygwin使うとき、sudoみたいに管理者権限を動的に(必要なときに)与えるようにしたいんです。
ここで間違えないで欲しいのは、実行したユーザーが属するAdministratorsが保有するACL管理下の権限であって、Administratorの強制執行権限ではありません。
引数をコマンドとして実行するだけのプログラムにマニフェストを組み込んでもcygwinから実行するとNo permissionでキャンセルされます。
runasではadministratorでの実行は可能ですが、条件に合いません。
何かいい方法は無いでしょうか?

471 :デフォルトの名無しさん:2008/01/13(日) 20:36:11
VisualStudio, gcc, vim, Cygwinで開発しています。
MinGWというのは使ったことがあるのですが、メリットがよく分かりませんでした。
上記の開発ツールに加えてMinGWも使うとしたときのメリットにどんなものがありますか?


472 :デフォルトの名無しさん:2008/01/13(日) 21:46:31
Cygwinというのは苦肉の策であって、
例えばパス名の区切りがスラッシュになるなど、環境との親和性に問題がある。

VisualStudioはアクチがあり、法外に高額で、
かといってラーニングやスタンダードはライセンスにいろんな制約がある。
ただしカネがあるなら最適化他の面で圧倒的に有利だ。

gccってNTリソースパックのgcc?
NTのPOSIXサブシステム用はOSの汎用性がない。

MingWは完成度さえ高ければ素晴らしいのだがw
ハローワールドで数メガとか恐ろしいことになったりするw

473 :デフォルトの名無しさん:2008/01/13(日) 22:18:13
>>471
その列挙の意味がよく分かりませんが、VSとcygwin上のgccとvimを併用してると解釈します。

http://ja.wikipedia.org/wiki/MinGW#Cygwin.E3.81.A8.E3.81.AE.E6.AF.94.E8.BC.83
↑cygwinとmingwの比較です。2つは哲学が異なります。

cygwinはmingwに比べwindowsシステムとの互換性が低い(パスとか)のでwindows向けの開発であれば避けた方がいいかもしれません。
しかし、cygwinにmingwが包括されています(詳しい位置づけはよく分かりませんが)。
dllの不要化やWindows APIの利用も可能です。cygwinとmingwを併用する利点はあまり無いと思います。


474 :471:2008/01/13(日) 22:58:52
>>472
ありがとうございます。

Win32を使ったアプリを作らないせいか、環境とし親和性はあまり意識いたことないです。
やはり、Win32APIを使うと問題になってきますか。
VS Express 2005のフリー版を使っています。
gccはCygwin上のgccです。

>>473
リンクありがとうございます。

> VSとcygwin上のgccとvimを併用してると解釈します。
そうです。わかりにくくてすみません。

> しかし、cygwinにmingwが包括されています
それは初耳です。cygwinを使っていれば、mingwと同じかそれ以上の
ことが出来るということですか。

> cygwinはmingwに比べwindowsシステムとの互換性が低い(パスとか)ので
> windows向けの開発であれば避けた方がいいかもしれません。

windows向けの開発をする予定があるので、今からVSを使って慣れておこうかと思っている次第です。
windows向けであればcygwinよりmingwがいいんですか。
あるいは、windows向けであればビジネス的にはVSが圧倒的シェアかと思いますが、
個人的使用(趣味のプログラミング)であればVisualStudio2008などは高額で敷居が高いですね。
個人向けであれば、mingwが最適なのかなと思って、最近mingwが気になりだした次第です。

475 :デフォルトの名無しさん:2008/01/13(日) 23:20:30
素直にVS使っとけ。どうせ2008も無償版が出るんだから。
POSIXを意識しないならWindows上でまでgcc使う必要はない。

476 :デフォルトの名無しさん:2008/01/14(月) 01:43:18
>>472
ハローワールドで数メガとかならねーよw
# あ…Javaで書いてgcjでコンパイルとかしたらなるか

477 :デフォルトの名無しさん:2008/01/14(月) 02:33:08
デバッグ情報てんこもりとか

478 :デフォルトの名無しさん:2008/01/14(月) 03:08:49
[Test.java]
public class Test {
  public static void main(String[] args) {
    System.out.println("Hello, world.");
  }
}

> gcj -O2 --main=Test -o test Test.java
> ls -lh test.exe
-rwxr-xr-x 1 hoge none 6.1M Jan 14 03:04 test.exe*
> strip test.exe
> ls -lh test.exe
-rwxr-xr-x 1 hoge none 2.1M Jan 14 03:06 test.exe*

うはwww

479 :デフォルトの名無しさん:2008/01/14(月) 14:10:45
>>471
VS と MinGW の両方でコンパイルできるコードが割と簡単に書けるところが MinGW のメリット。
MinGW では基本的に Win32 API を使う。
スレッド、WinSock2、DLL のロードなどは Win32 API を利用するので
VS 用と MinGW 用のコードの差分は小さくなることが多い。
コンパイラ依存の部分を #ifdef で分ければ大半のコードを共用できる。

Cygwin は使ったこと無いのでパス。

480 :デフォルトの名無しさん:2008/01/14(月) 14:43:38
逆に、cygwinだとWinSockを使わないでソケット周りを書けるのが魅力。
要は、Linuxと同じソースでいける可能性が高い。

481 :デフォルトの名無しさん:2008/01/14(月) 22:47:17
>>474
windows用のソースをwindows用にコンパイルするのがmingw、勿論VSも
linux用のソースをwindows用にコンパイルするのがcygwinのgcc
cygwinでもwindows用のソースをコンパイルする事はできます、そこで使われているのがmingw
このcygwinのmingwが本家と同一なのかどうなのかはよく知りませんが。

gcc --target-help の最初の10行程を見てみてください、参考になるかと思います。

482 :デフォルトの名無しさん:2008/01/15(火) 04:56:41
一部のファイルをインクルードすると

failure to convert cp932 to UTF-8

というエラーが発生するんですが
これは何が原因なんでしょう?

別のエディタで文字コードをUTF-8にして保存しても直りませんでした

483 :デフォルトの名無しさん:2008/01/15(火) 05:46:45
改行コードかも

484 :デフォルトの名無しさん:2008/01/15(火) 06:25:37
>>483
阿呆ですか。

>>482
--input-charsetは?

485 :デフォルトの名無しさん:2008/01/15(火) 07:23:08
いやまじであるぜ?
改行コード

486 :デフォルトの名無しさん:2008/01/15(火) 14:22:35
>>482
「一部のファイル」ってのを明確すると話が早かったりするかも。
boostだったりしない?


487 :本田:2008/01/17(木) 17:40:38
>COMプログラマの解説書
>Crispin Goswell
>Microsoft Office Product Unit
>1995年 春
>1995年9月13日改訂
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/jpdncomp/htm/com_co.asp
>抄録
>この解説書は、
>Microsoft(r) OLE Component Object Model(COM)オブジェクトを作成し、
>効果的に使用する方法を説明しています。
>例文はほとんどCで書かれていますので、実際に何が行われているかが、大変分かりやすく示されています。
>プログラマの中には、オブジェクトを実行するためにC++を好んで使用する人もいるでしょう。
>C++プログラマの観点からCOMの概念および基本的な使用法を論じているのは
>Kraig Brockschmidt著のInside OLE (第2版)(MSDN Library(Books))です。
>COMとは何か、またその設計や哲学の後ろにある動機付けをより理解する事に興味がある読者なら、
>Component Object Model Specification(MSDN Library(Specifications))の最初の2章を読んでください。
>第1章には簡単なイントロダクションを、第2章では徹底的に概要を解説してあります。
>この解説書ではInside OLEとCOM Specificationにある情報を、
>COMオブジェクトを実装する良い方法をいくつか示しながら解説するようにしてあります。

488 :デフォルトの名無しさん:2008/01/17(木) 18:01:35
>>482
input-charset を CP932 として使っていながら、欧州由来のコードで
CP932的に不正なものを含むソースをコンパイルしたんだと思う。
ffmpegの何かのヘッダとか。

489 :デフォルトの名無しさん:2008/01/20(日) 14:26:15
エクスプローラーを使っているときに
今見ているフォルダでCgywin窓を開きたいのですが
どうしたらいいですか?


490 :デフォルトの名無しさん:2008/01/20(日) 15:01:59
アドレスバーからコピーして、cdすれば?

491 :デフォルトの名無しさん:2008/01/20(日) 15:39:29
>>489
cygwin hereでググれ

492 :デフォルトの名無しさん:2008/01/20(日) 19:41:55
俺はこうしてる
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\WinHandPrompt]
@="Zsh(&C)"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\WinHandPrompt\command]
@="cmd.exe /F:on /K \"cd %L&&zsh\""

493 :デフォルトの名無しさん:2008/01/21(月) 21:47:51
窓の手の流用か

494 :デフォルトの名無しさん:2008/01/22(火) 02:51:02
あれ、なんでばれたんだろう?
、と思ったら書いてあったねハッキリと

495 :デフォルトの名無しさん:2008/01/26(土) 01:51:09
MSYSからgetchとかkbhitを拾うのはどうしたらいい?

コマンドプロンプトではできることが
MSYSでは上手くいかないことが意外に多い
printfは必ずfflushも書かないと表示されないし・・・(TT

496 :デフォルトの名無しさん:2008/01/26(土) 05:18:27
毎回のようにfflushするくらいならsetvbufに_IOLBFしとけ。

で、getchやkbhitはC/C++にもPOSIXにも準拠していないし、Win32にも無い。
強いて言えば、DOSのデファクトスタンダードだったので残してある、というだけ。

Win32APIを使わないとするなら、
conio.hじゃなくてcursesとかを使うんじゃないの?知らないけど。

497 :デフォルトの名無しさん:2008/01/26(土) 11:11:00
>>495
>printfは必ずfflushも書かないと表示されないし・・・(TT
リダイレクトする用途を考慮しなくていいなら、printf()ではなくfprintf(stderr, ...)したまえ。

498 :デフォルトの名無しさん:2008/01/26(土) 15:58:13
いま操作しているPC(ネットワーク上でのコンピュータ名はPC1)のcygwin(以下cygwin1)から
sshでほかのPC(ネットワーク上でのコンピュータ名はPC2)のcygwin(以下cygwin2)にログインして
\\PC1\Shareにアクセスしようとすると"-bash: cd: \\yy-x60s\Share: Permission denied"と言われてしまいます

cygwin2から直接"cd \\\\PC1\\Share"を実行するとこちらは成功します

cygwin2で"setfacl -m user:SYSTEM:rwx \\\\PC1\\Share"を実行して
直後に"getfacl \\\\PC1\\Share"を実行すると
# file: \\PC1\Share
# owner: pc2user
# group: なし
user::rwx
group::r-x
other:r-x
mask:rwx
とでていて設定が反映されてないことが原因なような気がするのですが、どのように設定するばよいか分かりません

499 :デフォルトの名無しさん:2008/01/26(土) 15:58:46
そういえばstderrはバッファリングされないからflushする必要もないよね

500 :デフォルトの名無しさん:2008/01/26(土) 16:13:01
でなきゃ困るだろ.そもそも
>printfは必ずfflushも書かないと表示されないし・・・(TT
は,それが当たり前だということを知らずに泣いてるだけの話だろ

501 :デフォルトの名無しさん:2008/01/26(土) 19:20:24
>>495-496
MSYS では、ってのは rxvt では、ってことだよね。
pdcurses の getch を使うプログラムを書いて試してみたけど rxvt ではダメっぽい。

LINES value must be >= 2 and <= -4096: got 1
initscr(): LINES=1 COLS=1: too small.

とか出てプログラムが異常終了する。
ググってみると lynx や aspell で同じ問題が起こっているみたい。
rxvt では (pd)curses は NG。

502 :デフォルトの名無しさん:2008/01/30(水) 21:32:07
質問です。非常に初歩的ですみません。

ジョークコマンド sl を、Cygwin や その他 dll 等に依存しない、exeファイ
ル単体で動く形にコンパイルしたいのです。

http://chaosweb.complex.eng.hokudai.ac.jp/~hagi/contents/memo-cygwin.html#sl
http://freethink.way-nifty.com/action/2006/06/gnuwin32_6362.html
これらを参考に、Mingw、GnuWin32 をそれぞれフルインストールしました。
makefile の -lcurses と sl.c の usleep を書き換えました。
また、makefile を
CC=c:/mingw/bin/gcc.exe
と書き換えました。
そこから先が分かりません。

gnuwin32 のコマンドプロンプトから、makeを実行すると、以下のようなエラー
が出ます。
gcc -O -o sl sl.c -lpdcurses -ltermcap
sl.c:30:20: curses.h: No such file or directory
sl.c: In function `my_mvaddstr':
sl.c:42: error: `ERR' undeclared (first use in this function)
sl.c:42: error: (Each undeclared identifier is reported only once
...(略)

ということで質問です。GnuWin32 の termcap と pdcurses を、MinGW から利
用できるようにするには、どのように何を設定したらいいのでしょうか?


503 :デフォルトの名無しさん:2008/01/30(水) 23:04:14
>>502
gcc の -I オプションで curses.h があるディレクトリを指定


504 :502:2008/01/30(水) 23:57:09
>>503
ありがとうございます。makefileのCFLAGSを以下のように修正したところ、
CFLAGS=-O -I "/Program Files/gnuwin32/include/"
一歩前進し、今度はこんなエラーが出るようになりました。

c:\mingw\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe:
cannot find -lpdcurses
collect2: ld returned 1 exit status
make: *** [sl] Error 1

今度はどこに何を設定したら良いでしょう?

505 :デフォルトの名無しさん:2008/01/31(木) 00:01:20
1を聞いて10を知れ、とは言わないがちょっとな・・・

506 :502:2008/01/31(木) 00:46:02
ごめんなさい、図々しいお願いですね。

gcc の man を見ているのですが、ライブラリの検索パスを追加するオプショ
ンが見つかりません。
また、C:\Program Files\gnuwin32 の下に pdcurses に相当するライブラリが
あるのかと思ったのですが、libpdcurses.a というファイルが見つかりません。
行き詰ってしまいました。

507 :デフォルトの名無しさん:2008/01/31(木) 00:49:24
-L でしょ?

508 :502:2008/01/31(木) 01:08:26
うわあ、これは恥ずかしい。申し訳ありません。
日本語manを"ライブラリ"で検索していたので見つかりませんでした。

c:\program files\gnuwin32\lib に pdcurses がなく、curses があったので、
Makefile を元に戻しました。

--- sl.c ----
/* usleep(20000); */
sleep(1);

ここで今、こんなエラーが出ています。
c:\DOCUME~1\ユーザ名\LOCALS~1\Temp/ccGQbaaa.o:sl.c:(.text+0x1a4):
undefined reference to `sleep'
collect2: ld returned 1 exit status

たぶん、正しいヘッダをインクルードすればいいと思うのですが。

509 :デフォルトの名無しさん:2008/01/31(木) 01:48:36
>>508
> たぶん、正しいヘッダをインクルードすればいいと思うのですが。

そう思うんだったら、includeディレクトリの中でsleep()の宣言を探す
べきでしょ。たぶん無いけど。



510 :502:2008/01/31(木) 02:01:22
おっしゃるとおりです。見つかりませんでした。

/MinGw/include には何もなく、

/Program Files/gnuwin32/include には
glibc/unistd.h に sleep() がありましたが、includeすると大量のエラー。
winx/timex.h に nanosleep() がありましたが、
undefined reference to `nanosleep' のエラーが出ます。

/cygwin/include でも見つからなかったので、どうも方針がまずいようです。
Cygwin 上だと何もせずにコンパイル、実行できましたので。

今日はいったん中止します。

511 :デフォルトの名無しさん:2008/01/31(木) 08:33:38
このまま続けると嫌われるよ。
おそらく、初心者板の方が適している質問と思われ。

# -Iや-Lオプションなんて、cc時代から定番のオプションだし。
# CygwinやMinGWの問題か切り分けられて無いし。

512 :502:2008/01/31(木) 13:11:55
ごめんなさい、では最後に一点だけ。

/* usleep(20000); */
この行をコメントアウトすると、コンパイルは通るようになりました。まあ実
行すると、一瞬で終わってしまうのですが。

ただし、カレントディレクトリに curses2.dll を必要とします。exeファイル
のみで実行できるようにならないでしょうか?

見よう見まねで gcc に -static オプションを付けてみましたが、大量にコン
パイルエラーが出てしまいます。

c:\DOCUME~1\ユーザ名\LOCALS~1\Temp/ccy2baaa.o:sl.c:(.text+0x34):
undefined reference to `_imp__stdscr'
c:\DOCUME~1\ユーザ名\LOCALS~1\Temp/ccy2baaa.o:sl.c:(.text+0x4f):
undefined reference to `imp( *) static'
c:\DOCUME~1\ユーザ名\LOCALS~1\Temp/ccy2baaa.o:sl.c:(.text+0x6b):
undefined reference to `_imp__stdscr'


513 :デフォルトの名無しさん:2008/01/31(木) 13:17:19
>>512
そのpdcursesにスタティックリンク用のライブラリが添付されてない限
り、キミには無理。


514 :502:2008/01/31(木) 13:22:08
ありがとうございました。dllは諦めます。
あとはusleep(20000)ですが、これはどこか初心者スレを探して質問します。

515 :502:2008/01/31(木) 15:17:52
先ほどの者ですが、解決しました。

#include <windows.h>
...
Sleep(20);

Windowsプログラミングに詳しい知人にアドバイスされ、このように修正したと
ころ、見事に動くようになりました。

どうもお騒がせしてすみませんでした。ありがとうございました。


516 :デフォルトの名無しさん:2008/01/31(木) 15:59:00
最初からそいつに聞け糞が

そいつはそいつで、掲示板で聞けようぜえ
と思ってるだろうがな

517 :デフォルトの名無しさん:2008/01/31(木) 16:23:57
「mingw sleep」でググるだけで、ヒントがたくさん出てくるんだけどなあ。


518 :502:2008/01/31(木) 18:53:51
ごめんなさい、訳があって急ぎだったので、無神経な質問をしてしまいました。
ご迷惑をおかけしました。
今度Java質問スレで、超初心者にていねいに答えますので、それで埋め合わせ
にさせてください。


519 :デフォルトの名無しさん:2008/01/31(木) 20:08:57
人に教えてる暇があったら勉強しろ

520 :デフォルトの名無しさん:2008/02/01(金) 09:18:44
以上 >502 の日記からお伝えしました


521 :デフォルトの名無しさん:2008/02/02(土) 07:20:34
Cygwinでcファイルをコンパイルしようとしたところ、
3[main] ? 26824 init cheap: Couldn't reserve 3600336 bytes of space for cygwin's heap, Win32 error 487

というエラーメッセージを4つ吐くのですが、解決策はありますでしょうか?
ググってみて、再インストールもしてみたのですができませんでした…

WinXP Home SP2
RAM DDR SDRAM 512MB

522 :521:2008/02/02(土) 08:38:29
すみません自己解決しました。

System32にCygwin1.dllがあったのが悪かったようです。

523 :デフォルトの名無しさん:2008/02/05(火) 19:57:57
guileのinfoにある例(インタプリタを作るだけ)をmingwでコンパイルしたら
sys/select.h
ieeefp.h
が無いと言われてしまいます。
確かに/includeにも/mingw/includeにもそんなファイルはありゃしませんが。
mingwじゃlibguileは使えないのでしょうか?

バージョンは
gcc: 3.4.2
guile: 1.8.2
です。


524 :デフォルトの名無しさん:2008/02/05(火) 20:08:18
 _____ ___
<ー、\\ヾiγ/rニミ
 \ヾヘヽヽリ川///γ
  >川/ ̄"""" ̄「リ
  (ヘir-=o=ッィ=o=j
 _ハ| `ー/ ii、i
<\ ヽヽ `ー′/
 \ヽ \  ̄ ̄/∩へ  Cygwinじゃ駄目なのか?
__ii   ̄/二ノ レ<    guileのmakeに必要な環境やライブラリはあるのか?
ヘヘヘ\ヽニ>-イ|( Y/)
ノ// / ヽ_ノ|ヽハ/)
ノ ̄  `ー | |ヒ/


525 :デフォルトの名無しさん:2008/02/05(火) 20:13:56
>>524
試しにcygwinでやってみたら、gmpを入れてないのでハネられます。
まあ、gmp入れてcygwinでやればいいだけなんだろうけど。
主力環境がmingwなのでmingwでやりたいなと。

526 :デフォルトの名無しさん:2008/02/05(火) 20:20:56
敗因は2つだ
- >>525 は sys/select.h が何なのかわかってない
- >>525 は mingw がどんな位置づけにあるものかもわかってない

527 :デフォルトの名無しさん:2008/02/05(火) 20:31:43
guileを使うのにPOSIX環境である必然性があるのかな

528 :デフォルトの名無しさん:2008/02/05(火) 21:10:01
ないと思うが…

529 :デフォルトの名無しさん:2008/02/05(火) 23:46:04
では、mingwの位置づけ云々は関係ないような。
select.hを使わないようにconfigureできないものか。

530 :デフォルトの名無しさん:2008/02/06(水) 00:23:46
>>529
mingwの位置付けが判っていたら当然そういう風に行動するだろ?
ってか guile をビルドの話なのか?
guile をビルドするときなら configure --disable-posix とかあった気がするが…

531 :デフォルトの名無しさん:2008/02/06(水) 01:24:34
>>530
sourceforgeのmingw用にビルドされたguileをインスコしてlibguileまで一緒に入っているのにselectがないとかもうね、なんなんだと。

532 :デフォルトの名無しさん:2008/02/06(水) 05:34:13
じゃあきっとそのlibguileは --disable-posix で作られてるんだろ?

533 :デフォルトの名無しさん:2008/02/06(水) 12:51:39
>>532
guileの意義がわかんねーなら上から目線で語るなよwwww

534 :デフォルトの名無しさん:2008/02/09(土) 17:33:53
…と、>>533が最上位から申しております。

535 :デフォルトの名無しさん:2008/02/09(土) 18:04:39
Cygwinでgcovを使いたいのですが、
gccに-mno-cygwinのオプションを付けて実行すると以下のようなエラーが出ます。
test.gcda:Version mismatch - expected 304m got 304c

-mno-cygwinを付けてgcovを使うことはできないのでしょうか?

Cygwinのバージョンは1.5.25-7です。


536 :デフォルトの名無しさん:2008/02/10(日) 03:15:32
Cygwin v2.573.2.2で開発しています。C++からperlを使おうと思って、とりあえず下のソースを拾ってきました。
#include <EXTERN.h>
#include <perl.h>
static PerlInterpreter *my_perl;
void main ()
{
char *perl[] = { "", "-e", "printf(\"%x\", 3735928559);" };
my_perl = perl_alloc ();
perl_construct (my_perl);
perl_parse (my_perl, NULL, 3, perl, (char **)NULL);
perl_run (my_perl);
perl_destruct (my_perl);
perl_free (my_perl);
}
それを perl_sample.cpp という名前で保存し、
g++ perl_sample.cpp -I/lib/perl5/5.8/cygwin/CORE -L/lib/perl5/5.8/cygwin/CORE
と、コンパイルしようとしました。しかし、
/cygdrive/c/Users/hoge/AppData/Local/Temp/ccwiKLdy.o:perl_sample.cpp:(.text+0x40): undefined reference to `_perl_lloc'
/cygdrive/c/Users/hoge/AppData/Local/Temp/ccwiKLdy.o:perl_sample.cpp:(.text+0x52): undefined reference to `_perl_construct'
/cygdrive/c/Users/hoge/AppData/Local/Temp/ccwiKLdy.o:perl_sample.cpp:(.text+0x7e): undefined reference to `_perl_parse'
/cygdrive/c/Users/hoge/AppData/Local/Temp/ccwiKLdy.o:perl_sample.cpp:(.text+0x8b): undefined reference to `_perl_run'
/cygdrive/c/Users/hoge/AppData/Local/Temp/ccwiKLdy.o:perl_sample.cpp:(.text+0x98): undefined reference to `_perl_destruct'
/cygdrive/c/Users/hoge/AppData/Local/Temp/ccwiKLdy.o:perl_sample.cpp:(.text+0xa5): undefined reference to `_perl_free'
collect2: ld returned 1 exit status
と、エラーをはきます。perl自体はcygwinのインストール時に入れたものです。perlのlibが無いのかと思い、探しましたが見つからず、また、perlの最新版をコンパイルしようとしましたが失敗しました。ちなみにOSはVistaです。
どのようにすればコンパイルできるようになるのでしょうか?

537 :デフォルトの名無しさん:2008/02/10(日) 05:47:34
>>535
http://www.cygwin.com/ml/cygwin/2007-11/msg00180.html



538 :デフォルトの名無しさん:2008/02/10(日) 08:22:53
>>536
ライブラリのサーチパスは指定しているけど、ライブラリそのものを指定していないじゃん。

539 :デフォルトの名無しさん:2008/02/10(日) 09:52:41
>>537
Cygwinで-mno-cygwinを使う代わりに本物のMinGWを使うことで解決できました。
ありがとうございました。

540 :デフォルトの名無しさん:2008/02/10(日) 13:45:20
>>538
ありがとうございました。無事コンパイルすることができ、実行もできました。

541 :デフォルトの名無しさん:2008/02/20(水) 01:17:56
ckのソースどっかに落ちとらんかのー

542 :デフォルトの名無しさん:2008/02/22(金) 00:44:21
どぞ http://www.ch-werner.de/ck/

543 :デフォルトの名無しさん:2008/02/22(金) 10:17:09
ん? ck違い!? とりあえずサンクスコ

544 :デフォルトの名無しさん:2008/02/23(土) 09:23:36
浮動小数点演算を行なうルーチンをコンソールアプリ(main関数)から呼んだときと
Win32 API で書いた GUI アプリから呼んだときとで計算結果が違うという問題に
悩まされています。どなたか解決策をご存じないでしょうか。

問題を再現する、できるだけ小さなプログラムを作りました。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6078.zip
付属の Makefile は MinGW (GNU make)用です。
test1.exe(コンソールアプリ)と test2.exe(GUI アプリ)をビルドして実行します。
どちらも init.c の initialize() を呼び出します。
initialize() は double 型の配列 x を初期化する関数です。
計算結果を見るために x[5] と x[6] をカレントディレクトリの output.txt に書き出しています。
gcc version 3.4.5 (mingw special) では以下のようになりました。

test1.exe
x[5] = 4.7474747474747475e-001
x[6] = 4.6969696969696967e-001

test2.exe
x[5] = 4.7474747474747475e-001
x[6] = 4.6969696969696972e-001

同じルーチンを呼んでいるのに x[6] の値が異なります。x[5] は一致しています。

比較のために VC++ Toolkit 2003 (nmake.exe) 用の Makefile.vc も入れておきました。
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.3077 for 80x86
でコンパイルしたところ2つのプログラムの計算結果が配列 x の全要素について一致しました。
MinGW (gcc) でコンパイルしたときの test2.exe の計算結果と一致しています。
すなわち test1.exe の計算結果がおかしいようです。

どなたか解決策をご存知の方がいらっしゃいましたらご教示下さい。よろしくお願いいたします。

545 :デフォルトの名無しさん:2008/02/23(土) 09:53:13
面倒だからソースは見ていないけど、どちらかはFPUで計算を行いどちらかはSSEで計算を行なっていると思われる。
コンパイルオプションで強制できるから、必要なら強制すればいい。
但し、doubleの精度を超えた領域の話なのでどちらも間違っているとはいえない。

546 :デフォルトの名無しさん:2008/02/23(土) 09:55:30
./test1
4.7474747474747475e-001
4.6969696969696967e-001
./test2
4.7474747474747475e-001
4.6969696969696967e-001

gcc version 4.1.2

ごめん、役に立てそうも無いw
とりあえずmap出力してdiff取ってみたらどうか

547 :デフォルトの名無しさん:2008/02/23(土) 10:01:53
アセンブリ出力を見るだけだろ。常考

548 :デフォルトの名無しさん:2008/02/23(土) 10:17:20
同じになっちまった。
.gcc version 3.4.5 (mingw special)
/test1
cat output.txt
4.7474747474747475e-001
4.6969696969696967e-001
gcc -o test2.exe -mwindows test2.c init.o
./test2
cat output.txt
4.7474747474747475e-001
4.6969696969696967e-001

gccオプションに--save-temps
しかし、同じ.oファイル使ってるから意味ないか。

fprintf(fp, "%hX\n", x[5]);
fprintf(fp, "%hX\n", x[6]);
これ出力しても結果異なるよね?

まぁ、ollydbgあたりでステップ実行すれば原因はわかるかと思う。

549 :デフォルトの名無しさん:2008/02/23(土) 10:20:48
そういえば、全然関係ない話だけど
MinGWのprintfで、%hhXとかうまく機能しない原因知ってる人いない?

550 :デフォルトの名無しさん:2008/02/23(土) 11:00:51
msのcランタイムがc99対応じゃないから

551 :デフォルトの名無しさん:2008/02/23(土) 11:19:49
msのランタイムって、FPUの精度を固定していないか?
>544はもう一回動かしてもtest1のx[6]は違う値のまま?

552 :デフォルトの名無しさん:2008/02/23(土) 12:01:31
15桁目まで同じだからdoubleの精度としては問題ない。

553 :549:2008/02/23(土) 12:03:17
C99以前ではhhxって使えなかったんだ。
知らなかった。

554 :デフォルトの名無しさん:2008/02/23(土) 12:18:37
x86のFPUは、80ビット精度と64ビット精度が存在する。
SSE2は64ビット精度。
とかそのへんの問題かな?

>>551に一票。

浮動小数点演算の検算で精度気にしすぎると禿げるぞ。
ε使えε

555 :デフォルトの名無しさん:2008/02/23(土) 12:55:41
テキストで出力すると計算の問題なのか出力関数の問題なのか分からんな。
バイナリで出力(あるいは16進ダンプ)してみて
どうなるかチェックした方がいいと思う。

例えば
fprintf(fp, "%.16e\n", x[5]);
これを
output(fp, x[5]);
にして、output を別翻訳単位で下のように定義してみたらどう?

void output(FILE *fp, double value)
{
 union {
  double value;
  char array[sizeof (double)];
 } dc = { value };
 int i;

 for(i = 0; i < sizeof (double); ++i) {
  fprintf(fp, "%02X ", dc.array[i]);
 }
 fputchar('\n', fp);
}

556 :デフォルトの名無しさん:2008/02/23(土) 12:56:53
_controlfp あたりでぐぐれ

557 :デフォルトの名無しさん:2008/02/23(土) 13:05:31
VCとgccのデフォルトのFPU計算精度は異なるらしい
http://homepage1.nifty.com/herumi/prog/prog90.html
_controlfpでいじると同じ精度にできる

558 :デフォルトの名無しさん:2008/02/23(土) 13:11:46
おー、それだそれだ、思い出した。

559 :544:2008/02/25(月) 14:04:07
皆さまコメントありがとうございました。>>556-557の方法で解決いたしました。

使用していた Windows 環境では MinGW でコンパイルしたコンソールアプリは 53 ビット、
MinGW でコンパイルした GUI アプリと VC++ Toolkit 2003 でコンパイルした両アプリは
64 ビットの演算精度を用いていたようです。

別の Windows 環境で試したところ MinGW でも両アプリとも同じ計算結果になりました。

コンソールアプリを MinGW でコンパイルすると演算精度が 53 ビットになる環境がある、
確実を期すなら  _controlfp を使え、ということですね。

髪がすこし減ってしまった気がします。本当にありがとうございました。

560 :デフォルトの名無しさん:2008/02/25(月) 14:29:41
つーか、doubleの精度以上の処を云々すると禿げるよ。
どうせ微小誤差が付き纏うんだから適当な桁で丸めて表示するとかしないと。

561 :544:2008/02/25(月) 15:57:08
>>560
おっしゃる通りです。

今回の件が気になってしまったのは、シミュレーションコードのデバッグ中だったためです。
実行環境やコンパイラが違ったら気にしないところですが、同じ環境で同じオブジェクトコードに
同じ入力データを与えているにも関わらず計算結果が違うことにとまどってしまいました。
原因はdoubleの範囲を越えた部分の誤差でしたが、この問題を調べるきっかけになった
シミュレーション結果の違いはもっと有意な差だったので看過できませんでした。

育毛にはげみます。

562 :554:2008/02/25(月) 21:54:36
>>561
> シミュレーション結果の違いはもっと有意な差だったので

俺は予言する
もまいは禿げる。

肝心のアルゴリズム、あるいはテストベクタが草ってんじゃない?

563 :デフォルトの名無しさん:2008/02/25(月) 22:13:26
>>561
IEEEに準拠するように80bitではなく強制64bitにするオプションがあったはずだが

564 :デフォルトの名無しさん:2008/02/26(火) 13:18:47
>>563
>556-559

565 :デフォルトの名無しさん:2008/02/27(水) 14:03:31
そんなあなたを禿増してあげましょう

566 :デフォルトの名無しさん:2008/03/04(火) 02:29:06
>>541 発見しますた
ttp://sohda.net/cygwin/dist/mirror/www.geocities.jp/meir/cygwin_ck/

567 :デフォルトの名無しさん:2008/03/07(金) 09:16:50
OS再インスコしてdevcpp+SDLで以前のソースコンパイルしたらWinMain@16なエラーが('A`)
int main(ryから始めてるし-mwindowsも付けてるのに
cygwinでもインスコすれば変わるかなあ

568 :デフォルトの名無しさん:2008/03/07(金) 10:14:40
-lSDLmain付け忘れ&-l順番ミスでしたサーセン
SDL外したらコンパイル通って、sdl-config見てやっと思い出した

569 :デフォルトの名無しさん:2008/03/24(月) 17:59:52
相談じゃなくて雑談になるんだけど
g++4.3.0をビルドしてみたんだけど、g++のbinが460,475ってでかくね?
cygwinのインストーラからのg++3.4.4は96,789、verうpとかモジュール化とか考えてもねぇ。
とか思いながら動作テストで↓コンパイルしたら、2,339,843、メガってどうなの。(ちなみに3.4.4でも477,682、g++4.3.0binよりでけぇ
#include <iostream>
int main(){return0;}
これって一体何がバイナリに組み込まれてるのか気になるんだけど、分かる人教えてー、誘導だけでもいいから。
ちなみに#include<iostream>だけ消したら3.4.4が7,673、4.3.0が10,915と小さくなった。(勿論gccじゃなくてg++で

570 :デフォルトの名無しさん:2008/03/24(月) 18:09:00
stripしろよ
ライブラリのdebug infoもな

571 :デフォルトの名無しさん:2008/03/24(月) 18:30:48
なるほど、どうもー。

572 :デフォルトの名無しさん:2008/03/25(火) 07:07:47
g++ 普通にビルドできるのか?
それならなんで Cygwin のパッケージは 3.4 のままいっこうに動かないんだろう。

573 :デフォルトの名無しさん:2008/03/25(火) 13:33:08
そのうち、stripしてもまだサイズがでかいがどうしてだ? といった
ググれば5秒で分かるFAQを聞きに戻ってきそうだ

574 :デフォルトの名無しさん:2008/03/25(火) 14:25:42
嫌味だけは一丁前でな

575 :デフォルトの名無しさん:2008/03/25(火) 17:16:47
>>572
できたよー
そういや俺も昔クロスコンパイラ作ろうとしたけどビルド出来なかった覚えがあるな
そんときは原因分からず仕舞いやったけど

cygwinのパッケージはlinuxでビルドされてるらしいから3.4で動かない原因は別なんじゃない?

576 :デフォルトの名無しさん:2008/03/29(土) 06:08:53
Windows XP SP2 上で Cygwin gcc 3.4.4 の MinGW モードで開発してるんですが、
システムメニューの項目を EnableMenuItem() を使ってグレーアウトさせようとしてもできません。

具体的には、ウィンドウプロシージャで WM_CREATE を受け取ったとき

 EnableMenuItem(GetSystemMenu(hWnd, FALSE), SC_MOVE, MF_GRAYED);

としても、システムメニューの「移動」がグレーアウトせず、有効なままになってしまいます(実際にウィンドウ移動もできる)。
MF_GRAYED を MF_DISABLED にしても同様で、システムメニューからウィンドウ移動ができてしまいます。

 DeleteMenu(GetSystemMenu(hWnd, FALSE), SC_MOVE, MF_BYCOMMAND);

ならば正常に機能し、項目が削除されるんですが…。

似たような環境で EnableMenuItem() によるシステムメニュー項目のグレーアウトができている方がいれば
方法など教えていただけないでしょうか?

577 :デフォルトの名無しさん:2008/03/29(土) 06:18:22
すみません。追記です。

 EnableMenuItem(GetSystemMenu(hWnd, FALSE), SC_CLOSE, MF_GRAYED);

は正常に機能し、システムメニューの「閉じる」とタイトルバーの×ボタンがグレーアウトするようです。
となると「移動」とか「サイズ変更」がグレーアウト/無効化できないのは Windows API 自体の仕様なんですかね?
もしそうだったらスルーしてください。Cygwin + MinGW 環境固有の問題かと早合点してしまったので。

578 :デフォルトの名無しさん:2008/03/29(土) 17:36:49
Win32 API スレの管轄だろうな。
ま、それはともかく設定するタイミングが駄目だと思う。


ttp://msdn.microsoft.com/library/ja/jpwinui/html/_win32_getsystemmenu.asp?frame=true
>GetSystemMenu
>
>状況によって、システムはウィンドウメニューの標準的なメニュー項目の一部を自動的に淡色表示にします。
>アプリケーションは、どのメニューも表示されていないうちに WM_INITMENU メッセージに応答することにより、
>メニュー項目を独自に選択したり淡色表示にすることができます。

ということで、WM_INITMENU でやればいいと思う。っつーか、普通のメニューでも項目の無効化等はそこでやると思うんだけど。

579 :デフォルトの名無しさん:2008/03/31(月) 13:20:29
>>578
スレ違いの質問にお答えいただいて恐縮です。
仰る通り WM_INITMENU を受け取ったときに設定することで「移動」「サイズ変更」もグレーアウトさせることができました。

ただし、WM_INITMENU メッセージでは wParam に対象メニューハンドルが格納されるらしいのですが、
システムメニューに関してはこれは当てはまらないようです。なので、

 if(wParam == (WPARAM)GetSystemMenu(hWnd, FALSE)){
  ...
 }

などとすると if 文の中身は決して実行されないようです。
よって、システムメニューを設定するだけなら wParam は無視すべき、ということみたいです。

580 :デフォルトの名無しさん:2008/03/31(月) 13:46:42
WM_INITMENUPOPUPなら見分けがつくんでない?

581 :デフォルトの名無しさん:2008/03/31(月) 14:43:40
>>580 アドバイスありがとうございます。やってみましたが、

 if(HIWORD(lParam) == 1){
  ...
 }

というテストはうまくいくものの、wParam にはシステムメニューのハンドルが入っていないようです。
ですので、EnableMenuItem() などに渡すメニューハンドルはやはり GetSystemMenu() を使って自前で取得しなければ
ならないようです。
また、WM_INITMENUPOPUP を受け取ったときに EnableMenuItem() を呼ぶと、タイトルバーから初めてシステムメニュー
を呼び出したとき、システムメニューの表示位置が若干上にずれて、タイトルバーを覆い隠すような形で出てくるようです。
まあ2回目以降は正常に戻るので、気にするほどのことではないかもしれないですが…。
あと、WM_INITMENU の場合は対象がシステムメニューかどうか見分けが付かないので、自分で初回スイッチのような
ものを用意して対処する必要がありそうですね。

それと、さっき色々試していて気が付いたのですが、WM_INITMENU または WM_INITMENUPOPUP を受け取ったときに
EnableMenuItem() する方法だと、タスクバーを初めて右クリックしたときに項目が無効にならないようです。
2回目以降、もしくは初回であっても事前にタイトルバーからシステムメニューを表示させていれば EnableMenuItem()
の設定が反映されるんですが…。

調べてみたところ、タスクバーが右クリックされたときには非公開メッセージ 0x313 が送られてくるとの情報があったので、
(参考: http://www.hey-to.net/ML-archive/vcppML/1999/msg03694.html)
0x313 を捕捉し、そのハンドラで EnableMenuItem() などの設定を行い、
さらに DefWindowProc() にメッセージを処理させればよい…みたいです。

>>576の環境でしかテストしていないのであまり自信がないですが、これだと一応タスクバー初回右クリック時も正しく
項目が無効化されたシステムメニューが表示されます。
とはいえ、非公開メッセージに依存するのも微妙な感じなので、いっそ WM_CREATE のハンドラで無効にしたい項目を
DeleteMenu() してしまうのが一番簡単かもしれないですね。

長文失礼しました。Windows って難しいです。

582 :デフォルトの名無しさん:2008/03/31(月) 15:22:25
>>581
Win32 API スレいって揉まれてくるといい

583 :デフォルトの名無しさん:2008/04/01(火) 13:51:30
cygwinでopenmpは使える??

584 :デフォルトの名無しさん:2008/04/01(火) 18:57:24
>>581
これじゃダメなんかい?

DWORD dwStyle = GetWindowLong(hWnd, GWL_STYLE) & ~WS_SIZEBOX;
SetWindowLong(hWnd, GWL_STYLE, dwStyle);


585 :デフォルトの名無しさん:2008/04/03(木) 15:23:40
windows2k MinGW を入れたいのです
MinGWインストーラがネット無いので使えません
ソースフォージからどれを落とせば良いでしょうか
またそれは全て同じフォルダに上書きで良いでしょうか
binフォルダなどかぶっているものがおおいんです
使いたいのはC、C++、SDL、OpenGLです
パスは適当に通そうと思っています

586 :デフォルトの名無しさん:2008/04/03(木) 17:14:48
MinGWインストーラはDownload Onlyを選べば、落とすだけを選択できるぞ
あとは上書きで桶

587 :デフォルトの名無しさん:2008/04/03(木) 17:18:07
>>586
おおありがとう!
じゃあ遠かったHelloWorldも近づきますノシッ

588 :デフォルトの名無しさん:2008/04/11(金) 13:50:57
ちょっとお聞きしたいのですが、mingwでは-Iオプションは使えないのでしょうか?
g++ --help でリストに出てこないのです。
しかしg++ -I とすると argument to `-I' missing のような感じで、unrecognize option `-j' みたいな感じではでてこないので、使えるような気もするのですが・・

589 :デフォルトの名無しさん:2008/04/11(金) 14:32:18
>>588
g++ -v --help で出てきませんかな。
正直 gccのオプションはかなり多いので g++ --version でバージョンを確認してから
ぐぐるなり GCC online document http://www.gnu.org/software/gcc/onlinedocs/
から探すなりしてマニュアルを読んだほうがよいかと思います。

590 :デフォルトの名無しさん:2008/04/11(金) 14:42:10
>>588
使える

591 :588:2008/04/11(金) 15:00:25
>>588さん
>>580さん

レスありがとうございます。
使えるのですか。
-I使う場合は、Windows用に
-IC:\Program Files\...
みたいな感じで書けばよいのでしょうか?

上記の感じでやってみたのですが、うまくいかなく・・

592 :588:2008/04/11(金) 15:01:37
>>588さん→>>589さん
>>580さん→>>590さん


593 :デフォルトの名無しさん:2008/04/11(金) 15:06:08
>>591
スペースが入ってるみたいだけど...

594 :デフォルトの名無しさん:2008/04/11(金) 15:21:52
>>591
パスにスペースを含む場合は "" で囲むと聞いたことがあるけど
-I"C:\Program Files\..." ではだめかな

595 :デフォルトの名無しさん:2008/04/11(金) 15:48:56
分割されなきゃいいのだから、空白をエスケープするだけでもいいかも。
それはさて、ディレクトリ区切りのバックスラッシュってエスケープする必要あるんでない?

596 :デフォルトの名無しさん:2008/04/11(金) 16:17:38
スラッシュにした方がいいな
-l"C:/Program files/..."

ていうか相対パス指定できるように環境を整えた方が
のちのち便利だと思う

597 :デフォルトの名無しさん:2008/04/11(金) 17:43:01
レス下さった方々、ありがとうございます。

-l"C:/Program files/..."
こんな感じでとりあえず目的のコンパイルはできるようになりました。多謝です。

相対パス指定のための環境構築について、検索してみたのですが、それっぽいのが出てきませんでした。
スレ違いで申し訳ないのですが、よろしければどなたか解説してるサイト教えて頂けると幸いです。


598 :デフォルトの名無しさん:2008/04/11(金) 18:01:43
msysかcygwinをいれちゃう。
あなたならおそらくmsysのほうがおすすめ。

ふと思ったがmingw単体で使ってる人ってけっこういるんだろうか。



599 :デフォルトの名無しさん:2008/04/11(金) 20:46:30
あっちの関連スレにここがあったから貼り返し。

Cygwin使っている人いますか? その18
http://pc11.2ch.net/test/read.cgi/unix/1184677144/

600 :デフォルトの名無しさん:2008/04/11(金) 22:11:33
>>598
俺々、俺だよ
msysはgccのsnapshotをコンパイルするときくらいしか使ってない

601 :デフォルトの名無しさん:2008/04/11(金) 22:17:04
msysはUNIX系用に書かれたアプリをWindows環境で
makeや./configureするためだけにあるようなもんだから
純粋なWindowsアプリ作るときは、いらんだろ。
それともWindowsアプリ書くときも、mv や cp や sh コマンドを使うヤツがおるのか?

602 :デフォルトの名無しさん:2008/04/11(金) 22:28:16
そこまで使うような奴だったらCygwinを入れているだろうしな。

603 :597:2008/04/11(金) 23:26:58
レスありがとうございますー。
なるほど、msysからなら相対パスで指定できたのですか。

実はmsysは導入してるんですが、今コンパイルしようとしてるソースがeclipseのプロジェクトのもので、
eclipseのbuildセッティングからオプション指定しなければいけないが気がするのです。

eclipseからのオプション指定付きのコンパイルは、絶対パスでですが成功したのでとりあえず解決しました。
eclipseからも相対パスで指定できたら便利なのかもしれませんが、スレ違いなのでここではやめておきます。

色々ご教示くださりありがとうございましたm(_ _)m


604 :デフォルトの名無しさん:2008/04/12(土) 15:11:57
よく分からないんだが、prefix を適当なマクロ名(たとえばSRC_DIR)で定義しておいて
-I"$SRC_DIR/include" とか書けばいい、という話?
Makefile内ではダブルクオートで囲んであってもマクロ展開が行なわれる。
ダブルクオート付きのまま実行されるので SRC_DIR=C:/Program Files/GnuWin32 のように
スペースを含んでいても無問題。

605 :デフォルトの名無しさん:2008/04/12(土) 15:21:51
>>601-602
俺はWindows環境でMinGWを使ってプログラムを書くときはいつも
Makefileを書いてるからmsysがないと不便かもー。
exe単体(dll不要)で実行できるのがMinGWのいいところだから
俺的には MinGW + msys = Cygwin ではない。

606 :デフォルトの名無しさん:2008/04/12(土) 16:54:08
>605
-mno-cygwin つければ cygwin1.dll 使わなくなるんだから、MinGW + msys ⊂ Cygwin とか混ぜっ返してみる。

607 :デフォルトの名無しさん:2008/04/12(土) 17:58:19
>>606
なるほろ。どうもです。

608 :デフォルトの名無しさん:2008/04/12(土) 18:39:40
全く混ぜっ返せてない気がするのは気の所為だろうか。

609 :デフォルトの名無しさん:2008/04/12(土) 23:38:33
>>605
nmake 使った事無いの?

610 :デフォルトの名無しさん:2008/04/13(日) 02:43:01
なぜそこでnmakeがでてくるんだ?

611 :デフォルトの名無しさん:2008/04/13(日) 03:50:56
>>609
聖徳太子って知ってる?

612 :デフォルトの名無しさん:2008/04/13(日) 04:06:39
知ってる。
人に非ずな美人な子供で同性愛者な上にマザコンな皇子でしょ?

613 :デフォルトの名無しさん:2008/04/13(日) 05:10:58
知ってる。
突然びっくりするぐらいブチ切れる人でしょ

614 :デフォルトの名無しさん:2008/04/13(日) 15:09:40
知ってる。
100万人が同時にしゃべっても聞き分けられた人でしょ

615 :デフォルトの名無しさん:2008/04/13(日) 16:14:52
それってさ
聖徳太子が聞き分けられてる
と気づいた人のほうが数段上だよね

616 :デフォルトの名無しさん:2008/04/13(日) 16:58:47
みんなして同じことしかいってなかったんだよね

617 :デフォルトの名無しさん:2008/04/13(日) 17:11:04
MinGWに付いているwindres.exeは
windres --language=0411 ファイル名.rc
とすればShift-JISのrcファイルを読めるけど、UTF-16のrcファイルは読めますか?
languageオプションに指定できる値の情報がどこにも無くて、UTF-16に対応してるかどうか分からない…
(ちなみにVC9のrc.exeは文字コードを自動判定してるようでShift-JISもUTF-16もオプションなしで読めるみたい)

618 :デフォルトの名無しさん:2008/04/13(日) 19:35:39
windresのソースのこの辺り↓を見るしかなさげ?
http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/winduni.c?rev=1.10&cvsroot=src
http://sourceware.org/cgi-bin/cvsweb.cgi/src/binutils/winduni.h?rev=1.7&cvsroot=src
なんだかコードページしか指定できないように見える・・・。

619 :デフォルトの名無しさん:2008/04/14(月) 18:28:10
G++でのコンパイルやリンク実行時に自分で作ったバッチファイルを引数として噛ませたいのですが、どのように書けばできますでしょうか??
どなたかご教示頂けると幸いです。


620 :デフォルトの名無しさん:2008/04/14(月) 18:29:40
> G++でのコンパイルやリンク実行時に自分で作ったバッチファイルを引数として噛ませたい

詳しく

621 :619:2008/04/14(月) 18:35:55
すいません、Windowsのコマンドラインから使う場合の話です。

>>620さん
レスありがとうございます。

例えば、
g++ sample.o -lC:/aa.. -lC:/bb.. -lC:/cc.. -lC:/dd..
のようにインクルードファイルを呼び出してリンクしたいとき、
-lC:/aa.. 以下を毎回打つのは面倒なので、inc.batのようなバッチファイルにまとめてしまい

G++ sample.o inc.bat

のような感じでリンクできるようにしたいのですが、
上のような書式では失敗するので、inc.batの前になにか必要なのかな??という疑問です。


622 :デフォルトの名無しさん:2008/04/14(月) 18:56:36
つMakefile

623 :619:2008/04/14(月) 19:05:56
レスありがとうございます。

すいません、makefileがどんなものかは大体分かっているのです。
今回はバッチでどうしてもやりたい事情がありまして・・


624 :デフォルトの名無しさん:2008/04/14(月) 19:11:17
環境変数使うってのは?

625 :デフォルトの名無しさん:2008/04/14(月) 19:12:55
もしくは、$1とかでファイル名渡すとか?

626 :デフォルトの名無しさん:2008/04/14(月) 19:55:21
>>623
SET CXX=B:\MinGW\bin\g++
SET CFLAGS=-IB:\hoge\include -IB:\fuga\include
SET LDFLAGS=-LB:\hoge\lib -LB:\fuga\lib -lhoge -lfuga
%CXX% %CFLAGS% %LDFLAGS% %*
みたいなのをmygcc.batに保存して
> mygcc sample.cc
でコンパイル。オプションとかは適当に追加してくれ。
バッチファイルも書けなくてC++でプログラム書けるのかが心配だが…

627 :デフォルトの名無しさん:2008/04/14(月) 22:31:52
>>619
ふつうにバッチファイルじゃいかんの?

unko.bat の中身はこう書く
g++ %* -lC:/aa.. -lC:/bb.. -lC:/cc.. -lC:/dd..

で、コンパイルはこう
C> unko sample.o

これも事情があってダメなの?

628 :619:2008/04/14(月) 22:55:52
レスありがとうございます。
なるほど、バッチの中にg++も入れたりできるんですね。

ただ、それだとやっぱりだめで、事情っていうのが、wxWidgetsっていうGUIツールキットを使っていて、それを使ったリンク時に

g++ sample.o -LC:/wx/(以下略)...

みたいにするんですが、どうもWindows版だと

g++ -LC:/wx/(以下略)... sample.o

みたいに、オプションがインプットファイルより前にくるとエラーになるみたいなんです。

makefileを使わないと言っても、eclispeのexcutableプロジェクトなので、makefileは勝手に生成される=使っています。
勝手に生成されるので自由には編集できない、ってことです。
で、そのmakefileのオプションの部分だけをバッチにしたいんです。
直接全部手書きでもよいのですが、かなり長いのでスマートじゃないなぁと思いまして・・

>>バッチファイルも書けなくてC++でプログラム書けるのかが心配だが…
初心者なので大目に見てください(^^;)

環境変数ってのはなんの環境変数でしょうか??


629 :デフォルトの名無しさん:2008/04/14(月) 23:24:07
>>628
eclipseにコンパイル、リンクオプションを設定するところがあるはずだから探せ。
-LC:/... とリンク先ディレクトリ指定のオプションだけのように見えるが、本当はリンクするライブラリもその「バッチ」とやらに書いてるだろ。
それだと.oより先にあったらダメだ。
それはwindowsだろうがなんだろうがダメ。
.oから呼ばれている関数をリストアップして、その後その関数をライブラリからワンパスで探すから。


630 :デフォルトの名無しさん:2008/04/15(火) 00:27:21
>>628
>>627 を試してみたのか?
バッチに渡した引数は %* の位置に展開されるのよ?

>なるほど、バッチの中にg++も入れたりできるんですね。
とかいう時点でバッチが何か理解してないと思われ

631 :デフォルトの名無しさん:2008/04/15(火) 00:39:07
野球で振り回すあれでしょ?

632 :デフォルトの名無しさん:2008/04/15(火) 01:13:11
>>630
バッチってバッチファイルのことじゃなくて、ライブラリのファイル名を羅列したファイルのつもりなんだろう。


633 :デフォルトの名無しさん:2008/04/15(火) 03:16:00
チラシの裏
MinGWでコモンコントロール使うなら
#define _WIN32_IE 0x0300
とか必須

634 :デフォルトの名無しさん:2008/04/15(火) 03:37:30
チラシの裏
ncurses5.6 cygncurses-8.dll 文字化け 日本語
→ use_legacy_coding(2) 追加

635 :デフォルトの名無しさん:2008/04/15(火) 10:11:30
EIPに入ってるアドレスから共有ライブラリやEXEのベースアドレスを調べたいのですが
windowsのPSAPIを使うやりかたで良いのでしょうか?
cygwinではこう書くみたいなやりかたはありますか?

636 :デフォルトの名無しさん:2008/04/15(火) 14:35:20
Win32環境にCygwinかMinGWのどちらかを入れようと迷っているのですが、
何か判断基準になるものはありますか?

637 :デフォルトの名無しさん:2008/04/15(火) 14:39:32
両方入れて、自分で比較した方がいいんじゃないの?

638 :デフォルトの名無しさん:2008/04/15(火) 19:49:07
基本MinGWでいいと思う
別の用途でCygwin使ってる人はそのままCygwinを使う

639 :デフォルトの名無しさん:2008/04/15(火) 23:13:21
CygwinはUnix環境として使うなら便利だけど、窓の開発したいだけなら開発環境に組み込まれてたりするMinGWのほうがいいんじゃね?

640 :628:2008/04/16(水) 23:44:28
レス下さった方々ありがとうございますm(_ _)m
お礼遅れてすいません。

>>lipseにコンパイル、リンクオプションを設定するところがあるはずだから探せ。
オプション設定するところあるのですが、-mwindowsというのを設定しなくてはいけなくて、それ用のフォームがなくて困ってたのですが、全部まとめてかけるところが見つかってそっちに書くことで解決しました。
>>/... とリンク先ディレクトリ指定のオプションだけのように見えるが、本当はリンクするライブラリもその「バッチ」とやらに書いてるだろ。
その通りです!
>>それだと.oより先にあったらダメだ。
それはwindowsだろうがなんだろうがダメ。
.oから呼ばれている関数をリストアップして、その後その関数をライブラリからワンパスで探すから。
そうだったんですか!知りませんでした。貴重な情報ありがとうございます。
>>627 を試してみたのか?
バッチに渡した引数は %* の位置に展開されるのよ?
これも知りませんでした汗
そうだったのですか。なるほど!
ありがとうございます。
>>バッチってバッチファイルのことじゃなくて、ライブラリのファイル名を羅列したファイルのつもりなんだろう。
そんな感じです(^^;)
>>MinGWでコモンコントロール使うなら
>>#define _WIN32_IE 0x0300
>>とか必須
>>ncurses5.6 cygncurses-8.dll 文字化け 日本語
>>→ use_legacy_coding(2) 追加
ありがとうございます!


641 :デフォルトの名無しさん:2008/04/17(木) 22:41:46
>>640
%* や、バッチファイルのその他の機能の説明を読んだ方がよさそう。
Windowsの「スタート」ボタン→「ヘルプとサポート」
→検索窓に「バッチ」と入力して検索→「バッチ パラメータを使用する」
→検索窓に「シェル」と入力して検索 →「コマンド シェルの概要」


642 :デフォルトの名無しさん:2008/04/18(金) 03:40:54
1.cygwin.batから起動したbash上で「ls --color」を実行→color表示。うっわ見づらいなコレ
2.「ls」を実行→あれ、color表示のままだぞ?
3.「ls --color=none」を実行→うむ、color表示じゃなくなった
4.「ls」を実行→あれ、やっぱcolor表示のままだぞ・・・?
5.「source ~/.bashrc」を実行後、「ls」を実行→よし、今度こそcolor表示じゃなくなった
6.「exit」を実行後、cygwin.batからbashを起動し「ls」を実行→ひいい、color表示のままだぞ!?
7.(´・ω・`)

*cygwin.bat----------
@echo off
C:
chdir C:\cygwin\bin
bash --login -i

*.bashrc(インスト時に手を加えたところだけ抜粋)------
export JLESSCHARSET=japanese-sjis
alias ls="ls -F --color=none --show-control-chars"
export LANG=ja_JP.SJIS

他のCygwinプロセスは起動してません。
.bashrcをちゃんと読んでない気がするのですが、lsのデフォルト動作を非カラー表示に
戻す方法をご教授いただければ幸いです。

643 :デフォルトの名無しさん:2008/04/18(金) 04:21:48
>>642
alias 打って実際の登録状況を見るとか。
set -x して実際に起動されたプロセスの引数を確認するとか。

644 :デフォルトの名無しさん:2008/04/18(金) 06:52:13
>>643
このalias内容から、>>642でも書いてるように.bashrcを読んでないと
思ったんですがねえ・・・どこから読んできたのやら

$ alias
alias ls='ls --show-control-chars --color -F'
alias mc='. /usr/share/mc/bin/mc-wrapper.sh'
$ set -x
(なし)

645 :デフォルトの名無しさん:2008/04/18(金) 08:40:49
.bashrcに echo hello とか入れてみれば読まれてるかどうか分かるんじゃ?

646 :デフォルトの名無しさん:2008/04/18(金) 08:55:12
質問には「.bashrcが読み込まれているかどうか分かりません」なんて書かれてないだろう

>>644
http://www.google.com/search?q=cygwin+bashrc+%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BE%E3%81%AA%E3%81%84

647 :デフォルトの名無しさん:2008/04/20(日) 09:05:36
【質問】 Xfce4を利用できない
【希望】 Xfce4デスクトップ環境を利用したい
【やったこと】
http://www.compuspec.net/reference/os/cygwin/installation.shtml
上記のサイトを参考にしました。

setup.exeより、リポジトリ「ftp://sunsite.dk/projects/cygwinports/」を追加し、
Xfce4関連のパッケージ全てをインストール。.bashrcに
PATH=/opt/xfce4/bin:$PATH
export PATH
を追記し、bash上からパスが通っていることを確認。
$ startxfce4
を実行すると、xscreenserverがないとメッセージが出たので、
setup.exeよりxscreenserverを選択しインストール。

再度startxfce4を実行すると、X画面が表示されるものの下記のようなログが出て
Xfce4が起動できていない。

ちなみに利用OSはWindowsXPでユーザ名は「root」としています。

648 :デフォルトの名無しさん:2008/04/20(日) 09:08:00
startxfce4のログ

/usr/bin/startxfce4: Starting X server
(中略)
_XSERVTransmkdir: Owner of /tmp/.X11-unix should be set to root
winValidateArgs - g_iNumScreens: 1 iMaxConsecutiveScreen: 1
(II) XF86Config is not supported
(II) See http://x.cygwin.com/docs/faq/cygwin-x-faq.html for more information
winDetectSupportedEngines - Windows NT/2000/XP
winDetectSupportedEngines - DirectDraw installed
winDetectSupportedEngines - DirectDraw4 installed
winDetectSupportedEngines - Returning, supported engines 00000007
winSetEngine - Using Shadow DirectDraw NonLocking
winAdjustVideoModeShadowDDNL - Using Windows display depth of 32 bits per pixel
winFinishScreenInitFB - Masks: 00ff0000 0000ff00 000000ff
(中略)
Could not init font path element /usr/X11R6/lib/X11/fonts/CID/, removing from list!
Could not init font path element /usr/X11R6/lib/X11/fonts/100dpi/, removing from list!
winPointerWarpCursor - Discarding first warp: 836 512
winProcEstablishConnection - Hello
winProcEstablishConnection - Clipboard is not enabled, returning.
Agent pid 2492
xscreensaver: 09:01:36: locking is disabled (running as root).
xscreensaver: 09:01:36: locking only works when xscreensaver is launched
by a normal, non-privileged user (e.g., not "root".)
See the manual for details.
FreeFontPath: FPE "/usr/X11R6/lib/X11/fonts/misc/" refcount is 2, should be 1; fixing.
# ここで下記URLのような何もない画面とXのカーソル(×印)が表示されて停止
# http://img224.echo.cx/img224/5445/cygwin5bh.jpg

649 :デフォルトの名無しさん:2008/04/20(日) 09:19:24
理想
ttp://blawat2015.no-ip.com/~mieki256/diary/img/20050224_weirdx_screenshot_03.gif

650 :デフォルトの名無しさん:2008/04/20(日) 22:10:32
ttp://www.geekpage.jp/programming/c/helloworld.php

ここを見て最初からやっていったのですが、コンパイルは出来たものの
>CygwinだけではなくWindowsコマンドプロンプトで実行したい場合
のところにある「-mno-cygwin」を使おうとすると
gcc: installation problem, cannot exec `cc1': No such file or directory
と出てきてしまいます
どうしたらいいでしょうか?

651 :デフォルトの名無しさん:2008/04/20(日) 23:54:24
>650
必要なパッケージが足りてない。
-mno-cygwin が使いたい場合、gcc-core だけじゃなくて gcc-mingw-core も必要。

652 :デフォルトの名無しさん:2008/04/21(月) 13:53:13
都合でMinGWを使いたいんだけど、Cygwin導入済みのWindowsに入れたら競合が起こるかな
CygwinパッケージにもMinGWがあった気がするけど、両方とも干渉せずスタンドアロンで使いたいっす

653 :デフォルトの名無しさん:2008/04/21(月) 16:26:13
>>652
cygwinでmingwのコマンド類のある場所にパス通したりしなければ問題ない。
うちは普通に cygwin と mingw + MSYS が両方入ってる。

654 :デフォルトの名無しさん:2008/04/21(月) 22:37:48
>>651
解決しました
ありがとうございました

655 :デフォルトの名無しさん:2008/04/26(土) 15:13:24
libtoolがスタティックライブラリは作るのですがdllを作ってくれません ><

/bin/sh ..//libtool --quiet --mode=link gcc -no-undefined -L/home/myname/install//lib
  -rpath /home/myname/install/lib -version-info 25:5:0 -export-symbols-regex '^ne_[^_]'
  -o libneon.la ne_request.lo ne_session.lo ne_basic.lo  ne_string.lo ne_uri.lo ne_dates.lo
  ne_alloc.lo ne_md5.lo ne_utils.lo ne_socket.lo ne_auth.lo ne_redirect.lo ne_compress.lo ne_207.lo
  ne_xml.lo ne_props.lo ne_locks.lo ne_xmlreq.lo  ne_acl.lo ne_openssl.lo
  -lssl -lcrypto  -lz -L/home/myname/install/lib -lxml2 -lz -lm
が実行されると
*** Warning: linker path does not have real file for library -lssl....
*** using a file magic. Last file checked: /home/myname/install/lib/libssl.dll.a

*** Warning: linker path does not have real file for library -lcrypto....
*** using a file magic. Last file checked: /home/myname/install/lib/libcrypto.dll.a

*** Warning: linker path does not have real file for library -lz....
*** using a file magic. Last file checked: /lib/libz.dll.a
*** The inter-library dependencies that have been dropped here will be
*** automatically added whenever a program is linked with this library
*** or is declared to -dlopen it.

*** Since this library must not contain undefined symbols,
*** because either the platform does not support them or
*** it was explicitly requested with -no-undefined,
*** libtool will only create a static version of it.
といわれます

ssl、crypto、zはaファイルのみでlaファイルがないためリンクが失敗してると思います
configureし直して、この三つのライブラリがリンクされないようにしたらdllが出力され
Since this library must not contain undefined symbols...も出なくなったのですが
aファイルしかないライブラリをlaファイル捏造とか以外の方法(オプションとか環境変数とか)で
libtoolによるリンクを成功させるにはどのようにすればよいでしょうか?

656 :デフォルトの名無しさん:2008/04/27(日) 09:02:53
laファイル捏造が嫌なら libtool 自体を書き換えるしかないと思うが。

657 :デフォルトの名無しさん:2008/05/04(日) 16:29:31
i686-elfがターゲットなbinutilsを作ったのですがgccにこれを使うよう指示する方法が分かりません

ttp://iwatam-server.dyndns.org/hardware/h8comm/doc/CrossDevel-jp.html/ch-inst.htmlとかを見ると
オレオレbinutilsを使いたい場合gccも作らなくてはならない感じなのですがどうにかする方法はないでしょうか?

658 :デフォルトの名無しさん:2008/05/05(月) 17:40:58
>>657
gccにはそういうオプションなどなかったと思うけど、
gcc -S でアセンブリソースを出して、
オレオレas でオブジェクトを作って、
オレオレld でリンクすればいいだけ。


659 :デフォルトの名無しさん:2008/05/05(月) 18:40:18
specsのinvoke_asとlinker書き換えて -specs= で読ませりゃいいんでない?

660 :デフォルトの名無しさん:2008/05/06(火) 12:21:35
高速に質の良さそうな乱数を取得する方法を探しております。
「Mersenne Twister」というのに行き当たったのですが、もっと高速なものを探していたところ、
「/dev/rand」というものがあるというのを知りました。
下記に関し日本語サイト探しているんですが、なかなか詳しいところが見つけられません。
 1./dev/randとはハードか何かで乱数作るんでしょうか?
 2./dev/randはWindowsで使うことは出来ますか?
  また使い方は?

661 :デフォルトの名無しさん:2008/05/06(火) 12:26:41
乱数スレで質問すれば誰か詳しい人がいるかもしれないよ

662 :デフォルトの名無しさん:2008/05/06(火) 12:36:14
>>661
そうですか。
ただマルチになると申し訳ないので、2〜3日寝かしてレス付かないようなら移動しますね。

663 :デフォルトの名無しさん:2008/05/06(火) 13:36:56
>>657
-B prefix と -b target ジャマイカ?

664 :デフォルトの名無しさん:2008/05/06(火) 15:46:41
>>660
もうすっかり忘れたけどrand()は線型合同法かなんかだっけ?
メルセンヌツイスタを見つけたならひと口に乱数と言っても
目的によって適不適があるというような注意書きを
メルセンヌツイスタの作者が書いてるのに行き当たったり
しているはずだが。

665 :デフォルトの名無しさん:2008/05/06(火) 15:55:16
>>662
取り下げによる移動はマルチではない。
移動の方法としてはいくつか在るがたとえば
ここに、「〜〜(移動先URL)へ移動しました」などと書いたうえで
移動先に「〜〜(ここのURLとレス番)から誘導を頂きました」
とでも書いておけばその時点でマルチではなくなる。

666 :デフォルトの名無しさん:2008/05/06(火) 16:06:09
乱数スレの住人ってバカばっかりだからなぁ

667 :デフォルトの名無しさん:2008/05/06(火) 16:08:18
>>660
> 高速に質の良さそうな乱数を取得する方法を探しております。
目的を述べよ

>  1./dev/randとはハードか何かで乱数作るんでしょうか?

割り込み間隔とかネットワークのIO間隔等で乱数 seed を揺さぶり続けるため
品質的にはそれなりだが, 再現性のある乱数系列を取得することは不可能

>  2./dev/randはWindowsで使うことは出来ますか?

/dev/rand に相当するデバイスドライバを書けば OK

>   また使い方は?
fd = open("/dev/rand", O_RDONLY);
read(fd, random_buff, sizeof random_buff);


668 :デフォルトの名無しさん:2008/05/06(火) 16:44:44
> /dev/rand に相当するデバイスドライバを書けば OK

ほら。もう、バカばっかり・・・

669 :デフォルトの名無しさん:2008/05/06(火) 21:28:53
>>660
/dev/random
/dev/urandom
のこと? だったら、参考資料としてはこの辺とか。
ttp://www.linux.or.jp/JM/html/LDP_man-pages/man4/random.4.html
とりあえずCygwinなら使えるが、Linux等と同じ動作をしてるわけでは
ないと思われるため、品質や速度については不明。MinGWは知らん。

/dev/rand はぐぐってみると結構ヒットするけど、実在するの?

670 :デフォルトの名無しさん:2008/05/06(火) 23:01:34
作ればできるよ。ああできるよ。何だってできるよ、作れば。

671 :デフォルトの名無しさん:2008/05/06(火) 23:51:01
>>669
作ればあります。

672 :デフォルトの名無しさん:2008/05/07(水) 03:08:41
作らんでもエイリアス張るだけちゃうん

673 :デフォルトの名無しさん:2008/05/07(水) 12:09:13
WindowsにEGD移植されてないんだっけ?

674 :デフォルトの名無しさん:2008/05/07(水) 16:19:35
すいません、MinGWにUTF-8を認識させるようにしたいのですが、そこらへん設定するにはどうすればよいでしょうか??
どなたか教えて頂けると幸いです。


675 :デフォルトの名無しさん:2008/05/07(水) 16:23:27
>>674
MinGWに認識させるとは?
gccのオプション指定で入力エンコードと出力エンコードを指定するって話なら判るんだけど。

676 :674:2008/05/07(水) 16:47:30
レスありがとうございます。

>> gccのオプション指定で入力エンコードと出力エンコードを指定するって話なら判るんだけど。
分かりにくくてすいません、そんな感じのことを言いたかったのでした。
コンパイル時のオプションで設定できたんですか。
調べたら
--input-charset, --exec-charset
など、出てきました。

ありがとうございましたm(_ _)m

677 :デフォルトの名無しさん:2008/05/07(水) 19:08:07
不完全な質問にヒント程度のエスパー回答、そして解決報告
素晴らしい流れに心が洗われるようだ

678 :デフォルトの名無しさん:2008/05/07(水) 22:24:33
ttp://sourceforge.net/forum/forum.php?forum_id=820558
> Testing: gcc-4.3.0-20080502-mingw32-alpha

いきなり 4.3.0 ですかい

679 :デフォルトの名無しさん:2008/05/08(木) 00:24:46
x64対応はまだかね?

680 :デフォルトの名無しさん:2008/05/08(木) 21:00:27
おまいらソースを嫁
http://cygwin.com/cgi-bin/cvsweb.cgi/src/winsup/cygwin/fhandler_random.cc?rev=1.36&content-type=text/x-cvsweb-markup&cvsroot=src
http://msdn.microsoft.com/en-us/library/aa379942(VS.85).aspx
各種外乱使った暗号論的擬似乱数っぽい

暗号論的に優秀なのとMCやなんかで優秀なのは違ったと思うんで
用途によるはずだがそのあたりは詳しく知らない

681 :デフォルトの名無しさん:2008/05/09(金) 13:17:06
MinGWでのコンパイルってこの方法であってますよね?
コマンドプロンプトで、chdir ソースファイルが保存してあるディレクトリまでの絶対パスまたは相対パス
そしたら
ソースファイルが保存してあるディレクトリまでのパス>gcc ソースファイル.C -o ソースファイル.exe
これでコンパイルしてもエラーでるからコンパイルの方法が悪いのかなって思ったんだけどさ
ソースファイルは本通りに入力したはずだからあってるはず。
もうプログラミング挫折しそうです。

682 :デフォルトの名無しさん:2008/05/09(金) 13:31:28
エラーを貼り付けないと回答のしようがない。
コマンドライン慣れてないならVisual C++ 2008 Express Editionや
Eclipse CDT使うのも手。

683 :デフォルトの名無しさん:2008/05/09(金) 13:34:32
すいません
>>681の通りに入力して
gcc: installation problem, cannot exec `cc1plus': No such file or directory
と表示されます。


684 :デフォルトの名無しさん:2008/05/09(金) 14:14:33
目的がプログラミングの学習で、
英語が全く分からない&英語を勉強する気はない
なら VC++ 使った方がいい。

685 :デフォルトの名無しさん:2008/05/09(金) 14:14:45
そりゃめげるわな
http://zieaon.co.uk/MinGW-cc1plus.html
PATH通せ

686 :デフォルトの名無しさん:2008/05/09(金) 15:22:57
ありがとうございます。
VC++ってC言語でもつかえるんですか?


687 :デフォルトの名無しさん:2008/05/09(金) 15:29:17
使えるよ
でもスレ違い

688 :デフォルトの名無しさん:2008/05/09(金) 15:35:34
おぉ そうなんですか!!
スレ違いになりますね;;
みなさんありがとうございました。
VC++で頑張ってみます

689 :デフォルトの名無しさん:2008/05/09(金) 15:57:33
華麗にスルーされた俺カワイソス

690 :デフォルトの名無しさん:2008/05/09(金) 16:23:16
大丈夫か?初心者にVCなんか勧めて。
どうせ今度は sprintf_s、strcpys、strcat_s・・・ でつまづくだろ。
オレなら Borland C++ Compiler を薦める。

691 :デフォルトの名無しさん:2008/05/09(金) 18:13:24
gcc(ry

692 :デフォルトの名無しさん:2008/05/09(金) 18:53:08
その前に日本語

693 :デフォルトの名無しさん:2008/05/11(日) 01:38:33
mallocのインターポジショニングがしたいのですが
以下のようにやってもうまくいきません。
環境はWindowsVista+cygwinでgccは3.4.4です

---main.c---
#include <stdlib.h>
#include <stdio.h>

int main(void)
{
printf("start\n");
char* c = (char*)malloc(10);
return 0;
}

---malloc.c---
#include <stdlib.h>
#include <stdio.h>

void* malloc(size_t size)
{
printf("malloc\n");
return NULL;
}



694 :デフォルトの名無しさん:2008/05/11(日) 01:39:53
これを以下のようにコンパイルしました
gcc -c -o testmalloc.o malloc.c
gcc -o main.exe main.c testmalloc.o
そして実行すると
./main.exe

4 [main] c 1924 sig_send: wait for sig_complete event failed, signal -34,
rc 258, Win32 error 0

とエラーになります。そのあとにstartと表示されます。
どこがまずいのでしょうか?

695 :デフォルトの名無しさん:2008/05/11(日) 02:49:43
>>694
main()に入る前にmalloc()が呼ばれることもあるので、そういうハリボ
テ実装ではダメ。



696 :694:2008/05/11(日) 04:02:19
>>695さんありがとうございます。
ハリボテは駄目とのことなので、
置き換えたmallocの中で本物のmallocを呼ぼうとしたのですが、
やり方がわかりませんでした。
ためしに以下のようにしてみたのですが、駄目でした。

---malloc.c---
#include <stdlib.h>
#include <stdio.h>

static void* (*malloc_org) (size_t size);


__attribute__((constructor))

void save_malloc()

{
printf("save_malloc\n");

// 本物mallocを保存。
  malloc_org = (void*(*)(size_t)) dlsym((void*)-1L, "malloc");

}

void* malloc(size_t size)

{
printf("malloc\n");
return malloc_org(size);

}

697 :694:2008/05/11(日) 04:05:44


gcc -c -o testmalloc.o malloc.c
gcc -o main.exe main.c testmalloc.o
./main.exe

ここで、save_mallocと出るよりも前に
mallocと表示され、そこで前回と同じ症状となりました。
何かよい方法はないでしょうか?




698 :デフォルトの名無しさん:2008/05/11(日) 10:15:40
Cygwinだよね?

 ソ ー ス 嫁

そうすれば malloc などの置き換えのために何をすればいいかわかってくる。
ただ、今回は malloc の書き直しが目標なのではないだろう?
ヘッダ・ソースから内部構造体を調べて、ヒープヲークする程度で充分なんでは?

> ここで、save_mallocと出るよりも前に
> mallocと表示され、そこで前回と同じ症状となりました。

オリジナルの malloc を"セーブ"することには意味がないよ。
むしろ malloc_org が初期化されていない場面があるってことだから
DLLから都度ポインタ得ても同じこと。
そして、DLL内部で完結している malloc を、この方法で
置き換えることは困難(つーか不可能)だ。
(たとえば strdup の内部 malloc 呼び出しをこの方法で乗っ取れるか
どうか実験してみるといい)

699 :デフォルトの名無しさん:2008/05/11(日) 13:03:46
動作確認してないけど、こんなのどう?

---main.c---
#include <stdlib.h>
#include <stdio.h>

void* (*unko) (size_t size);
#define malloc unko
int main(void)
{
  printf("start\n");
  char* c = (char*)malloc(10);
  return 0;
}

---unko.c---
#include <stdlib.h>
#include <stdio.h>

void* unko(size_t size)
{
  printf("malloc\n");
  return malloc(size);
}

700 :デフォルトの名無しさん:2008/05/12(月) 20:31:43
既にCygwin環境があるWindowsで、「他者のCygwin環境でWindowsに移植されたソフトウェア」を実行しようとすると
cygwin1.dllのバージョンの差異でエラー(fatal error - system shared memory version mismatch detected)が発生します。
既にCygwin環境があるWindowsで、それぞれが独立した形(スタンドアロン)として実行する最善の方法をご教授ください。

701 :デフォルトの名無しさん:2008/05/12(月) 22:01:14
>>700
Cygnusにコンサル料払え。

702 :デフォルトの名無しさん:2008/05/12(月) 22:32:49
>>700
Cygwin のバージョンを合わせるしかないんじゃね?

703 :デフォルトの名無しさん:2008/05/12(月) 22:34:07
MinGWで移植できないか考える

704 :デフォルトの名無しさん:2008/05/12(月) 23:33:16
>>700
かたっぽのCygwin1.dll消すんじゃあかんの?

705 :デフォルトの名無しさん:2008/05/13(火) 00:09:35
>>700
その他者の移植したソフトウェアと一緒に他者のCygwin環境のcygwin1.dllを貰ってきて
そっちがロードされるようにして起動すればいいんでない?

706 :700:2008/05/13(火) 02:54:02
具体例を書いておいたほうが良かったか・・・。質問やり直し。

ttp://blogs.windowsnetworking.com/wnadmin/2006/09/22/lighttpd-web-server/
こういうスタンドアロンで使う事を目的としたcygwin環境を含むソフトウェアを
CygwinがインストールされてるWindowsにインストールすると、ソフトウェア同梱のcygwin1.dllよりも先に
パスが通ってるディレクトリにあるcygwin1.dllを読みに行こうとします。

バージョンの差異で起動できないのは表示されるエラーメッセージで明白なので、
早い話パスが通ってるディレクトリにあるcygwin1.dllを、同梱されてるcygwin1.dllで上書きすればいいんですが、
ソフトを使うたびにファイルを入れ替えやらをしていたら、バイナリ配布がやり易いWindowsの特権がryという話です。
# そもそも、入れ替えするくらいならソースを持ってきてコンパイルした方が早い。

そこで、>>705にある「そっちがロードされるようにして起動」の部分が知りたいと思いました。
オープンソースの恩恵を受けてるユーザだと、結構ぶち当たる問題かと思い、こちらで質問しました。
物理的にDLLを入れ替える方法しかない場合は、大人しくソースからコンパイルしマス。

707 :デフォルトの名無しさん:2008/05/13(火) 06:10:22
いやだから、お互いのCygwinのリビジョンを合わせればいいって話じゃないの?

708 :デフォルトの名無しさん:2008/05/13(火) 10:57:44
>>700
.local とか .manifest を用意すればOK。


709 :デフォルトの名無しさん:2008/05/13(火) 17:23:58
>>706
そのソフトってcygwinのシェルから起動するのか?
だとしたらパスの順番変えて付属のdllが先に見えるようにして起動すれば済む気がするけど…

そうじゃないとしたら普通にcygwinをインストールした場合cygwin1.dllのある
ディレクトリにパスが通ったりはしない(Windowsの環境変数の方のPATHね)からそんな
問題は起こらない気がする…

710 :デフォルトの名無しさん:2008/05/14(水) 02:26:23
挑発しているのでもなんでもなく
残念だがvirtualboxを使って複数のOSをシームレスに同居させられる今
わざわざcygwinを使う意味がまったくわからない。
古い Win環境でもcygwin使うより快適だよ

試していないならやってみるべきだと思うな。

711 :デフォルトの名無しさん:2008/05/14(水) 04:12:26
なるほど、仮想マシンに Linux 入れてクロスコンパイル用
のgccを用意してwin32用のバイナリを開発するということだな?
確かに快適だろうがその環境を作れるやつがどの程度いるのか…
# ここは一応 GCC のスレらしいよ?

712 :デフォルトの名無しさん:2008/05/14(水) 06:00:07
単にWindowsアプリケーションでPosixAPIを使いたいだけです

713 :デフォルトの名無しさん:2008/05/14(水) 07:27:36
単にシームレスにUnix系ツールを使いたいだけです。

714 :デフォルトの名無しさん:2008/05/14(水) 11:13:00
単にWin上でGCC系コンパイラーを使いたいだけです
Cygは使ってませんし

715 :デフォルトの名無しさん:2008/05/14(水) 13:36:32
>>712
つ Cygwin

>>713
つ MSYS

>>714
つ MinGW

716 :デフォルトの名無しさん:2008/05/14(水) 13:49:31
それ全部このスレの話題だよな。

717 :デフォルトの名無しさん:2008/05/14(水) 17:46:54
そもそもmsysってcygwinから派生したものだろ・・・

718 :デフォルトの名無しさん:2008/05/14(水) 17:59:09
敢えてWindows Services for UNIX

719 :デフォルトの名無しさん:2008/05/16(金) 00:43:41
>>718
それなんてWine

720 :デフォルトの名無しさん:2008/05/16(金) 21:52:12
CygwinもColinuxもSFUもWineも微妙…
もっとwinとUNIXとが渾然一体になってるような
ハイブリッドカーネルみたいなんは無いもんか……


721 :デフォルトの名無しさん:2008/05/16(金) 22:44:53
もっと微妙になってしまいそうな気もするが…

722 :デフォルトの名無しさん:2008/05/18(日) 03:51:12
cygwin1.dllはアッパーコンパチにして欲しいよ。マジで。

723 :デフォルトの名無しさん:2008/05/25(日) 02:42:18
getrlimitのソースってどこにあるのでしょうか?
glibcの中のgetrlimitは空実装でした。

724 :デフォルトの名無しさん:2008/05/25(日) 03:40:27
>>723
どの環境のgetrlimit()?


725 :デフォルトの名無しさん:2008/05/30(金) 23:02:09
今日gcc4.3をビルドして初めて使ってみたんだけど、
デフォルトで入ってるgcc3.4.4よりコンパイルが速いのね。

726 :デフォルトの名無しさん:2008/06/02(月) 22:00:21
% alias ccgl 'cc -I/usr/X11R6/include \!* -L/usr/X11R6/lib -lglut -lGLU -lGL -lXmu -lXi -lXext -lX11 -lm -lpthread'
のようにしておけば、
% ccgl program.c
だけでコンパイル出来るらしいのですが。bashで
% alias ccgl='cc -I/usr/X11R6/include \!* -L/usr/X11R6/lib -lglut -lGLU -lGL -lXmu -lXi -lXext -lX11 -lm -lpthread'
のようにしてもできません。どこが問題なのでしょうか?

727 :デフォルトの名無しさん:2008/06/02(月) 22:07:27
>>726
なんで「\!*」?「$@」じゃないの?
つーか、そんなへんなエイリアスつくってないで、Makefile書きましょう。


728 :デフォルトの名無しさん:2008/06/02(月) 22:14:25
Makefile書けば済む話ではあるんですけど…。glutやらSDLやら
目的別にエイリアス作っとけば、ちょこっとした作業が楽になるかな
と思ったんです

729 :デフォルトの名無しさん:2008/06/02(月) 23:39:08
>>726
せめてワンライナーなaliasなんかじゃなくシェルスクリプトにすれば
記述の自由度があがってもっと便利なものも書けると思うんだが
何かaliasで定義しないといけない理由とかがある?

730 :デフォルトの名無しさん:2008/06/02(月) 23:40:09
SDL知ってるなら、それに倣ってgl-configでも作っておけばいいんじゃない
$ gcc `gl-config` hoge.c
で済むようになるけど

731 :デフォルトの名無しさん:2008/06/03(火) 10:13:59
>>729
理由は特にありません。
ただ、シェルスクリプトの使い方が良く分かってないのと、ファイルを
いちいち作りたくないとかです。

>>730
おお、すごくいい感じな気がします。こっちの方がいいですね
`sdl-config --cflags --libs`みたいなことですよね。これは、
どのような仕組みになっているのでしょうか?

732 :デフォルトの名無しさん:2008/06/03(火) 10:51:25
Makefile一個書くのがそんなに嫌なのかな?

733 :デフォルトの名無しさん:2008/06/03(火) 10:54:14
>>731
sdl-configの中身を読んでみましょう。
シェルスクリプトの書き方を習得しとくと、イロイロ便利だよ。


734 :デフォルトの名無しさん:2008/06/03(火) 11:28:18
>>732
ちょこっとしたテスト用ののソースのためにわざわざMakefile書くのが嫌かもです。
リンクするライブラリが多かったりすると…
Makefile書くよりもコマンドの方が手軽かな、と私が勝手に思ってるだけです。

>>733
シェルは覚えたいですね。

735 :デフォルトの名無しさん:2008/06/03(火) 11:30:02
>>734
もしかして、ソースファイルごとにMakefileが必要だと思っていない?
適当なMakefileを用意しておけば、例えばmake fooとするだけでfoo.cかfoo.cppをコンパイルできるのだけど。

736 :デフォルトの名無しさん:2008/06/03(火) 12:02:24
>>735
make fooとした場合、
Makefile内の
foo:
コマンド
の部分が実行される。で合ってますか?
この場合、使えるソースファイルの名前はfooだけですよね?
例えば、fooってファイルの他にfoo1,foo2などのファイルを作った場合も
make foo1 ,make foo2という風にできるのでしょうか?

それとも、上のように様々なソースファイルを引数で指定するようならば、

make はマクロの定義をシェル引数からでもできる。
例: % make CC=gcc
ということなので、これを応用すればいいのでしょうか?

737 :デフォルトの名無しさん:2008/06/03(火) 12:06:52
>>736
%: %.c
    gcc -o $@ $<

ってMakefileに書いてみ

738 :デフォルトの名無しさん:2008/06/03(火) 12:36:59
>>737
おお、ありがとうございます。こんな使い方できるんですね。最初からMakefileに
ついて調べとけば良かったorz

これで解決です。

ところで、autotoolsってありますよね。あれの使いどころが良く分かりません。
大規模なソフトウェア->autotools使う。
趣味範囲のソフトウェア->自分でMakefileを作って流用する
って感じなのでしょうか?

739 :735:2008/06/03(火) 12:59:50
>>738
やっぱりそうだったのかw 道理で話が噛み合わないと思った。

740 :デフォルトの名無しさん:2008/06/03(火) 13:01:53
>>739
知識少なくてすみませんw
プログラムしたくてもMakefileを調べていたら全然進まないので、

741 :デフォルトの名無しさん:2008/06/03(火) 13:02:35
やっつけでMakefile書いてきたツケが…

742 :デフォルトの名無しさん:2008/06/03(火) 13:07:56
事実上、
autotools->クロスプラットフォーム
Makefile->環境依存
だとおもえばいいよ。

743 :デフォルトの名無しさん:2008/06/03(火) 13:13:03
なるほど。じゃあ、Makefileについてちゃんと調べようと思います。

744 :デフォルトの名無しさん:2008/06/03(火) 13:14:28
foo.Cが任意のディレクトリにあるとき、
Makefileをソースファイルと同じディレクトリに置かないと、make fooとはできないよね。
できるのならぜひ方法を知りたい。

745 :デフォルトの名無しさん:2008/06/03(火) 13:19:17
Makefileの中身はこんな感じ(一部抜粋)

# Makefile for MinGW

OBJS = main.o
OPTS =
LIBS =

CC = g++
RC = windres
CFLAGS = -O2 -Wall
.SUFFIXES: .cxx .hxx .rc .ro

#

$(OUT): $(OBJS)
$(CC) $(OPTS) -o $@ $(OBJS) $(LIBS)
strip $@
@(del *.o 2>&1) > NUL
@(del *.ro 2>&1) > NUL

.cxx.o:
$(CC) $(CFLAGS) -c $<

.rc.ro:
$(RC) -o $@ $<

clean:
@(del *.o 2>&1) > NUL
@(del *.ro 2>&1) > NUL
@(del *.exe 2>&1) > NUL


746 :デフォルトの名無しさん:2008/06/03(火) 13:24:04
>>744
-fで指定するのが嫌で、alias make="make -f ~/Makefile"とかするのが嫌なら、
カレントにMakefileのシンボリックリンクでも置いておくとか。


747 :デフォルトの名無しさん:2008/06/03(火) 13:24:26
>>744
vpathとか

748 :デフォルトの名無しさん:2008/06/03(火) 13:34:01
>>746
aliasの存在を忘れていた。すぐ上でalias見たばかりなのに……。
ふだんはわざわざカレントにシンボリックリンク(ジャンクション)を作ってました。
とはいえ、カレントのMakefileを使いたいこともあるのでvpath使ってみようと思います。
こんな便利なものがあったとは。

749 :デフォルトの名無しさん:2008/06/03(火) 13:43:49
>カレントのMakefileを使いたいこともあるので
alias mk="make -f ~/Makefile"
でOK

750 :デフォルトの名無しさん:2008/06/03(火) 14:22:26
>>744
あまり良くない方法らしいがMAKEFILES環境変数

make makes many problems
http://pc11.2ch.net/test/read.cgi/tech/1029599472/387

751 :デフォルトの名無しさん:2008/06/04(水) 01:49:57
>>744
@ほにゃらら
で下階層に移動するのはダメ?
linuxのtarballでよくある方法

752 :デフォルトの名無しさん:2008/06/04(水) 17:00:20
gcc on cygwinでコンパイルできません。
以下の通りなのですが、パスが通ってないのでしょうか。
よろしければ解決策をご教授ください。

$ cat hello.c
#include<stdio.h>
int main(){
printf("Hello,world.\n");
return 0;
}
$ gcc hello.c
hello.c:1:18: stdio.h: No such file or directory
hello.c:5:2: 警告: no newline at end of file
$ set | grep ^PATH= | sed 's/:/\n/g' | grep -v ^\/cygd
PATH='/opt/xfce4/bin
/usr/local/bin
/usr/bin
/bin
/usr/X11R6/bin
/usr/lib/lapack'

753 :デフォルトの名無しさん:2008/06/04(水) 17:18:18
>>752
-v オプションを付けてコンパイルするとインクルードファイルのサーチパスが出る
こんな感じに↓

#include <...> search starts here:
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/include
 /usr/include
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api

そのどれか (たぶん/usr/include) に stdio.h が存在するか確認

754 :752:2008/06/04(水) 17:29:22
>>753
早いレスありがとうございます
-vオプションをつけて実行した結果、以下のログが得られました。

#include "..." の探索はここから始まります:
#include <...> の探索はここから始まります:
/usr/local/include
/usr/lib/gcc/i686-pc-cygwin/3.4.4/include
/usr/include
探索リストの終わり

上記のパスを確認したところ

$ ls /usr/include/
$ ls /usr/lib/gcc/i686-pc-cygwin/3.4.4/include/
README* gcj/ mm_malloc.h* stdbool.h* xmmintrin.h*
c++/ gpc-in-c.h* mmintrin.h* stddef.h*
emmintrin.h* iso646.h* objc/ syslimits.h*
float.h* libffi/ pmmintrin.h* unwind.h*
g2c.h* limits.h* stdarg.h* varargs.h*
$ ls /usr/local/include/
SDL/

となり、どうやらサーチパス上にstdio.hが無いようです。

755 :デフォルトの名無しさん:2008/06/05(木) 22:12:28
>>735
カレントにfoo.cある時はMakefile無しでも
make foo
だけでデフォルトルールでコンパイルしてくれるぜ
俺はalias使わずに$CFLAGS,$CPPFLAGS,$LDFLAGS,$LDLIBS設定してMakefile用意せずmake派

756 :デフォルトの名無しさん:2008/06/11(水) 02:37:50
cygwinのバージョンを古いのから、新しいのにアップデートさせたら、
コンパイルがかかる時間がかなり延びてしまった。
cygwinってアップデートしたら、コンパイル時間が伸びる場合ってあるの?

757 :デフォルトの名無しさん:2008/06/11(水) 08:50:19
cygwinつーか、gccのバージョンの問題じゃない?
gccは基本的にバージョンが上がるたびにコンパイルが遅くなってる。


758 :デフォルトの名無しさん:2008/06/11(水) 14:04:08
質問ですっ

現在MinGWにてC++を開発して
JNI連携でeclipseのJAVAで実行しようと考えています。
MinGWでdllを作って中を覗くと、
クラス名が「Java_HelloWorldJNI_sayHelloWorld@8」のように
「@+数字」が付いてしまいます。

こうなるとネイティブメソッド宣言がエラーで出来なくなっちゃいますよね?

このクラス名指定でエラー ⇒ public native String sayHelloWorld@8();

これを回避するには
『dllwrap --add-stdcall-alias』
このような形で指定する事を調べてわかりましたが
これをMinGWのどこで設定するのかがイマイチわからず。。。

Project>Export Makefileで作られたMakefileにも指定する所がなさそうですし。

759 :デフォルトの名無しさん:2008/06/11(水) 14:11:10
>>758
どうやってDLLを作っているですか? dllwrapで作っているわではないの?



760 :758:2008/06/11(水) 14:14:30
MinGW Developer Studio 2.05
を使用してDLLを作っています。

761 :デフォルトの名無しさん:2008/06/11(水) 15:17:09
MinGW Developer Studioは使ったことないからアドバイスできないや。


762 :デフォルトの名無しさん:2008/06/11(水) 15:23:31
C++側の話なので該当スレで聞いてください。

763 :デフォルトの名無しさん:2008/06/11(水) 15:40:21
C++でdllを作ってるわけじゃないから
C++スレ行ってもスレチ言われそうだな。

764 :デフォルトの名無しさん:2008/06/11(水) 16:04:53
このスレでいいよ、MinGWの使い方なんだから。
自分には答えられないけど。


765 :デフォルトの名無しさん:2008/06/11(水) 17:51:49
>>758
JNIはstdcallだから、そのままだと@がついてしまうようだね
DEFファイルを使ってもいいと思うが
--kill-atとか指定したら消えないか?


766 :758:2008/06/11(水) 19:49:30
でけたー!
>765さんありがとう!
なので記述しておきます。

MinGW Developer Studioの「関数名@数字」の「@数字」の消し方

1 MInGWの「Project>Export Makefile」にてMakefile作成

2 Makefileの27行目を下記のように「--kill-at,」を付け加える。
LDFLAGS = -pipe -shared -Wl,--output-def,$(OBJ_DIR)\hogehoge.def,--out-implib,$(OBJ_DIR)\hogehoge.dll.a

LDFLAGS = -pipe -shared -Wl,--kill-at,--output-def,$(OBJ_DIR)\hogehoge.def,--out-implib,$(OBJ_DIR)\hogehoge.dll.a

3 コマンドプロンプトでコンパイルに使用したいMakefileの階層に移動する。

4 コマンドプロンプトでMinGW Developer studioデフォルトインストールなら
「C:\MinGWStudio\MinGW\bin\mingw32-make.exe」を実行する。

5 Makefileの存在する階層にdll完成

結局MinGW Developer Studioの設定のみでは出来ませんでした。。。

オマケ
dllの中身を見るにはコレがベンリー!
Microsoft Visual Studio 6.0>Microsoft Visual Studio 6.0 ツール>
Dependency Walker

767 :デフォルトの名無しさん:2008/06/13(金) 01:17:54
758、ちゃんとまとめて、えらいな。質問者の鑑だ。

768 :756:2008/06/20(金) 01:14:17
>>757
なるほど。
確かに、GCCのバージョンは3.3から3.4ぐらいに上げたわ。
cygwinのバージョンをダウンさせずに、コンパイル時間を早くさせる方法はあるのかな・・

769 :デフォルトの名無しさん:2008/06/20(金) 01:37:44
CPUとHDDを速いものに替えることだろうなあ。

770 :756:2008/06/20(金) 02:57:53
>>769
ハード的に改造しないと無理か・・・ orz

771 :デフォルトの名無しさん:2008/06/20(金) 08:57:26
今日、gcc-4.3.0をcygwinからインストールしました。
ただ、間違えてC:/Tmpいかのgccを解凍したフォルダ内にインストールしてしまいました。
それで、一度アンインストールしてから再度別のフォルダにインストールしたいのですが、
アンインストールの仕方が調べてもいまいちわかりません。
どのようにすればよいでしょうか?

772 :デフォルトの名無しさん:2008/06/20(金) 12:06:28
make uninstall やってみた?

773 :デフォルトの名無しさん:2008/06/21(土) 03:35:12
やってみましたが、
the uninstall target is not supported in this tree

と出るのみです。

774 :デフォルトの名無しさん:2008/06/21(土) 12:36:09
>>771
手動削除でおk。

# make deinstall だったりしない?

775 :デフォルトの名無しさん:2008/06/24(火) 20:44:23
MinGW+Msysな環境をWindowsXP Pro SP2に構築したのですが、Cygwinに比べて非常に
お手軽で素晴らしいんですが、この環境にwgetを入れることは出来ませんか?
GNU Wgetの公式サイトからソース落としてきて
./configure
make したらエラーが出てコンパイルできませんでした・・・・。

776 :デフォルトの名無しさん:2008/06/24(火) 21:40:01
バイナリで良ければMinGW Utilitiesにある

777 :デフォルトの名無しさん:2008/06/24(火) 21:51:24
>>776
バイナリでいいです

http://sourceforge.net/project/showfiles.php?group_id=2435
ココの
wget-1.9.1.tar.gz
ですよね?
http://downloads.sourceforge.net/mingw/wget-1.9.1.tar.gz?modtime=1119444412&big_mirror=1
↑これ・・・・
しかしこれダウンロードしてもソースなんですけど?
しかも./configure make したらエラー・・・・

778 :デフォルトの名無しさん:2008/06/24(火) 22:13:03
wget-1.9.1.tar.gz をダウンロードして /usr/src に展開。
wget-1.9.1-mingwPORT.tar.bz2 をダウンロードして適当なところに展開。
cd wget-1.9.1/mingwPORT
sh mingwPORT.sh
質問には Download? と Unarchive? にNo を答えてビルド。
本当は自動でダウンロード&展開してビルドするはずだけどなんかうまく動いてないっぽい。

779 :デフォルトの名無しさん:2008/06/24(火) 22:17:38
しかしwget くらい MSYS Supplementary Tools
( http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=67879 )
あたりに入れて欲しいな…
MSYS-1.0.11 あたりで入らないかなー?

780 :デフォルトの名無しさん:2008/06/24(火) 22:21:00
>>777
> バイナリでいいです 

http://gnuwin32.sourceforge.net/packages/wget.htm
の Complete package (Setup) が良いかと。

781 :デフォルトの名無しさん:2008/06/24(火) 22:22:16
>>778
ありがとうございます!!!!
え〜と、本来なら人に聞かずにこういうの自分で分からないといけないと思いますが
一次情報源はどこでしょうか?出来ればポインタ等示していただければ・・・・

782 :デフォルトの名無しさん:2008/06/24(火) 22:23:43
>>780
ん?これは?これはMSYSとは無関係にコマンドプロンプト上で動いたりするのでしょうか?

783 :デフォルトの名無しさん:2008/06/24(火) 22:24:29
>>781
http://www.mingw.org/MinGWiki/index.php/mingwPORT

>>782
そーです。

784 :デフォルトの名無しさん:2008/06/24(火) 22:30:26
ぶっちゃけ mingwPORT まともにメンテナンスされてない気がするけどなー

785 :デフォルトの名無しさん:2008/06/24(火) 22:34:53
皆様色々ご教示ありがとうございました。
おかげさまでwgetが使えるようになりました。今回は先に作業を始めたと言う事と
せっかくMinGWとMSYSが入っているのでコマンドプロンプト版wgetは見送りました。
しかし別の環境で使う時は手軽にすぐ使えそうで、貴重な情報を頂きました。
本当にありがとうございました〜

786 :デフォルトの名無しさん:2008/06/24(火) 23:05:54
解決したようだから別にいいんだけど、「コマンドプロンプト版」ってどういう意味?
MinGW でビルドした実行可能ファイルは MSYS が無くても動くよ。
単独で動くという意味では mingPORT の wget も GnuWin32 の wget も同じ。

787 :デフォルトの名無しさん:2008/06/24(火) 23:22:59
>>786
ありゃ、そうだったんですか・・・
では、mingPORTのwgetとGnuWin32のwgetの違いとは何でしょうか?

788 :デフォルトの名無しさん:2008/06/24(火) 23:36:10
>>787
詳しく知らないけど当たっているパッチとかビルド時のオプションとかが違う程度じゃないかな。
http://gnuwin32.sourceforge.net/summary.html によると MinGW でビルドされているようだし。

789 :デフォルトの名無しさん:2008/06/25(水) 12:03:39
mingwportの件、sourceforgeのダウンロードURL変更にスクリプトが追随してない模様。
mirrors.sfファイルの最終行を
DOWNLOADURI=${DOWNLOADURI}.dl.sourceforge.net/sourceforge/${PACKAGE}
に書き換えたらmingwPORT.shで自動ダウンロードできた。

790 :デフォルトの名無しさん:2008/07/08(火) 22:03:08
>>710
zshからvi起動してCのソースを書き書きしながらmakeすると
vc++のcl.exe呼び出してコンパイルしてくれるようなことできますか。
シームレスっていうのは、そういうのを言うんだけど。

791 :sage:2008/07/08(火) 23:53:16
mingw5.1.4で--exec-charsetオプションが使えないのですが、
どうにか使えるようにはできないのでしょうか?

792 :デフォルトの名無しさん:2008/07/09(水) 20:14:49
>>790
普通に出来るんじゃね?
これまでの流れ読んでないけど、790のことに関しては。

793 :デフォルトの名無しさん:2008/07/09(水) 20:57:16
無理

794 :デフォルトの名無しさん:2008/07/09(水) 23:42:37
>>793
何でよ?
Makefile書いといてviで:!makeでいいべ。

795 :デフォルトの名無しさん:2008/07/10(木) 00:16:02
先生ー
MSYS 1.0.10のmsys.bat叩いてもコマンドプロンプトが一瞬表示されてもう一回コマンドプロンプトが一瞬表示されてそのあとなんも起こらないんだけどこれどーすればいいの?
コマンドプロンプト手動で出してmsys.bat呼んでやるとちゃんと起動されるんだけど…

環境はVista SP1 Ultimate

796 :デフォルトの名無しさん:2008/07/10(木) 00:27:50
>>794
>>710をよく読めよ

797 :デフォルトの名無しさん:2008/07/10(木) 00:28:40
1. 麻縄を輪状にして天井から吊す
2. 陰茎をその輪の中に通してユートピア

798 :デフォルトの名無しさん:2008/07/10(木) 09:23:22
妥協案

WindowsホストなVirtualBox上のLinux仮想マシンにWine/VC++/Cygwinをインストールして
ホストの端末エミュレータから仮想マシンにログイン

Linux/Wine/VC++/CygwinホストなVirtualBox上のWindows仮想マシンの端末エミュレータから
ホストにログイン

ただしWineでVC++とCygwin使えるかは知らない。

799 :デフォルトの名無しさん:2008/07/10(木) 22:46:59
簡単にVirtualBox使えばいいじゃん的な事言っている人いるけどさ、
VirtualBoxっつか仮想PCはかなり重いぞ。その点もちっとよく考えろよと。

800 :デフォルトの名無しさん:2008/07/10(木) 22:56:31
>>799
意外に軽いぞ VirtualBox。
cygwinでGNOME動かすと使い物にならないが、VirtualBoxならかなりいい感じ。

ただ、cygwinとVirtualBoxは全然別物だよ。
Windowsの便利なツールとして使えるのがcygwin、
Windows上でただ単に別のOS動かして満足感を味わうのがVirtualBox。

801 :デフォルトの名無しさん:2008/07/13(日) 13:25:27
えー、話の腰を折るようで恐縮ですが、

やねう企画代表者やねうらお(本名・磯崎元洋)が
・ソフトウェアの不正コピーを行っていた
・労働契約上の違反をしていた
・他は不正コピーしていないことを証明しようとしてエロゲーのパッケージを発見し、
 写真に撮ってアップロードしようとした。
http://d.hatena.ne.jp/pmoky/19000106
やねう企画の裏側(競馬の詐欺ソフトの製作現場)
http://d.hatena.ne.jp/pmoky/20060510
http://d.hatena.ne.jp/pmoky/20060511
http://d.hatena.ne.jp/pmoky/20060512
有限会社やねう企画(所在地・大阪府八尾市末広町2−1−2)が計画倒産
http://www.sia.go.jp/~osaka/zenso/19.09.pdf

やねうらおプロフィール
性格:友達から「チンピラ」「ヤクザ」と呼ばれている。前世で殺人鬼だった宿業を背負っているという妄想(自覚)あり。
最終学歴:専門学校卒
主な職歴:有限会社センキ(凌辱系アダルトゲームの製作会社)を経て独立、有限会社やねう企画を設立、2006年に計画倒産
代表作:『夜這いマニア』『盗撮マニア』『お楽しみCDシリーズ』『競馬詐欺ソフト』『BM98』

やねうらお語録
>「ワシのほうが潔癖やと思うんやけどな。
>絶対に違法コピーのソフトしか使わんし。
>たとえば強盗に入ったときに、ちょっとかわいそうになって
>十万円だけ残してったら、おかしいやろ?
>自分の『強盗する』という意思に対して矛盾やろ?
>だからワシは、一個も買ったソフトを使ったことがない!!」


802 :デフォルトの名無しさん:2008/07/13(日) 13:27:31
最近、やねうらおは弓月(>>801)とか言う真性のキチガイに絡まれている

【自作自演】弓月城太郎氏に関するまとめ【神秘体験】
http://d.hatena.ne.jp/yaneurao/20080619

803 :デフォルトの名無しさん:2008/07/14(月) 12:42:37
リンクに関する質問なのですが、オブジェクトのリンク順番によって
Undefinedエラーが発生してしまいます。
例えば、"ld a.o b.o"ならOKで、"ld b.o a.o"だとエラーが発生するといった具合です。

リンク順番を適切(?)に設定しなければならないのは
CygwinかLinuxの仕様なのでしょうか?


804 :デフォルトの名無しさん:2008/07/14(月) 12:47:02
Unix系では昔からそうだったと思うが。そうでないと、ライブラリ内の同名関数とバッティングしてしまうからね。

805 :デフォルトの名無しさん:2008/07/14(月) 12:47:42
>>803
Linux だと適当に並べても面倒見てくれる。
cygwin や mingw だとリンク時に参照関係考慮して並べないとだめ、
ライブラリのリンクオプションの順番も重要。

806 :デフォルトの名無しさん:2008/07/14(月) 13:52:31
>>804-805
CygwinというかUnix系自体に触ったことがなかったので
とても迷ってしまいました。ありがとうございます。

807 :デフォルトの名無しさん:2008/07/14(月) 23:42:45
vista64にしたらmsysがうまくうごかねー・・・。なんかあちこちで
スタックエラーで落ちまくり、Permission Deniedで止まりまくりんぐ。
長い死のロードになりそうだぜ・・・ぐへへ・・・(死

808 :デフォルトの名無しさん:2008/07/16(水) 12:11:57
誰か助けてください。Cygwin上でgcc4.3.3をmakeしようとしたら、

/home/***/gcc-4.3.1/i686-pc-cygwin/libstdc++-v3/include/ext/pb_ds/hash_policy.hpp:57:87:
error:ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp: No such file or directory

というエラーが出て止まってしまいます。たしかにhash_policy.hppの57行目には
#include <ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp>があります。
しかしその場所を見てみると
\i686-pc-cygwin\libstdc++-v3\include\ext\pb_ds\detail\resize_policy\hash_load_check_resize_trigger_size_base.hpp
という名前のショートカットはありますが、そのリンク先
\libstdc++-v3\include\ext\pb_ds\detail\resize_policy\hash_load_check_resize_trigger_size_base.hpp
のファイルがありません、リンク切れになっています。

単にgcc4.3.3を解凍してconfigure & make下だけなのですが何かインストールが足りないのでしょうか?

809 :デフォルトの名無しさん:2008/07/16(水) 16:38:22
>>808
ペニス

810 :デフォルトの名無しさん:2008/07/16(水) 20:39:32
ffmpeg-checkout-2008-07-16のFFMPEGを下記のオプションでconfigureするとエラーが出てしまいます。
何が原因なのでしょうか?アドバイスをおねがいします。
http://ffmpeg.mplayerhq.hu/ffmpeg-checkout-snapshot.tar.bz2

./configure \
--disable-shared \
--enable-static \
--enable-memalign-hack \
--enable-w32threads \
--enable-postproc \
--enable-libmp3lame \
--enable-libamr_nb \
--enable-libfaad \
--enable-libfaac \
--enable-liba52 \
--enable-libx264 \
--enable-libxvid \
--enable-avfilter \
--enable-gpl \
--extra-cflags=-I/static2/include \
--extra-ldflags=-L/static2/lib \
--disable-debug

エラー
./configure: line 196: pr: command not found
./configure: line 196: pr: command not found
libamr is nonfree and --enable-nonfree is not specified.
If you think configure made a mistake, make sure you are using the latest
version from SVN. If the latest version fails, report the problem to the
ffmpeg-user@mplayerhq.hu mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.err" produced by configure as this will help
solving the problem.

811 :デフォルトの名無しさん:2008/07/16(水) 20:43:53
ffmpeg-checkout-2007-07-20では上手くいくのですが
新しいものでないとavfilterが使えないのです。
ライブラリ?はぜんぶmakeに性交しているので、最後のffmpegで行き詰まっています。

812 :デフォルトの名無しさん:2008/07/16(水) 20:59:23
エラーメッセージそのままじゃないか
prコマンドはmingw32のcoreutilsあたりにはいっているはず
libamrは--enable-gplと矛盾するので使えない

813 :デフォルトの名無しさん:2008/07/16(水) 21:11:30
アドバイスありがとうございます。
解決できそうです。
l
ibamr is nonfreeとありますね。
とりあえず、--enable-libamr_nbを外しました。

それとpr.exeが見当たらないので探してきます。

814 :デフォルトの名無しさん:2008/07/17(木) 11:51:48
>>808の件、解決しました。
どうやらwindowsで解凍したときに、ファイル名が長いことが原因なのか
ファイル名の末尾が化けたようです。
cygwinのコマンドで解凍したら正常にファイルがありました。
使用した解凍ソフトはLaplus1.53でした。多分バグだと思われます。

815 :デフォルトの名無しさん:2008/07/17(木) 11:57:10
いいえ、仕様です。

816 :デフォルトの名無しさん:2008/07/17(木) 19:02:18
WinFSが実用化してたらこんなしょぼい仕様とはおさらばのハズだったのに

817 :デフォルトの名無しさん:2008/07/17(木) 19:42:52
もしかしてCygwinに付属しているg++(非GCC)って
wchar.hインクルードしても、wprintfやらwscanf使えませんか?

#g++ -v
Reading specs from /usr/lib/gcc/i686-pc-cygwin/3.4.4/specs
Configured with: /usr/build/package/orig/test.respin/gcc-3.4.4-3/configure --ver
bose --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib --libe
xecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-langu
ages=c,ada,c++,d,f77,pascal,java,objc --enable-nls --without-included-gettext --
enable-version-specific-runtime-libs --without-x --enable-libgcj --disable-java-
awt --with-system-zlib --enable-interpreter --disable-libgcj-debug --enable-thre
ads=posix --enable-java-gc=boehm --disable-win32-registry --enable-sjlj-exceptio
ns --enable-hash-synchronization --enable-libstdcxx-debug
Thread model: posix
gcc version 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)


818 :デフォルトの名無しさん:2008/07/17(木) 23:32:05
Yes
諦めてMinGW入れなさい。

819 :デフォルトの名無しさん:2008/07/18(金) 00:07:30
同ディレクトリにある5つのフォルダのmakeを自動的に実行するにはどうしたらいいのですか?


dir1/makefile
dir2/makefile
dir3/makefile
dir4/makefile
dir5/makefile

820 :デフォルトの名無しさん:2008/07/18(金) 00:15:31
>>819
cd dir1 && make

821 :デフォルトの名無しさん:2008/07/18(金) 00:41:59
>>819
for foo in dir[1-5]; do pushd $foo; make; popd; done

822 :デフォルトの名無しさん:2008/07/18(金) 11:16:33
>>820
>>821
ありがとぅ・

823 :デフォルトの名無しさん:2008/07/18(金) 11:41:47
Cygwin + Gcc 4.3.1でOpenMPプログラミングをしようとしたら、
#include文でomp.hがないと言われてしまいました。

gccのconfigureのオプションが足りなかったのでしょうか?
誰か教えてください。

824 :デフォルトの名無しさん:2008/07/18(金) 11:54:33
omp.hがない

825 :デフォルトの名無しさん:2008/07/18(金) 16:33:31
宿題スレでみた /dev/pts と言うのをcygwinで使いたいのだけど、
何かセットアップが必要のようで、わかりません。
/devを見てみると、
stdinとかstdoutと言うのはあるけど、ptsと言うのは見当たりません。
どうすると、使えるようになりますか?

826 :質問です。:2008/07/18(金) 16:56:11
>>824
Gcc 4.3にomp.hは入っていないのですか?
4.2にしか入っていないのですか?

827 :デフォルトの名無しさん:2008/07/18(金) 18:22:26
>>826
omp.hはgccの付属物じゃないよ。OpenMPの付属物。


828 :デフォルトの名無しさん:2008/07/18(金) 22:14:32
>>823

--enable-libgomp は指定した?


829 :デフォルトの名無しさん:2008/07/19(土) 01:16:07
>>828
そんなオプションあったんすか!?
configureの説明書きには--disable-libgompしかないから
デフォルトかと思ってました・・・

あ〜、また7時間makeし直しか・・・orz


830 :デフォルトの名無しさん:2008/07/19(土) 02:10:28
>>829
いや、だからおまいの環境、OpenMPのライブラリとヘッダがインストールされてないだろ、と。

831 :デフォルトの名無しさん:2008/07/19(土) 12:30:07
>>830
gcc4.3.1の中にomp.h.inファイルがありましたので、
多分コンパイルの対象外にされているんだと思います。
何かのconfigureオプションが足りない?
続きはOpen MPスレで質問させていただきたいと思ってます。

832 :デフォルトの名無しさん:2008/07/28(月) 12:31:05
趣味を兼ねてアセンブリの勉強を行いたいと思いますが、
cygwin環境上ではgas/nasm/masmと選択肢がいくつかあります。

nasmがLinuxにおいて標準のアセンブラとなっているようですが、
gasも捨てがたいし、文法なども違うので選択に迷っております。

「とりあえずこれから始めれば無難だよ」というアセンブラを
ご教授いただきたく書き込ませていただきました。

833 :デフォルトの名無しさん:2008/07/28(月) 12:53:46
私が教授するならgasだが、教示するならnasmかな。

834 :デフォルトの名無しさん:2008/07/28(月) 20:34:27
CASL

835 :デフォルトの名無しさん:2008/07/28(月) 23:12:55
ハンドアセンブル

836 :デフォルトの名無しさん:2008/07/29(火) 11:32:16
プログラム初めて2日なんですけど
MINGWにはDLLを読み込む関数はないんですか?
どうしたらいいんですか?

837 :デフォルトの名無しさん:2008/07/29(火) 12:18:44
普通に #include <windows.h> して LoadLibrary すればいいのでは

838 :デフォルトの名無しさん:2008/07/29(火) 12:55:47
そもそも暗黙的リンクだとだめなの?

839 :デフォルトの名無しさん:2008/07/29(火) 13:48:51
dlfcn.hがないの

840 :デフォルトの名無しさん:2008/07/29(火) 15:11:55
MinGWはWin32APIしか使えないよ
POSIXが欲しけりゃcygwin

841 :デフォルトの名無しさん:2008/07/29(火) 15:42:52
よくわからないからcygwinにします

842 :デフォルトの名無しさん:2008/07/29(火) 20:16:46
使ってる教材がUnixやLinuxプログラミング関連のものならCygwinでいいが
soじゃなくDLLって言ってるところが気になる。

843 :夏厨:2008/07/29(火) 20:21:03
CYGWiNにGCC4.2入れる方法教えろ

844 :デフォルトの名無しさん:2008/07/29(火) 20:27:45
gcc4.2をダウンロードして展開して./configureしてmake install

845 :夏厨:2008/07/29(火) 20:41:24
DURON800MHZじゃ時間かかりそうじゃん
代わりにコンパイルしてよ


846 :夏厨:2008/07/29(火) 20:56:01
ひゃはああああああああああああああwwwwwwwwwwwwwwww
夏だぜwwwwwwwwwwwwwww

847 :デフォルトの名無しさん:2008/07/29(火) 22:00:44
NOMEとKDEが糞すぎてstartxする気になれません><

848 :デフォルトの名無しさん:2008/07/29(火) 22:18:33
GCC3.xx、GCC4.xxで別にコンパイルしたライブラリとかを混在させて使用したらあかんのですか?

849 :デフォルトの名無しさん:2008/07/29(火) 22:43:38
>>848
Cのライブラリなら問題ないはず。C++のは問題ありあり。


850 :デフォルトの名無しさん:2008/07/30(水) 00:17:33
>>849
ありがとうです・

851 :デフォルトの名無しさん:2008/07/30(水) 09:34:27
C++はマジつかえん言語だな。
ソースレベルじゃないと再利用できないよね、実質

852 :デフォルトの名無しさん:2008/07/30(水) 10:19:09
お前のが使えないよ

853 :デフォルトの名無しさん:2008/07/31(木) 21:46:14
msys と migw で configure や make するとPCのメモリーがどんどん減っていきます。
検索したら下記のように、自分と同じ現象がありましたが、いずれも解決していないようです。

http://www.bookshelf.jp/2ch/unix/1066042212.html
 #688〜
https://sourceforge.net/forum/message.php?msg_id=3403300
http://d.hatena.ne.jp/ranekov/20061017

何か解決策はありますか?

854 :デフォルトの名無しさん:2008/08/03(日) 02:49:21
Cygwinでconfigure; makeするときも空きメモリが減るね
Win版のmake辺りがおかしいんだろうか

855 :デフォルトの名無しさん:2008/08/03(日) 07:15:05
その、空きメモリが減るという現象はどうやって確認したのかね。
まさかとは思うが、「タスクマネージャのコミットチャージの数字が減らないから」なんて言わないよな。

856 :デフォルトの名無しさん:2008/08/03(日) 13:56:38
log4cxxについての質問があります。

log4cxx.propertiesに以下の様に記述し、
==================================================
log4j.rootLogger=DEBUG, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
(以下略)
==================================================

log4cxx::PropertyConfigurator::configure("log4cxx.properties");
として読み込んだ場合に
==================================================
Could not instantiate class [org.apache.log4j.ConsoleAppender].
Class 'org.apache.log4j.ConsoleAppender' not found
Could not instantiate appender named "A1".
==================================================
とエラーが発生します。
何かパス等を設定する必要があるのでしょうか?

なお、Cygwin上でgcc 3.4.4 にてビルドしました。
log4cxxのバージョンは 0.9.7です。
ソース等は下記のサイトを参考にしました。
http://logging.apache.org/log4cxx/

857 :856:2008/08/03(日) 17:22:36
log4cxxのバージョンを0.10.0にしたら動作しました。
再検証のために0.9.7に戻すの面倒クサス(´・ω・`)

858 :デフォルトの名無しさん:2008/08/04(月) 09:21:58
http://www.equation.com/servlet/equation.cmd?call=fortran
このページからgcc 4.3.1をダウンロードしてインストールしたのですが、
アンインストーラーが付いてません。コンパネのプログラムの追加と削除
にも登録されてません。レジストリに何やら登録してるみたいだし、
どうやったら完全にアンインストールできるのでしょうか。ご教示下さい。

859 :デフォルトの名無しさん:2008/08/04(月) 10:35:57
しなくていいよ

860 :デフォルトの名無しさん:2008/08/04(月) 10:36:53
したいんです

861 :デフォルトの名無しさん:2008/08/04(月) 11:15:44
>>858
Windows他、その怪しげなgccをインストールするまでにインストールした全てを再インストール。

862 :デフォルトの名無しさん:2008/08/04(月) 13:19:06
あきらめます

863 :デフォルトの名無しさん:2008/08/04(月) 18:31:33
中身は単なるMINGWのようだし
fairuをsakujoして、追加されたpasuもsakujoするだけだがな・・・
何をどのように理解してrejisutoriに登録されたなどと言っているのかは興味深いところだが

864 :デフォルトの名無しさん:2008/08/05(火) 04:16:37
>>855
もしかしてバカですか?
コミットチャージの数字が減るのが正常でしょ。
Windows の使い方くらい覚えろよ。恥ずかしいヤツだな。

865 :デフォルトの名無しさん:2008/08/05(火) 06:26:57
読解力の欠如した馬鹿が一人……

866 :デフォルトの名無しさん:2008/08/05(火) 10:25:38
Vistaならそうなんだけどねぇ

867 :デフォルトの名無しさん:2008/08/05(火) 11:58:24
アプリを起動する。
コミットチャージの数字が増える。
アプリを終了する。
コミットチャージの数字が減る。
別のアプリを起動する。
コミットチャージの数字がまた増える。
そのアプリを終了する。
コミットチャージの数字がまた減る。
これの繰り返し。
もし減らなかったらリソースを食いつぶして自滅するでしょが。
UNIX屋って、そんな基本知識も無かったのか?
バカじゃないの?

868 :デフォルトの名無しさん:2008/08/05(火) 12:14:50
ん?
>855は、「空きメモリが減ると言う現象をどうやって確認したのか」>854に聞いているだけでしょ。
コミットチャージで判断できると思ってないだけなんじゃない?

869 :デフォルトの名無しさん:2008/08/05(火) 15:38:33
>>864
落ち着いて読めよ

870 :デフォルトの名無しさん:2008/08/05(火) 16:05:34
だからぁ、タスクマネージャのコミットチャージが減るという事で確認したんですが、何か?

逆にぃ、タスクマネージャのコミットチャージ以外でどうやって確認しろと?
もちろん、ネットを捜せば各種アプリケーションがゴロゴロ転がってますが、
CTRL+DEL押してタスクマネージャのコミットチャージを見るだけで簡単に確認できるものを
わざわざツールダをウンロードしたりインストールしたりって、バカじゃね?
メモリーが解放されない、ていうデリケートな問題なのに、変なアプリをインスコして
かえって問題の特定を困難にするだけじゃん。
ちなみに、Evelest と Process explorer は以前からインスコしてたんでソレでも確認したが
問題解決にはならん。メモリーが開放されないという事実を確認しただけじゃ
問題解決にはならんのだよ。

871 :デフォルトの名無しさん:2008/08/05(火) 16:06:05
UNIX屋ってスキル低いねぇ

872 :デフォルトの名無しさん:2008/08/05(火) 17:58:33
>>870
いいから落ち着け。火病りすぎだ。


873 :デフォルトの名無しさん:2008/08/06(水) 02:35:18
>その、空きメモリが減るという現象はどうやって確認したのかね。
>まさかとは思うが、「タスクマネージャのコミットチャージの数字が減らないから」なんて言わないよな。

晒しとこ

874 :デフォルトの名無しさん:2008/08/06(水) 13:28:28
夏だな

875 :デフォルトの名無しさん:2008/08/06(水) 17:23:27
昔あったVBユーザがC/C++ユーザを挑発してるコピペに似てるなw

876 :デフォルトの名無しさん:2008/08/07(木) 02:07:26
>>855
知ったかぶりして他人を煽ろうとしたところが
とんでも無い墓穴を掘っちゃったね。
おまい恥ずかしいヤツだな。もしかして中学校2年生か?
コイツのせいでスレが荒れてしまったな。

877 :デフォルトの名無しさん:2008/08/08(金) 16:52:49
ここまで俺の自演

878 :デフォルトの名無しさん:2008/08/08(金) 18:29:51
IDが無いからって火病り杉

879 :デフォルトの名無しさん:2008/08/09(土) 09:55:37
/usr/bin/make ./26104-700_ANSI_C_source_code.zip
make[1]: Entering directory `/c/cygwin/home/hoge/amrnb-7.0.0.0'
rm -f ./26104-700_ANSI_C_source_code.zip ./26104-700.doc
cd . && /usr/bin/unzip 26104-700.zip
UnZip 5.52 of 28 February 2005, by Info-ZIP. Maintained by C. Spieler. Send
bug reports using http://www.info-zip.org/zip-bug.html; see README for details.

Usage: unzip [-Z] [-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir]
Default action is to extract files in list, except those in xlist, to exdir;
file[.zip] may be a wildcard. -Z => ZipInfo mode ("unzip -Z" for usage).

-p extract files to pipe, no messages -l list files (short format)
-f freshen existing files, create none -t test compressed archive data
-u update files, create if necessary -z display archive comment
-x exclude files that follow (in xlist) -d extract files into exdir
(略

Examples (see unzip.txt for more info):
unzip data1 -x joe => extract all files except joe from zipfile data1.zip
unzip -fo foo ReadMe => quietly replace existing ReadMe if archive file newer
chmod og-w ./26104-700.doc
/usr/bin/chmod: cannot access `./26104-700.doc': No such file or directory
make[1]: *** [26104-700_ANSI_C_source_code.zip] Error 1
make[1]: Leaving directory `/c/cygwin/home/hoge/amrnb-7.0.0.0'

makeするとこんな感じのエラーが出るんですが
何処を書き直したら直るんでしょうか。



880 :デフォルトの名無しさん:2008/08/09(土) 10:14:11
cd . && /usr/bin/unzip 26104-700.zip

cd . && /usr/bin/wget -N http://www.3gpp.org/ftp/Specs/archive/26_series/26.104/26104-700.zip


881 :デフォルトの名無しさん:2008/08/09(土) 10:46:36
なにやらUnzipが機能してないようなんです。
Dosで使用すると解凍してくれるんですが、MinGwでやると
>>879
の説明文みたいなのがダラダラ流れるだけなんですが、

ftp://ftp.info-zip.org/pub/infozip/WIN32/unz552xn.exe
からとってきたものを
unz552xn.exe -d /usr/bin 
でインストールしたんですが、何か間違ってたんでしょうか。


882 :デフォルトの名無しさん:2008/08/09(土) 10:49:31
>>880
駄目でした。


883 :デフォルトの名無しさん:2008/08/09(土) 11:19:37
こっちで
http://downloads.sourceforge.net/gnuwin32/unzip-5.51-1-bin.zip?modtime=1108413609&big_mirror=1

884 :デフォルトの名無しさん:2008/08/09(土) 11:26:52
コーデックみたいだが、wgetも必要みたいだな
\MinGW\binにunzipとwgetを放り込んでおけばおkじゃね

885 :デフォルトの名無しさん:2008/08/09(土) 11:36:45
Wgetは入れたらちゃんと動いてくれました。
>>883
これはBinの中身だけBinに入れればいいんでしょうか
msys/1.0の中に丸ごといれるのですか?


886 :デフォルトの名無しさん:2008/08/09(土) 11:39:27
unzip.exeをbinに入れる。

887 :デフォルトの名無しさん:2008/08/09(土) 12:06:18
前と同じですタ。
再インストールした方がいいんでしょうか。


888 :デフォルトの名無しさん:2008/08/09(土) 13:03:49
MinGW
MSYS
msysDTK


ぜんぶ入れてる?

889 :デフォルトの名無しさん:2008/08/09(土) 13:04:38
configureからやり直すとか

890 :デフォルトの名無しさん:2008/08/09(土) 13:16:41
試したら普通にコンパイルできたぞ
何かが足らないか、おかしいか

891 :デフォルトの名無しさん:2008/08/09(土) 15:10:38
>>888
djgppとbccも入れてる

892 :デフォルトの名無しさん:2008/08/09(土) 21:58:24
cygwinも入れてる

893 :デフォルトの名無しさん:2008/08/09(土) 23:30:00
ちなみにamrnb-7.0.0.0のフォルダの中に26104-700.zipはダウンロードされてる?

894 :デフォルトの名無しさん:2008/08/09(土) 23:31:33
http://arrozcru.no-ip.org/ffmpeg_wiki/tiki-index.php?page=amr_nb

895 :デフォルトの名無しさん:2008/08/09(土) 23:33:11
cygwinでやってみれば?

896 :デフォルトの名無しさん:2008/08/09(土) 23:40:49
MSYSインスコMinGWのパス
C:\MinGWではなくC:/MinGW

897 :デフォルトの名無しさん:2008/08/09(土) 23:59:52
Win32 Pathしか解釈しない版のunzipを入れるな

898 :デフォルトの名無しさん:2008/08/10(日) 01:13:07
おまいら優しいな

899 :デフォルトの名無しさん:2008/08/10(日) 06:32:56
>>883
これで問題ないな

900 :879:2008/08/10(日) 19:12:00
win入れなおしてみたらアクチ云々でdkfまおsぢjごあいsdfさ
となったので、もう一度インストールからやり直してみます。


901 :デフォルトの名無しさん:2008/08/10(日) 19:52:11
1、MinGW+MSYS

2、CYGWIN

3、makeのバージョンを変えてみる

902 :デフォルトの名無しさん:2008/08/10(日) 20:31:35
>>894
最初からこれでやってたんですが、Unzipがどうしても動作してくれないです。
インスコしなおしても結局同じでした・・・

>>897
そういうUnzipはどこにあるんでしょうか?

Cyswin入れてみます

903 :デフォルトの名無しさん:2008/08/10(日) 22:12:40
gcc環境なんだから、ほしいプログラムはソースコード入手して自分で
コンパイルするのを覚えたほうがいい。
あとあと役に立ちまくる。

904 :デフォルトの名無しさん:2008/08/10(日) 22:20:54
やってみます。

905 :デフォルトの名無しさん:2008/08/10(日) 22:22:36
>>903
CygwinやMinGWだと、固有の癖があり過ぎて勉強にならない。

CygwinでSubversion1.5.1をビルドしようとしたらなかなか通らず、
1.4.6のCygwinパッチを参考に俺パッチを作成してようやく突破したら、
その数日後に正式パッケージが出て泣いた。

906 :デフォルトの名無しさん:2008/08/10(日) 23:42:05
>>883
このunzipで普通に動くぞ?
amrnbのmakeはMinGW+MSYS、cygwinどっちでも通った。
MinGWの環境がおかしいんだと思う。


検索してたら↓にいろんなライブラリが入ったパッケージをみつけたから、>>894のunzip加えてやってみたらどう?
ttp://up-cat.net/cgi-bin/wiki/%BA%A3%B9%B9MinGW%28A%29%C7%AD%B2%CA%B8%A6%B5%E6%BD%EA%A5%D1%A5%C3%A5%AF.html

907 :デフォルトの名無しさん:2008/08/11(月) 00:33:25
MinGW-5.1.4.exe
MSYS-1.0.10.exe
msysDTK-1.0.0.exe
全部インストールしてるんですが、なんか方法間違ってるんでしょうかね・・・
CygwinもAllにして全部入れちゃいました。

Cygwinでやってみます

908 :デフォルトの名無しさん:2008/08/11(月) 00:45:58
いやだから、違うunzip.exeがPATHの優先度の高い位置にあるんだよ。
HDD内からunzip.exeを検索してみ。

909 :デフォルトの名無しさん:2008/08/11(月) 01:31:11
あああああああ、そうだったんですか。
勘違いでした、>>908の教えを受けてなんとなくIpconfig打ったら普通に
Dosコマンド使える事を知った・・

/c/msys/1.0/bin/unzip.exe /c/msys/1.0/home/hoge/test.zip ○
/c/msys/1.0/bin/unzip.exe test.zip ○
unzip.exe /c/msys/1.0/home/etoh/Foltid132.zip X
/bin/unzip.exe /c/msys/1.0/home/etoh/test.zip X

という結果でした。結局フルパスでUnzipしないと駄目という結果に。

てことはCygwinのUnzip使ってたって事でしょうか。
でもCygwinのUnzipは普通に解凍してくれてたんですが。

これどうやったら直るんでしょうか。
環境変数には特に何ものってないんですけど。でも/usr/local/binってなんでしょうか。
そんなディレクトリはないんですが。
$ echo $PATH
.:/usr/local/bin:/mingw/bin:/bin:/c/WINDOWS/system32:/c/WINDOWS:/c/WINDOWS/System32/Wbem:/c/Program Files/Microsoft SQL Server/90/Tools/binn/:/c/Program Files/TortoiseSVN/bin

UnzipのありかはCygwinとMsys以外にはなぜかC:\WINDOWS\PrefetchにUNZIP.EXE-0BF325C5.pfとUNZIP.EXE-30346CEE.pfって
ファイルがありました。先読み用らしいんですが、デリってやっても結果は変わらず。

910 :デフォルトの名無しさん:2008/08/11(月) 02:46:03
msysかcygwin上でwhich unzip
つーか、混在環境は使用者を混乱させるだけだぞ
どっちかにしろや

911 :デフォルトの名無しさん:2008/08/11(月) 08:20:34
which unzipは/binの中だけでした。
Cygwinは削除して、Cの中を検索しても今はMsysの中にしかないんですが、
相変わらずフルパス指定ではちゃんと動くんですが、unzipや/bin/unzipでは
説明文がズラっと出るだけで動いてくれません・・・・。

UnzipをソースからMakeしてインストールしてみたんですが、まったく同じ結果に。
インストールの仕方が悪かったんでしょうか。

912 :デフォルトの名無しさん:2008/08/11(月) 09:19:52
/usrはルートディレクトリ。

unzipはC:/msys/1.0/binではなく、C:/MinGW/binに入れろって。
それでmakeすれば通る。

何やっても駄目なら、MinGW、MSYSも削除して>>906のパックでやりな。
試したらできたから。

913 :デフォルトの名無しさん:2008/08/11(月) 19:06:52
>>912
結果は同じだったんですが、
>>906
のと自分のを見比べてみてmsys/1.0/mingwというフォルダの中身が入ってる事に気づきました。
しかもわんさか。
んで、この中のbinフォルダを作成してにUnzip入れたら動きました・・・
なんかとんでもないポカをやってたようですが、なんでここのBinならちゃんと動くのか未だわかりません・・・

914 :デフォルトの名無しさん:2008/08/11(月) 19:57:01
msysの下にmingwは入れないなw
パックにしているからそうしたんだろうけどw


915 :デフォルトの名無しさん:2008/09/01(月) 14:30:24
makefileに関する質問なのですが、依存関係などのファイル名に
C:/hoge.cといったWindows形式を指定すると
*** target pattern contains no `%'.
といったエラーが発生してしまいます。
/cygdrive/C/hoge.cとするとエラーは回避できるのですが、
C:/hoge.cのままでmakeできるようにする方法はないのでしょうか。

916 :915:2008/09/01(月) 14:37:20
ググってたら3.81ではサポートしなくなった的なことが書いてあったので
3.80に戻してやってみます。

917 :デフォルトの名無しさん:2008/09/01(月) 19:06:11
素直にVC使いなさいよ

918 :デフォルトの名無しさん:2008/09/01(月) 21:12:18
>>915
mingwのmakeつかえば?

919 :デフォルトの名無しさん:2008/09/01(月) 21:46:57
>>915
cygpathはだめ?

920 :デフォルトの名無しさん:2008/09/01(月) 22:05:52
こういうことね。一応念のため。
a.exe : $(shell cygpath C:/hoge.c)
  gcc $<

921 :デフォルトの名無しさん:2008/09/02(火) 04:46:10
qucsでデジタル回路のシミュレーションをしようと
cygwin でfreehdlをコンパイルしていれました
そしてqucsでシミュレーションを実行しようとするとそのコンパイル時にg++から
ld: cannot find -lieeeと怒られてしまいます
libieeeとかってどっかにあるんですか?
libcに含まれてるみたいなんですが、libcはcygwinではコンパイルできないようでした

922 :デフォルトの名無しさん:2008/09/02(火) 22:33:18
>>921
面白いツールの紹介ありがとう。
俺は普通に
./configure
make
make install
でうまくいった。
与えられる情報としては
 libieee.aは俺のPCに存在しない
だけかな。

923 :デフォルトの名無しさん:2008/09/04(木) 20:49:29
超ど初心者の質問です。
MinGWをインストールして、pathの設定もして、ソースファイルも作って、
コマンドプロンプトに>gcc<ソースファイル名.cpp>
って入れると、
構文が間違っていますって言われてしまいます。
入門書見ながらやってるんですが、
入門書にはgccコマンドを用いて〜とか書いてあります。
gccコマンド=コマンドプロンプトにgccと入力した状態と考えていいんでしょうか?

924 :デフォルトの名無しさん:2008/09/04(木) 21:25:48
わかりせん。
コマンドプロンプトの内容をそのままはってくれ。

925 :デフォルトの名無しさん:2008/09/04(木) 21:31:34
もちろん
>gcc<ソースファイル名.cpp>
を文字通りに入力した訳じゃないんだろ?

926 :デフォルトの名無しさん:2008/09/04(木) 21:47:00
>>924
>>925
え?え?
も、文字通り入力しましたけど・・・・
違うんですか?
恥さらしの悪寒・・・。

927 :デフォルトの名無しさん:2008/09/04(木) 21:48:31
>>926
ソースのファイル名がtest.cppだったら
gcc test.cpp
って入力してEnterだよ。



928 :デフォルトの名無しさん:2008/09/04(木) 21:57:57
http://uproda11.2ch-library.com/src/11115711_UWYa/k11115711.jpg

ソースファイルがまさにtest.cppだったので
そのまま入力したのですが・・。

929 :デフォルトの名無しさん:2008/09/04(木) 22:13:20
ひとつ上のレスも読めんのかお前は。

930 :デフォルトの名無しさん:2008/09/04(木) 22:16:36
<>はいらなかったんですね。
ありがとうございました。
大変失礼致しましたl。

931 :デフォルトの名無しさん:2008/09/04(木) 22:44:29
いいえ、「<>」が問題なのではなく「<>」が問題なのです。

932 :デフォルトの名無しさん:2008/09/04(木) 23:51:14
まぁその入門書が不親切でもあるな
例として
> gcc ファイル名.cpp
と書いてあれば間違えようがないのに

933 :デフォルトの名無しさん:2008/09/05(金) 02:13:17
無謀だ。無謀すぎる。
gcc 以前の問題だな。
まず先に、Windows の使いかたを勉強しろや。

934 :デフォルトの名無しさん:2008/09/05(金) 02:31:11
まぁ、CygwinやMinGWを入門に使おうと思う時点で無謀極まりない。

935 :デフォルトの名無しさん:2008/09/05(金) 11:19:07
>>934
ところが「ただで作れる開発環境」とかいって喧伝されていたりするからねぇ・・・

936 :デフォルトの名無しさん:2008/09/05(金) 12:08:10
VC++ Expでも使わせればいいのに

>>932
> ←これも入れそうだぞ

937 :デフォルトの名無しさん:2008/09/05(金) 15:25:29
勇気ある行為だと思うが、選択として悪いとは思わないな。
どうせなら、(PC-)UNIXであるところのLinux/Mac OS Xを使えばいいのにとは思うけど、スレ違いか。

938 :デフォルトの名無しさん:2008/09/05(金) 15:32:31
makeファイルやデバッグが面倒なんで
Mingw+IDE使ってるオレ

939 :デフォルトの名無しさん:2008/09/05(金) 17:56:35
IDEなにつかってるの?

940 :デフォルトの名無しさん:2008/09/06(土) 05:37:45
他スレに書いちゃったんだけど、
MinGW developer ってやつ
VC6.0の模倣品で環境一括インストールしてくれる

941 :デフォルトの名無しさん:2008/09/06(土) 08:04:42
>>928

こういった解説書やマニュアル類、あるいはヘルプなどで
コマンドの書式を書いてある場合、 < > や [ ] は特殊な意味を
持ってることが多い。

ある程度お約束みたいになってるんで、覚えておく方がいい。

[ ] だと中に書かれている | で区切られた項目から選択して入力。
< > で囲まれた項目は、必要なければ省略可能等


942 :デフォルトの名無しさん:2008/09/07(日) 00:12:55
釣りだろ?

943 :デフォルトの名無しさん:2008/09/09(火) 05:15:32
medow と cygwin と gcc で使っているのですが、
設定をいじっているうちにときどきいつの間にか、エラーメッセージが日本語になっていたり
またいつの間にか英語に戻っていたり変わっているかしてしまいます
気づいた時点でいくつか設定いじってみたりしたのですが、メッセージに変化はなく
いったいgccのエラーメッセージの言語って何を基準に決定しているのですか?
ちなみにgccのバージョンは3.44です

944 :デフォルトの名無しさん:2008/09/09(火) 05:47:15
自己解決しました

945 :デフォルトの名無しさん:2008/09/09(火) 13:39:12
どう解決したのか是非詳しく。

946 :デフォルトの名無しさん:2008/09/09(火) 13:50:17
cygwinでgccのエラーメッセージを日本語化するのは無理だと思ってた
無知な俺は期待age

947 :943:2008/09/09(火) 16:04:59
勝手に人の番号を名乗らないでください

948 :943:2008/09/09(火) 16:23:08
ごめんなさい

949 :デフォルトの名無しさん:2008/09/09(火) 20:59:14
nls有効化してgccビルドするだけじゃないの?

950 :デフォルトの名無しさん:2008/09/10(水) 21:17:12
MinGW使ってるんですが、どのバージョンが一番安定してますか??
5.1.3をずっと使ってたんですがどうもバギーな気がしてきまして・・

951 :950:2008/09/10(水) 21:22:17
というか

http://sourceforge.net/project/showfiles.php?group_id=2435
ここを見ると5.1.4が最新のような感じなんですが、

http://yoko-gb.blogspot.com/2008/08/mingwgcc.html
とか
http://ja.wikipedia.org/wiki/MinGW

では最新版が4〜になってますね。
なぜ??情報が古いだけでしょうか?

952 :デフォルトの名無しさん:2008/09/10(水) 22:21:33
>>946
これってGCCにも効かなかったっけ?
http://www.sixnine.net/cygwin/cygwin-doc/japo.html

953 :デフォルトの名無しさん:2008/09/11(木) 04:34:00
>>951
gccのバージョンとMinGWプロジェクトのバージョンを散り違えるな

954 :デフォルトの名無しさん:2008/09/11(木) 06:50:53
gccは3.4.5の新しいやつで
他に必要なのは開発版以外の最新でいいんじゃない

955 :950:2008/09/11(木) 11:02:21
ありがとうございます。

>gccのバージョンとMinGWプロジェクトのバージョンを散り違えるな
すいません。どこをどう勘違いしてるのかわかりません汗
よかったら教えてください。

>gccは3.4.5の新しいやつで
これはどういう意味でしょう?gccではなくてmingwの話なのですが・・

結局一番安定してるのはどのバージョンでしょうか?
やはり5.xx系は人柱なんですかね?

アドバイス頂けると幸いです。

956 :デフォルトの名無しさん:2008/09/11(木) 11:39:22
自ら>>951に掲示しているとこ普通に見ればわかるだろ

年月だけでなく、ご丁寧に日にちまで書いてるんだぞ

957 :デフォルトの名無しさん:2008/09/11(木) 12:10:20
>>955
gcc -> IE
MinGW -> Windows

958 :950:2008/09/11(木) 16:12:30
どもです。

>>自ら>>951に掲示しているとこ普通に見ればわかるだろ
http://ja.wikipedia.org/wiki/MinGW
ここの最新版は3.4.5ってのは情報が古いって理解でOKでしょうか??
ただ最新のを使いたいのではなくて安定しているのを使いたいんです。
一番安定しているのは3.4.5なんですかね??


>> gcc -> IE
>> MinGW -> Windows
MinGW- > Windwowsってのは分かるんですがgcc -> IE ってのはどういうことですか??

959 :950:2008/09/11(木) 16:18:54
すいません、あと
http://sourceforge.net/project/showfiles.php?group_id=2435
ここで

Automated MinGW Installer MinGW5.1.4

GCC Version 3 gcc-3.4.5-20060117-3
がありますが(他にもいろいろありますが)これってどう違うのでしょうか??
どちらもMinGWではないのですか??
インストーラがついてるかついてないかってだけの違いではないですよね?

自分は多分、上のAutomated MinGW Installerのversionが5.1.3 の時のを使ってたと思うのですが・・


960 :950:2008/09/11(木) 16:44:35
あーなんか「MinGW = Windows用に移植されたgccコンパイラ」
だと思ってました。

Windowsの中でgccコンパイラを使うための環境がMinGWなんですね。
しかしmsysでgcc --version と打ったら 3.4.5 と出てきました。
今の状態で安定版(と思われるもの)を既に使ってるみたいです。。なんかよくわからないバグみたいなものがあるのですが・・

MinGWをアップデートしてもその中のgccコンパイラはversion3.4.5から変わらないと思うのですが、
MinGWのアップデートだけでコンパイル時の不具合が直ったりする可能性はあるものでしょうか??


961 :デフォルトの名無しさん:2008/09/11(木) 17:31:28
コンパイル時の不具合ってソースコードが変ってことじゃないの?

962 :950:2008/09/11(木) 17:39:58
普通に考えればそうなんですがどっからどう見ても間違ってる部分がないもので・・
コンパイルエラーは出ずにコンパイルは成功するんですが、バイナリ走らせるとフリーズするような類のバグです。

ソースコードがおかしいわけではない・・と思うのですが・・(多分)

963 :デフォルトの名無しさん:2008/09/11(木) 17:43:16
実行時のエラーをコンパイラのせいにするのはよくないよ。

964 :950:2008/09/11(木) 18:18:01
うーむ・・やはりソースコードのせいなのか・・
3.4.5は安定版なのでしょうし。

965 :デフォルトの名無しさん:2008/09/11(木) 19:08:01
自分のデバッグ能力を疑った方がいいのでは?

966 :デフォルトの名無しさん:2008/09/11(木) 19:58:16
>>962
shift JISでソース書いてると、変なことがよく起こるよ。
たとえば、「表」の2バイト目が"\"なので//コメントの行末にあると次の行もコメントになる、
*/の直前にあると、コメントがそこで終わらず、次のコメントの最後までまるまるコメントになる、
文字列リテラルの最後にあると"がエスケープれて文字列が続いてることになる、などなど


967 :デフォルトの名無しさん:2008/09/11(木) 20:10:41
-finput-charset=cp932

968 :デフォルトの名無しさん:2008/09/11(木) 20:16:37
コンパイラのバグといいながら対象のソースを出さない奴は100%自身のミス

969 :デフォルトの名無しさん:2008/09/11(木) 22:20:47
コンパイラ含めた環境の不具合を疑うのなら、
いきなり本命のコードをコンパイルしようとせずに、
至極簡単なテスト用のコードを作ってコンパイルすればいいのに。

970 :デフォルトの名無しさん:2008/09/11(木) 22:30:58
100%は言い過ぎだろ、99.99%くらいだ
デバッガで追ってみればいいじゃん

971 :デフォルトの名無しさん:2008/09/11(木) 22:31:18
安定板とか言ってる時点で...

972 :デフォルトの名無しさん:2008/09/11(木) 22:40:39
mingwGCC4.31をダウンロードできるところないですか?

973 :デフォルトの名無しさん:2008/09/11(木) 23:04:40
?ttp://www.equation.com/servlet/equation.cmd?call=fortran

974 :デフォルトの名無しさん:2008/09/11(木) 23:45:37
>>973
ありがとう!

975 :デフォルトの名無しさん:2008/09/12(金) 00:27:10
本家?ttp://sourceforge.net/project/showfiles.php?group_id=2435

976 :950:2008/09/12(金) 00:37:46
>>965
うぜーから消えろ。

>>968
>> コンパイラのバグといいながら対象のソースを出さない奴は100%自身のミス
でかいソースの中の一部なのでそれだけここに出しても意味ないと思いますが。

問題の部分単発でコンパイルすればうまく動きます。文字コードはUTF-8なんです。
デバッガはなんかeclipse連携できなかったので放置してたんですが、もう一回チャレンジしてみます・・。


977 :デフォルトの名無しさん:2008/09/12(金) 00:52:05
十中八九、どっかでメモリ壊してるな。
問題が発現するところ自体にバグがないのはよくあることだし。

978 :950:2008/09/12(金) 01:04:04
ありがとうございます。
>> 十中八九、どっかでメモリ壊してるな。
多分そんな感じなんだろうなと自分も思うんですが、メモリが壊れるってのは例えばどういう時起こるんでしょうか??

979 :デフォルトの名無しさん:2008/09/12(金) 01:15:08
確保したメモリ領域の外に書き込んだとき。

980 :デフォルトの名無しさん:2008/09/12(金) 02:11:20
>>950みたいな低能がコーディングしたとき。

981 :デフォルトの名無しさん:2008/09/12(金) 03:07:55
デバッグもせずにコンパイラを疑うとか(笑

982 :950:2008/09/12(金) 03:27:41
>>980-981
うぜーしつこい。

983 :デフォルトの名無しさん:2008/09/12(金) 03:40:19
大抵はポインタと配列で範囲外のアクセス(主に書き込み)で起こるかなぁ。
配列は片っ端からstl::vectorに置き換えるとその手のバグは顕在化しやすくなる。
後文字列操作で終了コードが抜けたりとか。これもstl::stringで回避できるか。
あとなんだろね。

984 :デフォルトの名無しさん:2008/09/12(金) 05:23:17
なんで、そのレベルで>>950はコンパイラのバグを疑ってんだ?
実験的な最新版とか、コードが大幅に入れ替わったメジャーVerUPの後とかじゃないと
めったにお目にかかれない物なのに。

access violationはオメーのバグだぜ。

985 :943:2008/09/12(金) 05:34:32
>>945
まぁ、わざわざ書くほどでもないアホなミスでした
すっごいいまさらなんだけど、一応どう解決したかを
後から単体のインストーラで入れた(かなり古いバージョンの)Mingwのpathの設定が優先されてだけでした、
cygwinのコンソールだと/usr/binのパスが最優先になるんですがMeadowから使ってたので
windowsの環境変数を使ってまして。なので、pathの順番変えて解決しました
時々起こってのは本当なんですが過去起こった原因は結局わかりません

エラーの日本語化はCygwinのsetup.exeで普通にインストールしただけなのでよく知りません
環境変数LANGを設定しただけです

986 :デフォルトの名無しさん:2008/09/12(金) 08:38:16
低脳がひとりいると、このスレ盛り上がるな。
無理しないで自分のレベルにあったVBでも使ってればいいのに。

987 :デフォルトの名無しさん:2008/09/12(金) 12:12:10
>>986
自覚してるのかw

988 :デフォルトの名無しさん:2008/09/12(金) 14:41:14
低脳の自覚がない人には向かないんじゃないの、gcc?

989 :デフォルトの名無しさん:2008/09/12(金) 15:11:17
余程悔しかったようだな

990 :デフォルトの名無しさん:2008/09/12(金) 15:38:57
煽り合うのはその辺にしておきなさい。
みっともないからw

991 :デフォルトの名無しさん:2008/09/12(金) 16:02:28
ひとりの屑低脳って950しかいないじゃん
自覚しろよ、すこしは。

992 :デフォルトの名無しさん:2008/09/12(金) 16:05:23
なに火病ってんだ。顔まっかにして。

993 :950:2008/09/12(金) 16:31:33
やっと直りました。やっぱりアクセスしてはいけない領域にアクセスしていたのが問題だったみたいです。

友達いなそうな可哀想なのがもうちょい少なければいいんですけどね。
でも色々勉強になりました。親切に教えてくださった方々ありがとうございましたm(_ _)m

994 :デフォルトの名無しさん:2008/09/12(金) 16:38:12
お前が自分の無知を棚に上げて訳の分からんフレームを垂れ流したのがそもそもの元凶だろうが

995 :950:2008/09/12(金) 16:42:11
棚になんてあげてませんよ。
言われている通り、俺は無知で低脳なんでそれをさらしてご教授願っただけです。
なぜそんなのお怒りなのですか?

996 :デフォルトの名無しさん:2008/09/12(金) 17:23:25
>>995は流石に偽っぽいが>>993は正直どっちかわからんw

どっちにしろ>>993,995共に屑だが

997 :デフォルトの名無しさん:2008/09/12(金) 17:30:29
分かったから少し落ち着けよ

998 :950:2008/09/12(金) 17:33:51
どっちも本物ですよぉ

999 :デフォルトの名無しさん:2008/09/12(金) 17:36:14
彼らが落ち着くまで次スレは立てないでください

1000 :デフォルトの名無しさん:2008/09/12(金) 17:37:19
ume

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

274 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.02 2018/11/22 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)