のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,836人
昨日: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
    451 : デフォルトの名無 - 2009/07/14(火) 20:13:58 (+33,-3,-10)
    >>450
    何がわからんのか書いてくれ。
    make 一発でビルドできて躓くポイントなんぞ無いぞ。
    と、いうか Readme 読め。
    452 : デフォルトの名無 - 2009/07/14(火) 22:51:55 (+10,-25,-1)
    >>451
    そのReadmeがついてないという…
    453 : デフォルトの名無 - 2009/07/15(水) 07:37:12 (+1,-29,-29)
    >>452

    smakeだったら README.compileってファイルがあると思うが

    他にもlinux系ツールだと INSTALLってファイルにビルド方法が
    書かれていることが多い
    454 : デフォルトの名無 - 2009/07/15(水) 12:12:14 (-6,-29,+0)
    >>453
    thx!
    455 : デフォルトの名無 - 2009/07/16(木) 20:06:33 (-1,-29,+0)
    WinXP SP2
    gcc v3.4.5
    456 : デフォルトの名無 - 2009/07/22(水) 22:16:12 (+94,+28,-48)
    MinGWのインストーラーって無くなりました?
    幾つかの参考サイトはインストーラーが前提になってて
    インストールしたいのですけど配布サイトに無くてお手上げ状態です。
    457 : デフォルトの名無 - 2009/07/22(水) 22:25:06 (+74,-29,-23)
    >>456
    俺は公式のMinGWが面倒なのでTDM-MinGW使ってる

    http://www.tdragon.net/recentgcc/

    これならインストーラもある
    458 : デフォルトの名無 - 2009/07/22(水) 23:52:15 (+6,-29,-5)
    >>456
    lzma で配布されてるデカいアーカイブがひとつあるだろ。
    GCC 4.4.0 を使うのに必要なものはそれに全部入ってる。
    459 : デフォルトの名無 - 2009/07/23(木) 03:49:58 (+39,-30,-86)
    456では無いけど、そのlzmaファイル、今は無いみたいだ
    >The "/GCC Version 4/Current Release_ gcc-4.4.0/gcc-full-4.4.0-mingw32-bin-2.tar.lzma" file could not be found or is not available.
    >Please select another file.

    ・・・他のファイルも落とせないし、sf.netがリニューアルしてから調子悪いのか
    460 : 456 - 2009/07/23(木) 10:40:20 (+63,+29,-28)
    質問した本人です。
    こんな早く返事が帰ってくるとは思っていませんでした。反応遅くて申し訳ないです。
    とりあえず>>457を使ってみようと思います。
    お返事ありがとうございました。
    461 : 456 - 2009/07/23(木) 10:45:02 (+67,+29,-14)
    >>457を使おうと思ったら>>459と同じ内容が出てきましたorz
    462 : デフォルトの名無 - 2009/07/23(木) 11:12:02 (+48,+30,+0)
    463 : デフォルトの名無 - 2009/07/23(木) 11:15:45 (+52,+24,-11)
    うげ、やっちまった。直リンになっちまった。ごめんなさい>keihanna
    464 : 456 - 2009/07/23(木) 12:19:17 (+57,+29,-42)
    今配布サイトに繋げたらインストーラーが追加されてました。
    昨日はなんで無かったんでしょうね…。
    ともかく使ってみます。
    ありがとうございました。
    465 : デフォルトの名無 - 2009/07/26(日) 16:59:19 (+48,+30,+0)
    466 : デフォルトの名無 - 2009/07/27(月) 00:43:46 (+56,+28,-19)
    なんか公式のダウンロードページここ最近いろいろ変更されてるね
    467 : デフォルトの名無 - 2009/07/27(月) 00:48:58 (+7,-30,-103)
    Cygwin+GCC4(非MinGW)で
    UTF-16BEのテキストファイルをmmapし、
    それをwchar_t型の配列にキャストした場合
    wprintf()で出力される文字は、UTF-16BEなのでしょうか?

    wchar_tやwprintf()で出力される文字コードは環境依存と聞いた事があるので
    Cygwinではどうなっているのかわからないのです。

    ちなみに、試しに出力してみましたが、画面表示のロケーションをUTF-16BEにしてるにも関わらず文字化けします。
    こちらの設定ミスなのか、仕様なのかがわからないので・・・
    468 : デフォルトの名無 - 2009/07/27(月) 01:00:06 (-1,-29,-16)
    >>467
    Cygwinのバージョンは?
    1.7ならLANGをちゃんと設定しておけばいけるはず。
    1.5ならwcharは壊れてるので事実上使用不可なんじゃなかったっけ。
    469 : デフォルトの名無 - 2009/07/27(月) 09:01:50 (-1,-29,-13)
    Cygwinのwchar_tはUTF-16LEじゃないかい?
    470 : デフォルトの名無 - 2009/07/27(月) 11:09:59 (+0,-27,-15)
    swab関数でバイトオーダーを入れ替えちまえ
    471 : デフォルトの名無 - 2009/08/07(金) 20:23:50 (+0,+0,+0)
    gcc-full-4.4.0-mingw32-bin-2.tar.lzmaをダウンロードして解凍しました。
    で、以下のソースを msys上でコンパイルしたら、すごい量のエラーが吐かれました。なんか文字化けてるし、全然意味わかりません。
    助けて下さい。

    ----------------------------------------------
    #include <iostream>
    using namespace std;
    int main()
    {
    cout << "Hello" << endl;
    return 0;
    }
    ----------------------------------------------
    ----------------------------------------------
    $ g++ hello.cpp
    c:\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/bits/postypes.h:42 、ォ、・includ
    e 、オ、・ソ・ユ・。・、・・,
    c:\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/iosfwd:42 、ォ、
    ,
    c:\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/ios:39 、ォ、,
    c:\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/ostream:40 、ォ
    、,
    c:\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/iostream:40 、
    ォ、,
    hello.cpp:1 、ォ、:
    c:\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/cwchar:47:19: error: wchar.h:
    No such file or directory
    (以下続く)
    ----------------------------------------------

    472 : デフォルトの名無 - 2009/08/07(金) 20:33:23 (+0,-29,-15)
    >>471
    win32api 関連とかは別のファイルになってる。
    ちゃんと説明読め!
    http://sourceforge.net/project/shownotes.php?release_id=691876
    473 : デフォルトの名無 - 2009/08/07(金) 20:46:43 (+0,+29,-5)
    >>472

    すいません。読んでませんでした。
    ちゃんと別のファイル落して、くわえたら動きました。

    ありがとうございました。
    474 : デフォルトの名無 - 2009/08/07(金) 20:48:35 (-7,-30,-103)
    あとエラーメッセージとかの日本語は euc になってる。
    ターミナル側を euc に設定できるならそうしたらいいけど、
    sjis 版のカタログファイルを用意してやったぞ。
    http://www.42ch.net/UploaderSmall/source/1249645520.mo
    をダウンロードして
    /mingw/share/locale/ja/LC_MESSAGES/gcc.mo
    をおきかえろ。
    475 : デフォルトの名無 - 2009/08/07(金) 20:56:29 (-1,-29,+1)
    >> 474

    ぉお~ !!ありがとうございます。
    476 : デフォルトの名無 - 2009/08/10(月) 22:26:06 (+4,-29,-11)
    cygwin でシェルスクリプトを実行しようとすると
    cannot execute binary file
    というエラーが出てしまいます。
    どうしたらいいんでしょう?
    477 : デフォルトの名無 - 2009/08/10(月) 22:48:18 (+41,+18,-2)
    シェルは何を使ってんの?
    478 : デフォルトの名無 - 2009/08/10(月) 23:19:07 (+3,-30,-56)
    >>476
    a)Unicode(UTF-16)で保存している
    b)BOM付きUTF-8(メモ帳のUTF-8で保存するとコレ)で保存している
    のどっちかじゃね?
    TeraPadあたりでUTF-8N保存してみたら?
    479 : デフォルトの名無 - 2009/08/11(火) 14:03:25 (+3,-30,-49)
    387 名前:名無しさん@お腹いっぱい。[] 投稿日:2009/08/10(月) 08:03:10
    シェルスクリプトを実行すると
    ./test.sh : cannnot execute binary file
    なるエラーが出てしまいます。
    何が悪いんでしょう。
    スクリプトは下なのですが

    #!/bin/bash
    cat data.txt
    480 : デフォルトの名無 - 2009/08/11(火) 14:07:12 (+58,-30,-254)
    MinGWでgcc 4.4.0を入れたんだが、
    gcc -vをすると文字化けするとこあるんだが、なんでだろ?
    helloworldで日本語入れて表示させても文字化けしないんだが。

    C:\Users\Username>gcc -v
    Using built-in specs.
    Target: mingw32
    ・ウ・・ユ・」・ー・ェ・ラ・キ・・: ../gcc-4.4.0/configure --enable-languages=c,ada,c++,fortran,java,objc,obj-c++ --d
    isable-sjlj-exceptions --enable-shared --enable-libgcj --enable-libgomp --with-dwarf2 --disable-win3
    2-registry --enable-libstdcxx-debug --enable-version-specific-runtime-libs --prefix=/mingw --with-gm
    p=/mingw/src/gmp/root --with-mpfr=/mingw/src/mpfr/root --build=mingw32
    ・ケ・・テ・ノ・・ヌ・: win32
    gcc version 4.4.0 (GCC)
    481 : デフォルトの名無 - 2009/08/11(火) 14:14:21 (+62,+30,+0)
    482 : デフォルトの名無 - 2009/08/11(火) 14:16:05 (+99,+29,-18)
    上側の化けてるところは「コンフィグオプション」で、下側は「スレッドモデル」だな
    483 : デフォルトの名無 - 2009/08/11(火) 14:20:11 (+3,-30,-94)
    >>480
    ソースコード中に日本語を使うなら -finput-charset や -fexec-charset オプションでエンコーディング指定するのを忘れないように。
    484 : デフォルトの名無 - 2009/08/11(火) 14:22:08 (+36,-30,-74)
    -finput-charset=cp932 -fexec-charset=cp932

    これか
    485 : デフォルトの名無 - 2009/08/11(火) 14:23:47 (+13,-22,+0)
    >>481-483

    即レスthx!
    もっと勉強させてもらいます><
    486 : 480 - 2009/08/11(火) 14:51:33 (+41,-30,-297)
    >>474でDLしたファイルをgcc.moにリネームして置き換えたら、文字化け無くなった。

    C:\Users\Username>gcc -v
    Using built-in specs.
    Target: mingw32
    RtBOIvV: ../gcc-4.4.0/configure --enable-languages=c,ada,c++,fortran,java,objc,obj-c++ --disable-sjl
    j-exceptions --enable-shared --enable-libgcj --enable-libgomp --with-dwarf2 --disable-win32-registry
    --enable-libstdcxx-debug --enable-version-specific-runtime-libs --prefix=/mingw --with-gmp=/mingw/s
    rc/gmp/root --with-mpfr=/mingw/src/mpfr/root --build=mingw32
    Xbhf: win32
    gcc version 4.4.0 (GCC)

    >>482が言ってくれたみたいに、
    「RtBOIvV」のところって、gcc3.4.5のときだと「Configured with」って表示されてたような。
    「Xbhf」のところは、gcc3.4.5のときだと「Thread model」って表示されてたような。
    この文字列に意味あるのかな?
    487 : デフォルトの名無 - 2009/08/11(火) 14:56:00 (+75,+29,-10)
    >>486
    いやいや、それ化けてますから!
    ちゃんと適用されていればまさに >>482 の通り表示するはずなんだ。
    488 : 480 - 2009/08/11(火) 17:11:32 (+13,-30,-213)
    >>487
    レスthx!

    今は、情報収集でググったりしてるところであります。

    とりあえず現状は、
    (1)コマンドプロンプトの文字コードはCP932。
    (2)gcc -vで日本語と思われるところが文字化け。
    (3)日本語を含む文章(ファイルの文字コードはSJIS)をprintfで表示させたら文字化けはしない。
    (4)gcc3.4.5を入れたら、\shareにlocaleフォルダが無かった(多言語対応してないのかな?)

    もしかして、gcc4.4.0の導入方法がダメなのかな?
    公式ページからMinGW5.1.4.exeをインストールしたら、gccは3.4.5になってた(とりあえず、C:\MinGWを作成)。
    で、公式ページからgcc-full-4.4.0-mingw32-bin-2.tar.lzmaをダウンロードして、
    解凍したできたフォルダ達を\MinGWで上書きした。
    この方法がそもそもダメとか?
    489 : デフォルトの名無 - 2009/08/13(木) 10:07:37 (+3,-30,+0)
    MinGW 5.1.4のg++で std::wstring がコンパイルは通るんだが,リンカーエラーになる。(IDEとしてCode::Blocks使用,ソースはBOMなし
    UTF-8で書いてる)。環境変数関係の設定はもちろんOKのはず。

    #include <windows.h>
    #include <string>
    using namespace std;

    int main()
    {
    wstring wstr(L"はろー"); //ここと
    ::MessageBoxW(NULL, wstr.c_str(), L"タイトル", MB_OK); //ここをコメントアウトして
    // ::MessageBoxW(NULL, L"はろー", L"タイトル", MB_OK); //ここのコメントを外すとOK
    return 0;
    }
    このプログラムをビルドするとリンカーが,
    C:\Documents\Software\CodeBlocks\unitest\main.cpp|9|undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::basic_string(wchar_t const*, std::allocator<wchar_t> const&)'|
    というエラーを吐く。wstringをやめてstringを使い,ソースをSJISにして::MessageBoxAで表示させると問題ない(L”なんたら”のLは外す)。
    ヘッダーファイルをgrepで検索したら,

    #if defined (_GLIBCXX_USE_WCHAR_T) || defined (_GLIBCXX_USE_WSTRING)

    template<> struct char_traits<wchar_t>;

    typedef basic_string<wchar_t> wstring;
    #endif

    #endif

    と書いてあったので,念のため _GLIBCXX_USE_WCHAR_T と _GLIBCXX_USE_WSTRING を定義してみたけど
    やっぱりダメ(リンカーエラーだから関係なさそうだけど)。何かライブラリが足りないのかな?
    490 : デフォルトの名無 - 2009/08/13(木) 14:53:22 (+9,-30,-40)
    > 念のため _GLIBCXX_USE_WCHAR_T と _GLIBCXX_USE_WSTRING を定義してみたけど

    それが定義された状態で libstdc++.a がビルドされてないとダメなんじゃないか?
    491 : デフォルトの名無 - 2009/08/14(金) 00:29:28 (+32,-30,-73)
    >>490

    > それが定義された状態で libstdc++.a がビルドされてないとダメなんじゃないか?

    レスサンクス。
    それって、_GLIBCXX_USE_WCHAR_T と _GLIBCXX_USE_WSTRING を定義した上で
    libstdc++.a をビルドしろって意味? バイナリ拾ってきてインストールしたんで(ダウンロード
    してインストールする方式だったけど)、ソースからビルドするにはどうすればいい?
    教えて君でスマン。
    492 : デフォルトの名無 - 2009/08/14(金) 00:58:58 (-1,-29,+0)
    libstdc++.a は gcc のソースに一緒に入ってるんじゃないかなぁ。
    493 : デフォルトの名無 - 2009/08/14(金) 01:25:36 (+0,-29,-10)
    >>491
    gccをビルドするときのconfigureオプションじゃないかと調べずに言ってみる。
    494 : デフォルトの名無 - 2009/08/14(金) 02:13:24 (+29,-29,-3)
    >>491
    libstdc++.aは
    C:\MinGW\lib\gcc\mingw32\4.4.0にあるよ
    495 : デフォルトの名無 - 2009/08/14(金) 02:42:21 (+60,+21,-3)
    >>494
    バイナリがどこにあるなんてことじゃなくてビルド方法の話だろ。
    496 : 491 - 2009/08/14(金) 07:10:01 (+11,-29,-74)
    >>495
    > バイナリがどこにあるなんてことじゃなくてビルド方法の話だろ。

    その通りです。既存の libstdc++.a をリンクしてのテストはもちろんやってて、
    それでうまく行かないのです。

    うーん。バイナリダウンロードしてきて、そのままインストーラー任せでやったから、
    こういうとき困るね。Code::Blocks使うので、MSYSすらインストールしてない。
    もう少し調べてみます。
    497 : デフォルトの名無 - 2009/08/14(金) 23:08:29 (+83,+26,-12)
    こんな記事があった。
    http://www.mingw.org/category/wiki/libstdc
    498 : デフォルトの名無 - 2009/08/14(金) 23:15:00 (+31,-29,-2)
    もう stlport 使えよ
    499 : 491 - 2009/08/15(土) 00:10:44 (+67,+29,-14)
    >>497
    あちゃぁ、がっくし... 比較的最近の記事だし、そういうことなのかぁ。

    >>498
    そういうことですかね。検討します。

    皆さんアリガト。
    500 : デフォルトの名無 - 2009/08/28(金) 21:38:57 (+9,-30,-70)
    cygwinでshlwapi(SHell Light Weight API)使うにはどうすんの?
    ソースに#include <shlwapi.h>書いて
    ldに-lshlwapi食わせてもなぜか失敗する
    ←前へ 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 + - リダイレクト + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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