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

    私的良スレ書庫

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

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

    gcc スレッド一覧へ / gcc とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 932 + - cannotfind + - cp932 + - FreeHDL + - heap + - known + - log4cxx + - WinMain@16 + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    51 : デフォルトの名無 - 2007/05/19(土) 11:13:38 (+2,-20,+0)
    全部入れたら2Gくらいか
    52 : デフォルトの名無 - 2007/05/19(土) 12:51:01 (-14,-29,-31)
    質問するスレを間違っていましたら誘導お願いします
    アセンブラにて
    .global hoge
    .type hoge, @function
    という書き方があるのですが、.type以降の意味はなんでしょうか?
    53 : デフォルトの名無 - 2007/05/19(土) 18:49:06 (-7,-23,+0)
    >>52
    アセンブラ… ( ゚д゚)ウッウー
    http://pc11.2ch.net/test/read.cgi/tech/1174825173/l50
    54 : デフォルトの名無 - 2007/05/20(日) 12:10:32 (+56,+29,-2)
    >>53
    誘導ありがとうございます
    向こうで聞いてみます
    55 : デフォルトの名無 - 2007/05/20(日) 19:11:45 (+69,-30,-149)
    >>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 (+62,+29,-8)
    >>55
    せめてどんなプログラムを書いたか、どんなコマンドを入力したか、くらいは書こうや。
    57 : デフォルトの名無 - 2007/05/20(日) 21:00:33 (+32,-2,-1)
    >>55
    C標準ライブラリともリンクしてあげてください。
    58 : デフォルトの名無 - 2007/05/20(日) 21:31:08 (+38,-30,-54)
    >>55-56
    すみません。

    ①Cで以下のようなソースを書きました。
    #include <stdio.h>

    int main()
    {
    printf("Hello World!");

    return 0;
    }

    ②GCC(MinGW 3.4.2)で -S 付けてアセンブリのソースを出力
    ③出てきたアセンブリを as を使い ld を実行すると>>55のようなエラーでました。

    以上です。
    59 : デフォルトの名無 - 2007/05/20(日) 21:37:10 (-1,-29,-3)
    gcc -o hoge hoge.s
    60 : デフォルトの名無 - 2007/05/20(日) 22:17:06 (+79,+17,-2)
    >>58
    リンカのオプションは?
    61 : デフォルトの名無 - 2007/05/20(日) 22:31:36 (+68,+29,-7)
    >>60
    リンカのオプションは何も付けていません。
    付けないよまずいですかね?
    62 : デフォルトの名無 - 2007/05/21(月) 09:43:51 (+52,+29,-3)
    みんなデバッガとして何を使ってる?
    63 : デフォルトの名無 - 2007/05/21(月) 09:47:48 (-11,-29,+0)
    syslog
    64 : デフォルトの名無 - 2007/05/21(月) 11:00:47 (+57,+29,-45)
    だーから MinGWとは、
    ゴールデンウィークが最小限であることを言い表す言葉なんだって。

    65 : デフォルトの名無 - 2007/05/21(月) 19:24:03 (+10,-7,+0)
    VC
    66 : デフォルトの名無 - 2007/05/21(月) 22:42:54 (+0,-27,+0)
    insight使ってる
    軟弱者でスマン
    67 : デフォルトの名無 - 2007/05/22(火) 00:17:10 (+1,-16,+0)
    gdb
    68 : デフォルトの名無 - 2007/05/22(火) 16:23:45 (-1,-29,-15)
    fprintf

    Purifyplusとか使ってる金持ちおるんかいな。使い心地とか聞いてみたい。
    69 : デフォルトの名無 - 2007/05/22(火) 16:53:26 (-11,-29,+0)
    symdeb
    70 : デフォルトの名無 - 2007/05/26(土) 00:03:12 (+4,-29,-42)
    autoconfって必要? 一発でまともにconfigure通ったことが無い。
    71 : デフォルトの名無 - 2007/05/26(土) 21:14:23 (+3,-29,-47)
    autotoolizeされたソフトであっても Cygwin や MinGW+MSYS で
    テストされていないものが多いからそんなもんだよ…
    必要なライブラリが足りてないとかだったら >>70 が悪いだけだが…
    72 : デフォルトの名無 - 2007/06/03(日) 15:47:12 (-2,-30,-23)
    cygwinでscanfのEOFはctrl+Dですか?
    73 : デフォルトの名無 - 2007/06/03(日) 15:50:11 (-1,-29,-14)
    いいえ bash で CTRL+D すると EOF になります。
    74 : デフォルトの名無 - 2007/06/03(日) 18:45:46 (-1,-29,-8)
    cshでもそうだな。
    CTRL+DがEOFじゃないcygwin上のシェルは何になるの?
    75 : デフォルトの名無 - 2007/06/03(日) 18:51:44 (+45,+17,-6)
    cmd.exe とか?
    「cygwin上の」って意味が分からんから外れてるかもしれんが。
    76 : デフォルトの名無 - 2007/06/14(木) 03:32:28 (+43,-30,-259)
    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 (+2,-29,-41)
    いまどきエミュ環境なんか使ってるなよ。
    VMか、colinuxか、本物のLinuxを入れるのが一番いい。
    78 : デフォルトの名無 - 2007/06/14(木) 11:03:27 (+4,-30,-48)
    >>76
    そのasのラッパに、asの実体のパスがうまく伝わってないっぽいな。
    本来なら exec ~/as -Qy -o となるところが exec -Qy -o となっているんだろう。

    cygwin上でlinuxのcrossなんてきちんと検証されてないだろ。
    自力で解決できないならあきらめろ。
    79 : デフォルトの名無 - 2007/06/14(木) 12:43:55 (+63,+29,-3)
    >>76
    クロスアセンブラは用意してある?
    80 : デフォルトの名無 - 2007/06/14(木) 14:40:46 (-2,-30,-13)
    gcc だけじゃなくて binutils, glibc が必要
    81 : デフォルトの名無 - 2007/06/15(金) 20:29:47 (+28,-29,-54)
    >>77
    Win32 のコマンドラインアプリと、UNIX 由来のツールをパイプでつなげるときはどうするの
    WINE だったら大爆笑だけど
    82 : デフォルトの名無 - 2007/06/15(金) 23:27:53 (+11,-24,-37)
    パイプでつなげて使いたいようなWin32のコマンドラインアプリって・・・ある?
    83 : デフォルトの名無 - 2007/06/16(土) 00:31:19 (-6,-29,-10)
    >>82
    dir | more
    84 : デフォルトの名無 - 2007/06/16(土) 02:01:46 (+53,+22,-17)
    >>81
    だから本来そういう用途のためのcygwinだろ。
    何が悲しくてwin32でlinuxのcrossを動かさにゃならんのだ。逆ならともかく。
    85 : デフォルトの名無 - 2007/06/16(土) 08:29:23 (+93,+29,-66)
    UNIX系のコマンドは正常のときは比較的無口で
    エラーのときは情報を必要十分な量だけ的確に吐くから
    パイプで繋げるときに有効性が出てくるんだけど

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

    86 : デフォルトの名無 - 2007/06/16(土) 08:43:24 (+2,-29,-24)
    linuxで試しにdirと打ってみたらファイル一覧が表示された
    lsのエイリアスが張ってあるな
    87 : デフォルトの名無 - 2007/06/16(土) 08:54:03 (-1,-29,-10)
    >>86
    最近は、coreutilsに入ってるはず > dir
    88 : デフォルトの名無 - 2007/06/16(土) 13:59:57 (+62,+22,-16)
    >>85
    対象としてるユーザ層がそもそも違うOSだからな。
    89 : デフォルトの名無 - 2007/06/20(水) 14:47:27 (-1,-29,-8)
    MingwのOpenMP対応まだぁ?
    90 : デフォルトの名無 - 2007/06/21(木) 23:25:01 (+11,-29,-58)
    >>82
    自分でデータ処理するための細々したツールをmingwで書いてパイプでつないでるよ。
    mingwだからwin32アプリだ。
    つーか、そうしたいからcygwinやらmingwやら使ってるんじゃないの?
    GUIアプリ作りたきゃ、タダのvisual studio使ったほうがマシだよ。
    91 : デフォルトの名無 - 2007/06/21(木) 23:40:02 (+4,-30,-67)
    >>90
    その用途だと mingw である必然がないと思うが…
    CUI でも Visual Studio 使って作ればいいんじゃね?
    # cygwin で POXIS API使って作りたいとか cygwin 上の
    # UNIX ライクツールと組み合せて使うとかならわかるんだが…
    92 : デフォルトの名無 - 2007/06/22(金) 14:47:29 (+57,+29,-6)
    個人の自由にけちをつける変態スレはここですか?
    93 : デフォルトの名無 - 2007/06/22(金) 16:24:16 (+50,+29,-7)
    公共の場でオナニーをする奴はけちつけられると思うヨー
    94 : デフォルトの名無 - 2007/06/27(水) 16:06:19 (-6,-29,-4)
    GCJの質問もOKですか?
    95 : デフォルトの名無 - 2007/07/04(水) 18:56:17 (+26,-30,-175)
    下記のページを見て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 (+8,-29,-4)
    >>96
    --driver-name gccを取ったりしたらうまくいかない?
    97 : デフォルトの名無 - 2007/07/05(木) 18:47:58 (+4,-30,-182)
    >>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 (+11,-29,-6)
    SJISコードがうごかねー。
    いい加減、gccもデフォルトでSJISに対応してくれよな。。。
    せめて単純追加オプションで。
    99 : デフォルトの名無 - 2007/07/07(土) 00:06:54 (+17,-11,+3)
    >>98
    つ ttp://www.noppi.jp/diary/?date=20041126
    100 : 95 , 97 - 2007/07/07(土) 00:29:16 (+6,-30,-286)
    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
    等を追加すると正常動作するものと思われます。
    以上、ご報告まで。間違いがあれば指摘お願いします。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / gcc スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 932 + - cannotfind + - cp932 + - FreeHDL + - heap + - known + - log4cxx + - WinMain@16 + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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