1read 100read
2013年06月プログラム127: Cygwin + MinGW + GCC 相談室 Part 7 (152)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
C/C++の宿題片付けます 165代目 (293)
推薦図書/必読書のためのスレッド 70 (140)
十進BASIC (127)
Go の宿題片付けます (142)
つまりRubyってPerlの後続じゃん? (192)
Android SDK以外でのアプリ作成を全面禁止へ (124)
Cygwin + MinGW + GCC 相談室 Part 7
1 :2013/01/01 〜 最終レス :2013/06/18 Windows上で動作するフリーの開発環境 CygwinとMinGWに関する相談スレッドです。 過去スレ: Cygwin + MinGW + GCC 相談室 Part 6 http://toro.2ch.net/test/read.cgi/tech/1304609116/ Cygwin + MinGW + GCC 相談室 Part 5 http://hibari.2ch.net/test/read.cgi/tech/1269400706/ Cygwin + MinGW + GCC 相談室 Part 4 http://pc12.2ch.net/test/read.cgi/tech/1221233882/ cygwin + mingwn + gcc 相談室 Part3 http://pc11.2ch.net/test/read.cgi/tech/1177944767/ 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について part10 http://toro.2ch.net/test/read.cgi/tech/1315026784/
2 : 2 名前:デフォルトの名無しさん[sage] 投稿日:2011/05/06(金) 00:25:49.76 バイナリ配布サイト: TDM's GCC/mingw32 Builds http://www.tdragon.net/recentgcc/ Komisar Mingw http://komisar.gin.by/mingw/ msys-cn - Project Hosting on Google Code http://code.google.com/p/msys-cn/ MAME | Tools for building MAME on Windows http://mamedev.org/tools/ MinGW Distro - nuwen.net http://nuwen.net/mingw.html mingw-w64 http://mingw-w64.sourceforge.net/ Cross-Mingw.GCC - x86/x64 - XvidVideo.RU http://www.xvidvideo.ru/2009-10-22-10-49-14/cat_view/28-cross-mingwgcc-x86x64.html 猫科研究所(felid labo) - MinGW猫科研究所パック http://up-cat.net/
3 : ttp://www.mingw.org/wiki/Linking_hangs_under_Windows_7 rare occasionsってのが嫌すね。 exFATやSMBだとどうなるんだろ?
4 : 安物NASのSMBと100BASE-TXだと、gccのtarballの展開 (NAS上で、bunzip2|tar xf -) すら時間が掛かり過ぎる。 常用するのは厳しいかも。
5 : mingw の gcc で test.dll とインポートライブラリ libtest.a を次のように作った g++ --shared -o test.dll test.cpp pexports test.dll > test.def dlltool --dllname test.dll --input-def test.def --output-lib libtest.a それを実際にリンクさせようとしたところ、 g++ -Lライブラリのパス -ltest main.cpp とやったら、リンクエラー undefined reference to・・・ が発生した。 libtest.a をカレントディレクトリにコピーしてきて g++ main.cpp libtest.a とやったら、ビルドできた。 ネット上で mingw の dll の使い方を調べてみると 前者の方法で良いみたいだけど、なぜかできない。 なんで?
6 : main.cpp と -ltest の順番を変えろ。 超 FAQ
7 : いろんな種類のgccが出て来てるね。解説キボンヌ。
8 : イボンヌです
9 : >>6 ありがと、まさにそれだった。 一応使う前に FAQ は見たんですけどね http://archive.linux.or.jp/JF/JFdocs/archive/GCC-FAQ/
10 : >>8 つまり畑は違えど種は同じ、と
11 : http://www.sixnine.net/cygwin/translation/mingw-doc/mingwfaq.html ここを見ると、mingw32-make は msys の make に比べて 機能が欠けていたり修正されていたりするそうだけど、 具体的にはどんな機能が書けていたり修正されてるの? この辺りネットで調べてみても、誰も具体的には説明していないような気がする。 当然だけど、これでビルドされた exe ファイルに違いはないよね?
12 : うん
13 : msys*.dllをリンクしたmakeはMSYSのパス(/usr/local)をネイティブパス(C:\mingw\msys\local)に変換してくれたりするのでは
14 : GNUのサイトからmakeのソースを落としてそのままビルドしようとするとconfigureで >case "$has_wait_nohang" in > no) echo > echo "WARNING: Your system has neither waitpid() nor wait3()." > echo " Without one of these, signal handling is unreliable." > echo " You should be aware that running GNU make with -j" > echo " could result in erratic behavior." > echo ;; >esac と言われる。 waitpid()はmsys-1.0.dllの中にあるので、MinGWのサイトにあるmsysを使うようにパッチされたソース (make-3.81-3-msys-1.0.13-src.tar.lzma)を使ってビルドされたmakeならば-jオプションがちゃんと動くと思う
15 : 今まで make って、Makefile に書かれたコマンドを単に実行するだけで、 そのコマンドが使うデフォルトのパスとかには一切関わらないと思ってたが、 話を聞いてるとどうも違うみたいだ
16 : rubenvbって何?
17 : >>15 ディフォルトメークルールで何でもあり。
18 : >>14 msysサポート如何にかかわらず make -j はよく刺さる。 ちゃんと動くバージョン希望。 むしろ今後のプロジェクトでは cmake+ninja にしろ。ちゃんと、しかも高速に並列動作する。 >>16 理解できていないものをことごとく馬具呼ばわりする蘭厨。
19 : >>7-8 >>10 そういや32bit版はC++の例外絡みでdw2とsjljに分かれてますね。
20 : 分かれてるね
21 : うん
22 : 前スレのcommon lispのconfigureがmsysでコケちゃったの別解 msysやめて、cygwinでやってみた $ CC=i686-w64-mingw32-gcc CXX=i686-w64-mingw32-g++ ./configure --enable-ansi --build=i686-w64-mingw32 (事前にcygwinにmingwなgmpいれとかないといけない。) これで、configureは成功する。 しかし、makeでまだ、コケる。
23 : c++.exe と g++.exe ってなんか違うん?
24 : >>23 c++.exe と g++.exe のファイルのハッシュ値が一致するから同じものやね。 Linaxなんかだと、どちらかは片方のシンボリックリンクとかになってるんじゃないだろうか。
25 : Linaxっておいw
26 : そうなのか。 何のためにあるんだろ、歴史的な経緯とか、互換性のためかな。 今はどちらでも気にしないで使って良いんだね。 ありがと。
27 : 互換性だろうな ccコマンドと同じ事だろう
28 : >>24-25 トイレ?
29 : みんなgcc捨ててclang使ってないの? clangはエラーメッセージがgccよりわかりやすくてよい
30 : clangはもっと簡単に使えるようにしてよ gccみたいに解凍して環境変数設定したら即使えるようにならない限り選択肢にならん
31 : Cygwin の clang はインスコ一発で使えないか?
32 : 春先に出るであろうgcc-4.8はclangみたいなエラー表示してくれるよ
33 : cygwinの設定で環境変数を変数名HOME、値/home/usernameと設定したのですが、 HOMEという変数名はcygwinを使うためだけに設定しても大丈夫なのですか? 他のソフトでも環境変数のHOMEを設定するときに不都合があったりするのでしょうか。 大学の授業の延長で自宅のPCでも使えるようにしたので、環境変数とかについては無知です。 よろしくお願いします。 homeディレクトリをC:\cygwin\home\usernameにしておきたいのですが...
34 : たとえばバッチならバッチの冒頭でセットするとか
35 : ふーん
36 : >>33 bash側でHOMEを設定するなら、Windowsアプリには影響しないよ。
37 : >>36 ありがとうございます。 bashについては自分で調べておきます。
38 : >>25 俺の環境ではLinaxはLinuxへのシンボリックリンクだから大丈夫
39 : ちょっと気をつける点があるが HOME を /cygdrive/c/Users/yourname にすると便利なことが多い。
40 : mount? /etc/fstab
41 : パーミッションが0になってWindowsから書き込みできなくなりった
42 : >>1 新年明けましておめでとう。良い年であるといいね
43 : gcc で32/64bit syntax-only コンパイルを行いたいがスイッチによって定義済みマクロが切り替わらないです。 これって全部自分で再定義しないとだめなの? __SIZE_TYPE__ とか __PTRDIFF_TYPE__ とかその他もろもろ。 ILP32/LP64/LLP64とかを切り替えて syntax-only がしたいんだけどどうすれば?
44 : 1. 上記に追加、というかこれが本題で clang で syntax-only をしたいのだが、 -m32/m64 に相当するスイッチも見当たらないしどうやって32/64bitの切り替えを行えばいい? ちなみに 64bit 想定で size_t が uint64_t 相当になると <new> をインクルードしただけで operator new がエラーになる。 第一引数の size_t は uint32_t 想定である的なエラーになるんだが・・・。 これを解決して size_t が uint64_t でも syntax-check をパスできるようにしたいです。
45 : 2. clang で Windows.hを syntax-only したときにデバッグビルドだと __STR2WSTRマクロで勝手にリテラル記号をつけられてしまうのだがclang がこれに対応していないのかリテラルとして処理できずにエラーになるんだが、どうする方法ない? とりあえず現状 -U_DEBUG で非デバッグ版として回避してるけど、_DEBUG ありでちゃんと通るようにしたい 3. clang のオプションについての質問 -fms-version -fms-extensions を設定しているのに _MSC_VER や _MSC_EXTENSIONS が定義されない これってどうなの?まだ未対応?
46 : -no include 系オプションがおかしい? clang -fsyntax-only -x c++ -v /dev/null とかで表示されるインクルード対象だが、オプション一覧にでてるのは -nobuiltininc Disable builtin #include directories -nostdinc++ Disable standard #include directories for the C++ standard library -nostdsysteminc Disable standard system #include directories デフォルトでインクルードされる対処を全て除外したいので clang -fsyntax-only -x c++ -v -nostdinc /dev/null とかにすると望みの結果になるのだが
47 : clang -cc1 -fsyntax-only -x c++ -v -nostdinc /dev/null とするとダメ。 正確には -v つけてるうちはよいが外して、ビルドすると cc1 は -nostdinc ねぇよ、っていわれます。 -v -nostdinc で出力されたオプション列を真似して -cc1 に渡す nobuiltininc/nostdinc++/nostdsysteminc を指定してもinclude対象ディレクトリを全ては除外できずnostdinc相当になりません。 これってどうすればいいんでしょうかね?
48 : ttps://sites.google.com/site/x32abi/ ILP32(x32abi)はウニックス系だけじゃね、つかえるのは とういうか、windowsでx32apiのバイナリ動く(ある)のけ mingw64は i686-w64-mingw32 x86_64-w64-mingw64 で64bit/32bit環境を混在させないようにしてる clangはこれからでしょ、まだ枯れてないような
49 : mingw初心者で解らんから聞くけど i686-w64-mingw32 (i686, w64, mingw32) x86_64-w64-mingw64 (x86_64, w64, mingw64) の各部は何を意味するですか
50 : ggrks
51 : バツ x86_64-w64-mingw64 マル x86_64-w64-mingw32 i686-pc-cygwin i686-pc-mingw32 gccのconfig.hostとか覗いてみたら、なんとなくわかるよ
52 : >>44 ggrks
53 : gnu-grks
54 : cygwinの中でしか使い物に成らないんだからPEじゃなくランチャーかましてELFで提供してくれればよかったのに
55 : g++-4.7 になってから C++ ABI が変わったが clang がまるで対応してない感じ。 (ひとごと)
56 : boostをビルドしたが、VCのmlが必要なんだな
57 : boostのビルド時間の長さは異常
58 : distro mingw 9.6 boostが1.53.0になって付属ユーティリティがマイナーバージョンアップしてる以外は 大して変わってない模様
59 : >>58 それboost context libがないからcoroutineが使えない ということで俺boostビルド
60 : いきなりで申し訳ありません。 連投になりますが失礼します。 現在Windows7-64bitOSにCygwinを入れております。 今回tcl/tk-8.4.19ライブラリを入れたいと考え、 Tcl Developper XchangeからGzipファイルをダウンロードしてmakeを行いました。
61 : >>60 の続き tclのほうはうまくいったのですが、tkのほうで./configureをしたところ $ ./configure ・ ・ ・ checking for dlopen in -ldl... (cached) yes checking for ar... (cached) ar Can't figure out how to do dynamic loading or shared libraries on this system. checking for build with symbols... no ・ ・ となりうまくいかず、makeにも失敗しました。 どなたか解決策を知りませんでしょうか。よろしくお願いいたします。
62 : config.logを
63 : cygwinのpakageは8.5.11ですが ttp://cygwin.com/packages/tcl-tk/ downstreamがお好きなんですね
64 : レス遅になって申し訳ありません >>62 さん 長くなるのでupしました レベルが低くurlが張れないので情報だけで申し訳ありません うpろだ@2chライブラリーの ファイル名lib634095.txt オリジナル名config.logconfig.log です よろしくお願いします >>63 さん 使いたいソフトをmakeするのに8.5以上のバージョンだとだめで 8.4.19を使わないといけなかったので・・・
65 : これと同じかな tcl/tkライブラリのインストールについて ttp://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11101739481
66 : > configure:5319:28: fatal error: X11/XIntrinsic.h: No such file or directory
67 : ./configure --without-x
68 : これってバグだろうか? ttp://www.07ch.net/up2/src/lena8673.png Target:x86_64-w64-mingw32 MinGW64 gcc version 4.7.2 (rubenvb-4.7.2-release)
69 : ちなみにビルドログ ttp://www.07ch.net/up2/src/lena8674.zip
70 : 64bitアプリっていっても そんなにでかい静的配列は作れないみたいだよ windowsの制約らしいけど
71 : 勘違いしてました。ありがとう
72 : >>64 です 長い間入れずに申し訳ありません >>65 さん それと同一人物です ./configure --with-tcl=../../tcl8.4.19/unix \ --x-includes=/usr/include/X11 --x-libraries=/usr/lib/X11 \ のようにしたところパスは一応通り、tkWinDefault.hが見つからないとエラーが出たので winのフォルダから持ってきたところ一応makeはできました。 皆様のご協力ありがとうございます。 ただ、configureでの Can't figure out how to do dynamic loading or shared libraries on this system. は解決できませんでした・・・
73 : cygwin64キテルよ
74 : >>72 共有ライブラリが作れないっていってんだったら、 --disable-shared だかなんだか、共有ライブラリを作らない設定にしたらどうだよ。 ってか、メッセージちゃんと読んで./configure --helpでオプション調べるくらいしろよ。
75 : cmdのstartのようなコマンドはcygwinにありますか? たとえばcygwinコンソール起動中にvimコマンドで、コンソール内でText編集、保存、cygwinに戻ってコンパイル というのは面倒なので、新しいウィンドウでアプリケーションを起動するコマンドを知りたいです。
76 : >>75 /usr/bin/cygstart.exe
77 : >>76 cygstart vim TestRun.java でできました。ありがとうございます
78 : windows7の64bit環境でmingwを使いc++のプログラムをコンパイルしようとしているのですが、 環境変数をC:\mingw\binに設定し、hello worldを表示させるだけのコードにコンパイルをかけてみると g++:エラー:CreateProcess:No such file or directory となってしまいます ソースファイルのディレクトリも合っていますしlsで存在も確認できています ここ数日ほどこれで足止め食らってます どうか解決策をご教授ください
79 : ggrks エスパー http://absolutearea.blogspot.jp/2010/07/eclipse-cdt-mingw64bit.html
80 : 1.環境変数なんてイラン 2.MinGW64\binをMinGW32\binよりPathの前方に移動させる これでどや?
81 : >>79 回答ありがとうございます そのサイトにもたどり着いて試したんですが・・・ -vで内容を確認しても特に間違っている感じはないんです >>80 同じく回答ありがとうございます MinGWは64bit分しかいれてないのでMinGW32はないんです
82 : g++ -vでコンパイルしたときの出力を貼れよ ここじゃなくてpastebinとかでな
83 : g++:エラー:CreateProcess:No such file or directory ってなんかmingwじゃなくPC側の設定とかに問題ありって感じだな
84 : とりあえず where gcc objdump -p C:\MinGW64\bin\gcc.exe | grep DLL objdump -p C:\MinGW64\bin\gcc.exe | grep for C:\MinGW64\bin\gcc.exe --version をやってみようか(C:\MinGW64\binはMinGW64のインストールフォルダ) http://www.07ch.net/up2/src/lena8814.png
85 : >>82 こんな出力です pastebin.com/d4q1BMGv URLを直接張りたいんですがレベルが低いとかで書き込めないんです すいません >>83 PC側の設定ですか・・・ cmdでコンパイラをさわるのは初めてでどうにも難しくて >>84 やってみましたところ、こんな出力になりました pastebin.com/7XPuyLCx
86 : >>85 "cc1plus -quiet -v -iprefix C:\MinGW\libexec\gccx86_64-w64-mingw32/4.5.2/" libexec\gccとx86_64が引っ付いてるのが原因か とりあえずもっと新しいコンパイラで試してみて
87 : そのバージョンsourceforgeに無くね? exeでインストールした? exeならコントロールパネルから削除してC:\MinGWも全て削除してもっと新しいやつをインストールしたほうが良さげ zipならそのままC:\MinGWを全部削除して入れ直した方が良さそう win32とwin64同梱版はややこしいので、たとえばこことか http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/sezero_4.5_20111101/mingw-w64-bin_x86_64-mingw_20111101_sezero.zip/download
88 : >>87 それも古いわw 4.7.2にしとけ
89 : お、俺の環境は古いのか…… ど、どこぞ?
90 : >>89 自分で4.7.2をソースよりビルドする。かっこいい
91 : >>90 configure: error: C preprocessor "/lib/cpp" fails sanity check
92 : cygwinのsetup.exeで入れたらどうなる?
93 : 4.8.0のRCが出たらしいぞ
94 : MSYSなんです
95 : 最新のVisualStudioでコンパイルしたのライブラリ(lib)とヘッダ(hpp)があります(ソースコードcppはありません) これをMinGW+MSYS+GCCの環境で再利用することはできますか?
96 : できますよ
97 : >>95 >>96 C 言語のライブラリ(extern "C" { } の中)は使えるけど C++ は VC と gcc でマングルが違うのでコンパイル済みだと使えなかったんじゃね?
98 : https://www.google.co.jp/#hl=ja&gs_rn=6&gs_ri=psy-ab&gs_is=1&cp=14&gs_id=1hk&xhr=t&q=MinGW+lib+dll+%E5%A4%89%E6%8F%9B&es_nrs=true&pf=p&sclient=psy-ab&oq=MinGW+lib+dll+%E5%A4%89%E6%8F%9B
99 : DLLにコンパイルして動的ロードでおk
100read 1read 1read 100read TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
初心者だけどプログラムを勉強していろいろ作りたい (134)
php使ってる奴はアホ、これからはRuby on Rails! (152)
ネットワークプログラミング相談室 Port29 (229)
インデントはタブかホワイトスペースか? (196)
ネット上でプログラムを共同開発できるか? (134)
プログラミング言語 Scala 9杯目 (136)
--log9.info------------------
【むし社】BE-KUWA(ビークワ)総合スレ3【ギネス】 (168)
【キモイ】ハリガネムシ2本目【30cm?】 (194)
食べられる昆虫を語れ (197)
ばったの後ろ足2本だけちぎって逃がしてみた (204)
くだらない質問はここへ9 (114)
クワカブ川柳・なんじゃこりゃ〜 (145)
好きなマイナークワガタの名前を挙げるスレ (175)
【初心者ホイホイ】キチガイ出品者・個人販売者晒しスレ (157)
タガメ (190)
蚊に刺されたらageるスレ (135)
マルカンスレ part1 (157)
【誰か!】昆虫飼育の新製品を考える【作って!】 (186)
【森林率】高知のカブクワ【日本一】 (109)
【総合】☆カブト ★ クワガタ☆【スレッド】 (166)
【日本一】日本昆虫学協会【守谷様君臨】 (103)
甲虫王者ムシキング (137)
--log55.com------------------
J'A`し貧乏な喪女集まれ74J'A`し
【セブン】コンビニ好きな喪女 その43【ローソン】
どこに行っても嫌われる喪女いる?いたら集合46
モテないし酒でも呑むか80杯目
まめきちまめこが嫌いな喪女ーアンチスレ2
書き込むと願いが叶うスレ 34
【目指せ】ヘアケアを頑張る喪女 25【美髪】
こ こ 無 職 の 男 し か い な い じ ゃ ん