のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,830人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレCygwin + MinGW + GCC 相談室 Part 4

    gcc スレッド一覧へ / gcc とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 476 + - cannot + - curses + - pthread + - wcout + - wcwidth + - yum + - リダイレクト + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    151 : デフォルトの名無 - 2009/02/02(月) 00:10:50 (-1,-29,-2)
    OSっつーかファイルシステムだよな
    NTFS前提
    152 : デフォルトの名無 - 2009/02/02(月) 00:11:10 (+44,+16,-20)
    更に脱線すると、Vistaからシンボリックリンクがサポートされてる。
    153 : デフォルトの名無 - 2009/02/02(月) 00:51:02 (-1,-29,-32)
    シンボリックリンクできるけど、mklinkがcmdの内部コマンド?なのか、
    cygwinやmsysじゃ使えないんだよね。
    わざわざcmd起動してリンク作ってるけど。
    154 : デフォルトの名無 - 2009/02/02(月) 22:07:53 (+20,-7,-28)
    内部コマンドだよ
    mklink.exeなんて記事書いて飯喰ってるのも居るがな
    155 : デフォルトの名無 - 2009/02/09(月) 09:57:53 (+10,-23,-22)
    Cコンパイラのライブラリの仕様ってどこで調べられますか?
    156 : デフォルトの名無 - 2009/02/09(月) 11:33:11 (+2,-26,-4)
    >>155
    そのライブラリの仕様書・マニュアルなど。
    157 : デフォルトの名無 - 2009/02/09(月) 13:25:21 (+30,-3,-1)
    GCCの場合それはどこで手に入りますか?
    158 : デフォルトの名無 - 2009/02/09(月) 13:52:44 (+14,-3,+1)
    インターネット
    159 : デフォルトの名無 - 2009/02/09(月) 14:05:25 (+14,-13,-14)
    インターネットのどこのサイトでしょうか?
    160 : デフォルトの名無 - 2009/02/09(月) 14:20:34 (+53,+30,+0)
    161 : デフォルトの名無 - 2009/02/09(月) 14:38:51 (+43,+20,+1)
    どうもありがとうございました
    162 : デフォルトの名無 - 2009/02/09(月) 19:38:17 (+7,-29,-71)
    >>157
    使っているライブラリによって異なる。
    たとえばGCC自身はprintf()の実装は提供してない。UNIX上で使っている
    ならそのOSのマニュアルだし、MingwだったらMicrosoftのサイトを見る
    べき。
    163 : デフォルトの名無 - 2009/02/10(火) 02:44:36 (+6,-29,-54)
    XPで使ってたCygwin+MinGWの環境をそのままWin7に持ってきたんですが
    gitとかpatchとかコマンドが全然動きません。
    どうしたらいいんですかこれ…
    164 : デフォルトの名無 - 2009/02/10(火) 12:03:09 (+7,-16,-2)
    >>163
    なんかエラーが出るの?
    165 : デフォルトの名無 - 2009/02/10(火) 13:51:08 (+50,+22,-13)
    Pathを通して無いだけじゃないの
    つか、βのWin7の事までしらねーよ
    166 : デフォルトの名無 - 2009/02/10(火) 14:24:45 (+62,+29,-25)
    どうしたらいいかと言えば、自分の作業に問題が無いか見直し、それでもだめだと確信できるなら、
    問題を切り分けて、Windows 7 βのフィードバックを入れるか、
    CygwinかMinGWにバグ報告を送りつけるかに決まっているだろう。
    167 : デフォルトの名無 - 2009/02/10(火) 14:33:59 (+57,+29,-3)
    レジストリにあるマウント情報とかも当然移動したんだよな
    168 : デフォルトの名無 - 2009/02/10(火) 15:22:37 (+7,-30,-116)
    http://bitwalk.hp.infoseek.co.jp/
    を参考にLinux(Fedora10)にMinGWのビルド環境を構築しているのですが
    gcc(configure --target=i386-mingw32)のmakeに失敗します
    binutilsは2.19、gccは3.4.6です

    Linux上でMinGWのクロスコンパイル環境の構築に成功している人はいますか?
    他に何か必要な物とかあったら教えてください。よろしくお願いします
    169 : デフォルトの名無 - 2009/02/10(火) 16:24:06 (-1,-29,-5)
    >>168
    F10なら、mingw32のパッケージがyumでインストール出来るよ。
    170 : デフォルトの名無 - 2009/02/18(水) 02:25:46 (+6,-28,-6)
    msysで足りないコマンド類は基本的にcygwinから引っ張ってくるものなんですか?
    171 : デフォルトの名無 - 2009/02/18(水) 02:35:26 (-1,-29,+0)
    cygwin1.dllに依存してるのはそのままじゃ使えないと思う。
    172 : デフォルトの名無 - 2009/02/18(水) 02:44:41 (+3,-30,-127)
    >>170
    基本的にはmsysでsourceからbuildするものだけど、pathやバージョン古くて通らないのも沢山ある。
    そういう時は、cygwinか、coLinux等でcross compile環境を作ってbuildする。
    MSYS-bashのpath周りをもっと柔軟にすれば、通りやすくなるのかもねえ
    173 : デフォルトの名無 - 2009/02/20(金) 16:42:04 (+8,-30,-60)
    g++ (GCC) 3.4.5 (mingw-vista special r3)
    new が argc 直前のアドレス取りやがるんですが
    私はどんな壊し方をしたのでしょう?

    174 : 173 - 2009/02/20(金) 17:15:26 (-1,-29,-12)
    ×argc → ○argv 直前のアドレス
    175 : デフォルトの名無 - 2009/02/20(金) 18:15:29 (+45,+27,+0)
    意味がわからん
    176 : デフォルトの名無 - 2009/02/20(金) 18:27:32 (+31,-30,-27)
    main (int argc,char **argv){
    int* buf = new int [100];
     ↓ が何故か
    int* buf =new ( argv - 1) int [100];
    177 : デフォルトの名無 - 2009/02/20(金) 21:58:33 (+62,+29,-38)
    >>176
    「が何故か」ってそれをどうやって確認したの?
    178 : デフォルトの名無 - 2009/02/21(土) 00:30:12 (+78,+29,-53)
    無料なのでMinGWでウィンドウズのアプリを作るのを勉強しようとしたら説明してるサイトが見つからない。
    これはどうしてなのでしょうか?
    MinGWのインストールやコンパイルを説明してるサイトは沢山あります。
    MinGWはインストールして他人のソースをコンパイルして満足するだけのもののような感じを受けます。
    179 : デフォルトの名無 - 2009/02/21(土) 01:25:09 (+9,-29,-23)
    なぜならMinGWでもVisual C++でもBorand C++でもWindowsアプリの作り方は同じだから。
    MinGWの解説をしているとこは、MinGW特有の部分の解説に徹しているだけのこと。
    180 : デフォルトの名無 - 2009/02/21(土) 01:27:23 (+75,-30,+0)
    倍精度の浮動小数点演算を多用する、レイトレーサの一種を書いてます。
    VC++ 2008 Express Edition と icc 9.0 では問題なく動作するのに、
    MinGW の GCC だと計算結果がおかしくなります(レイが想定外の場所に
    飛んでいってしまう)。GCC の3つのバージョンを試しましたが変化なし。
    gcc version 3.2.3 (mingw special 20030504-1)
    gcc version 3.4.5 (mingw-vista special r3)
    gcc version 4.3.0 20080305 (alpha-testing) mingw-20080502 (GCC)
    実行環境は XP SP3 です。何かちょっとしたことを忘れている気がするん
    ですが、アドバイスをいただけませんか。よろしくお願いいたします。

    >>178
    基本的に VC++ やなんかと同じ要領で Win32 API を使ってアプリからでは。
    Win32 API を使ったプログラミングは情報がたくさんありますよね。
    Unix 環境のつもりでプログラムを書き始めるとライブラリ関数があれも
    これも無くて泣きを見ます。例えば
    ・GUI は Win32 API で手書きするか Win32 環境で使えるツールキットを使う。
    ・gettimeofday() が無いので計時には Win32 の QueryPerformanceFrequency(),
    QueryPerformanceCounter() を使う。
    ・共有ライブラリの動的リンクは dlopen() ではなく LoadLibrary() でやる。
    ・OpenGL を使うには Win32 固有の wgl 関数群を用いる。
    ・Win32 に移植された pthread ライブラリを使うのでなければ
    pthread_create(), pthread_mutex_init(), pthread_mutex_lock() ではなく
    CreateThread(), CreateMutex(), WaitForSingleObject() を使わないといけない。
    といった具合です。Win32 環境のつもりで情報を集めるとよろしいかと。
    181 : デフォルトの名無 - 2009/02/21(土) 01:49:43 (+64,+29,-6)
    >>180
    そこまでするならまずはCygwin使えよ。
    というのはともかく、178はUnixから来たのではなく
    本当にここから始めようとしているように思った。
    182 : デフォルトの名無 - 2009/02/21(土) 01:53:52 (-1,-29,-8)
    ここで、VC++ Express(無料)を薦めるのはなしか
    183 : デフォルトの名無 - 2009/02/21(土) 02:09:27 (+64,+30,+0)
    184 : デフォルトの名無 - 2009/02/21(土) 02:35:43 (+48,-30,-140)
    >>183
    レスありがとうございます。
    このスレの Part 3 で _controlfp のことを教えていただいたのは私です。
    カキコの直後まで失念しておりました。
    _controlfp(_PC_64, _MCW_PC) だと GCC と ICC では NG、VC++ では OK で
    _controlfp(_PC_53, _MCW_PC) だと3つのコンパイラすべてで OK でした。
    また髪の毛が減ってしまいました。本当にありがとうございました。
    185 : デフォルトの名無 - 2009/02/21(土) 03:00:03 (+92,+27,-23)
    個人的な感想ですけどVC2008EEはなかなか良かったよ。
    この茨の道を突き進むよりも初心者はVCのほうがいいと思われ。
    186 : デフォルトの名無 - 2009/02/21(土) 04:16:44 (+109,+30,-180)
    >>184
    あの思うですけど、そこまでしてネイティブ・コンパイラにこだわる意味はあるんですか?
    たぶん良くあるプログラミングの落とし穴だと思うんですが、
    計算のロジック部分はジャバやCシャープにして、描画やレンダリングのところだけネイティブ(Cコンパイラ)にすれば、髪の毛もフサフサのままですよ。
    もしCやフォートランしか知らないというなら、あなたの勉強不足が原因なので自業自得なんですけど。
    187 : デフォルトの名無 - 2009/02/21(土) 04:35:25 (+113,+29,-80)
    >>185
    んだな
    多少操作やアプリ依存の用語を覚える必要はあるが、
    理解度や開発効率を考えると初心者はあれでおk

    なのに、何で某ランドがいまだにはびこっているのかw
    mingw等はマルチを意識すると選択肢として出てくるが、
    某ランドは選ぶ理由がさっぱりわからん

    >>186
    用途が逆な気がするが・・・
    188 : デフォルトの名無 - 2009/02/21(土) 04:53:02 (+73,+29,-13)
    >>187
    だよなぁ俺も逆だと思うよ
    189 : デフォルトの名無 - 2009/02/21(土) 05:04:17 (+56,+28,-29)
    仮想マシンが手軽になってからは、個人的にはmingwの出番が減ったな
    190 : デフォルトの名無 - 2009/02/21(土) 05:08:45 (+63,+30,+0)
    そうか?
    ウェブアプリとかビジネスロジックといわれる部分は、ハード特有じゃないのでジャバとかのほうが向いてると思うんだが・・
    逆にダイレクトXとかネットワーク・メッセージ機構の言語外(ハード部分)はMSとかジャバでもいいけど、例えばジャバに「ウインドウのハンドルを取得するAPI」が用意されてないと結局ネイティブAPIを使うから、ネイティブ向けのコンパイラが必要になってくる。

    というか、そこまで計算のロジック(アルゴリズム)を速くしてこだわってるなら、一つのコンパイラに徹するべきであって、GCC使ってみたりBCCやICC使って浮気する必要はないと思うんだけどなあ。
    やってみれば分かると思うけど、結局早くて効率的なロジックをフォートランとかICCで実装したところで、ウインドウズならDLL呼び出し関数呼び出しのコストで相殺されるからあまり関係なくなるんだけど。
    どういうの作ってるかわからないけど、PC並に複雑な機構のOSだと、そもそもロジックが速いとか、プリミティブ型(double)の演算誤差がどうとかあまり関係ないんじゃない?
    191 : デフォルトの名無 - 2009/02/21(土) 05:19:31 (+55,+27,-39)
    レイトレを書いてるらしいから、数値計算メインで
    DLL呼び出し関数呼び出しのコストはほとんど無いような
    思いっきりネイティブ向けの希ガス
    192 : デフォルトの名無 - 2009/02/21(土) 05:53:25 (+62,+29,-173)
    レイトレはやったことないけど、そのロジックをストリーミング用のプログラミング手法(GPUとかCELL)に持ち込めれば、100倍ぐらい速くなるんじゃないか?
    昔のままネイティブAPI(OSコール)てんこもりでソースもforとifだらけってのでも別にいいけど、画像解析じゃなくてただのレンダリングだし、そういうプログラミング・スタイルはもう流行らないと思う。
    どっちにしてもネイティブ・コンパイラ使ってるくせに気軽に浮気するような素人じゃろくなもんじゃないだろうけど。
    193 : デフォルトの名無 - 2009/02/21(土) 07:45:25 (+42,-30,-208)
    ここ10スレ位の書き込みは酷いな。

    複数のコンパイラを通すのは、移植性やソースをクリーニングする為の超基本。
    限られた精度の計算とloopが主なレイトレで、javaとかfortranて何のネタ?
    borlandは1番parserの出来が良いので、初心者の多い2ちゃんではお薦め。

    windowsのgccにもgettimeofdayはある。ぐぐって出てくるし、
    unofficialな自宅の4.3.3でも通った。
    iccは知らないけど、VCってdefaultでSSE使って無かったっけ?
    俺なら計算結果をファイル出力してdiffするけど。
    ところでsjljなgccでレイトレって凄く遅くない?Dwarf2も試そうよ。
    libraryコンパイルし直すのに少し苦労するけど。
    194 : デフォルトの名無 - 2009/02/21(土) 09:39:57 (+4,-23,-19)
    確かにbccは警告が(他と比べて)適切という印象はある。
    195 : デフォルトの名無 - 2009/02/21(土) 10:43:04 (+61,+30,-188)
    ISO-Cに準拠したいのか、よりネイティブ向けに特化したプログラムを作って速度や効率を稼ぎたいのか、君は何をやりたいのか意味不明。
    超基本は、ISO-Cに準拠して君の満足であるかどうかではなくて、仕様や要求を満たしたプログラムであるかどうかじゃないか?
    それこそ計算部分のロジックとネイティブのハード部分を分離するような設計(使用)をすることのほうが基本だと思うが、どうだろう。
    昔から構造化プログラム(モジュール化)やオブジェクト指向など方法論があるわけで、
    君の主張するプログラミングスタイル(複数のコンパイラを通すだと?!)はまったく流行らないと思うが?
    君のような宗教観では、どうでもいいところに神経使ってばかりで、さらに髪の毛をなくしていくんだろうけどw
    196 : デフォルトの名無 - 2009/02/21(土) 10:49:24 (+57,+29,-1)
    何だか急に芳ばしくなってきましたね。
    197 : デフォルトの名無 - 2009/02/21(土) 11:03:33 (+4,-29,-79)
    >>193
    ソースで配布するんですか?
    windowsだとハードが常に進化するんで、そのときのハードにあったAPI(DirectXなど)を使い、
    そのプログラムに一番最適なコンパイラ(Cに限らない)を使ってDLLなどのバイナリで配布する方式の方が受けると思うんですけど・・・
    198 : デフォルトの名無 - 2009/02/21(土) 11:07:36 (+62,+28,-20)
    >>193
    もしかして「Javaは遅い」とかを信じちゃってるJIT以前のオジサン?w
    199 : デフォルトの名無 - 2009/02/21(土) 12:52:03 (+73,+11,-5)
    JAVAがどれだけ速くなってもC以下なのは変わらないだろ。
    200 : デフォルトの名無 - 2009/02/21(土) 14:30:17 (+72,+29,-32)
    >>199
    実行時コンパイルだからこそできる最適化というのもあるんだよ。
    まー、たいていはCの方が速いけど。

    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / gcc スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 476 + - cannot + - curses + - pthread + - wcout + - wcwidth + - yum + - リダイレクト + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について