Windows上で動作するフリーの開発環境 CygwinとMinGWに関する相談スレッドです。
過去スレ:
Cygwin + MinGW + GCC 相談室 Part 7
http://peace.2ch.net/test/read.cgi/tech/1357019230/
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/
探検
Cygwin + MinGW + GCC 相談室 Part 8
1デフォルトの名無しさん
2014/09/23(火) 00:20:11.40ID:G97CLCj12014/09/23(火) 00:41:58.04ID:lJUlk5yi
乙
2014/09/26(金) 16:15:48.16ID:SVlqbnuI
MinGW のgccを起動するとPentium MMX環境では不正な処理で落ちます
i586では動かないのでしょうか?
だとしたらどうしたらいいですか?
Windows 2000 SP4
i586では動かないのでしょうか?
だとしたらどうしたらいいですか?
Windows 2000 SP4
2014/09/27(土) 01:02:49.79ID:xVWZeovL
とりあえず古いのを使えば?
2014/09/30(火) 05:45:16.65ID:SzM3wmnu
2014/10/07(火) 23:24:15.31ID:3K4niACL
cygwinの64bit gccではLP64のせいか、MS-C向けのDLLがリンクできない。
そこでLLP64のx86_64-w64-mingw32-gccをcygwin上で使っています。
コンパイルしたものを実行するために、/usr/x86_64-w64-mingw32/sys-root/mingw/bin等の専用DLLのある場所にパスを通す必要がありますが、
他の普通にcygwinでコンパイルしたものを実行する際の邪魔になるのでパスは通したくない。
-staticつければいいけどバイナリがデカすぎる。
なにか、dllのパス名を埋めこむオプションないですかね。
-Rはないと言われるし。
そこでLLP64のx86_64-w64-mingw32-gccをcygwin上で使っています。
コンパイルしたものを実行するために、/usr/x86_64-w64-mingw32/sys-root/mingw/bin等の専用DLLのある場所にパスを通す必要がありますが、
他の普通にcygwinでコンパイルしたものを実行する際の邪魔になるのでパスは通したくない。
-staticつければいいけどバイナリがデカすぎる。
なにか、dllのパス名を埋めこむオプションないですかね。
-Rはないと言われるし。
2014/10/11(土) 02:54:30.06ID:MWJOKHG8
2014/10/11(土) 07:26:00.73ID:WidckbgP
バイナリでかくても
結局実行するとそれだけメモリ食うんだろ?
結局実行するとそれだけメモリ食うんだろ?
2014/10/11(土) 11:41:18.63ID:V7QeocKp
>>8
shared library全否定やな、それ
shared library全否定やな、それ
2014/10/11(土) 11:41:50.70ID:V7QeocKp
>>7
それすると、パイプで繋ぐような使い方ができないんで。
それすると、パイプで繋ぐような使い方ができないんで。
2014/10/11(土) 13:51:02.82ID:VDc8fu3q
2014/10/11(土) 14:01:57.04ID:fBQFLqt8
ないよ。
2014/10/11(土) 22:08:06.83ID:WidckbgP
2014/10/14(火) 20:52:09.81ID:oJt7bxM1
まともなOSのメモリマッピングならデマンドページングするだろ
2014/10/17(金) 09:28:29.33ID:tyCwBko4
MinGW
> objcopy -h
> libintl-8.dll がねーぞゴルァ!
よそから持ってこなきゃだめなん( ゚д゚)?
> objcopy -h
> libintl-8.dll がねーぞゴルァ!
よそから持ってこなきゃだめなん( ゚д゚)?
2014/10/17(金) 15:11:34.85ID:gouFXgPa
しばらく前にMinGW更新したら、同じようにそのDLLでエラーになったな。
古いアーカイブファイルから復帰させたけどどうやるのが正しいのやら。
古いアーカイブファイルから復帰させたけどどうやるのが正しいのやら。
2014/10/17(金) 16:34:43.90ID:tyCwBko4
18デフォルトの名無しさん
2014/10/19(日) 23:35:00.40ID:mp40xGFQ そんなことよりもお前らmsys2 + pacmanは使ったか?
あれはいいものだ
あれはいいものだ
2014/10/26(日) 08:34:29.06ID:axjCVmEg
ディレクトリを選択して右クリックの 送る から cygterm+putty を開くにはどうすればいいのでしょうか?
2014/10/30(木) 11:08:43.38ID:dIih4uCY
cygwinでは npm init がエラーになるんだな
ちょくちょく独特なトラブルが起こるからいまいち使いにくい
ちょくちょく独特なトラブルが起こるからいまいち使いにくい
2014/12/13(土) 19:05:16.23ID:yqGWGgnp
久々にTDMの更新来てるねー
2014/12/19(金) 20:07:46.12ID:TVDdwTgk
msysはなんか一時期まともにインスコできない時期があったので、
cygwin64にcygwin, cygwin32, mingw32, mingw64のコンパイラ入れまくりに落ち着きつつある。
結局windwosネイティブのdll使うにはmingwじゃないとダメだしクロスコンパイルしまくりでやはり面倒ではある。
cygwin64にcygwin, cygwin32, mingw32, mingw64のコンパイラ入れまくりに落ち着きつつある。
結局windwosネイティブのdll使うにはmingwじゃないとダメだしクロスコンパイルしまくりでやはり面倒ではある。
23デフォルトの名無しさん
2014/12/23(火) 12:58:12.55ID:wtjAlw23 x265をコンパイルできるFFmpegをビルドするためにMinGW + MSYSを以下のサイトからダウンロードして
Windows7に入れました。
http://xhmikosr.1f0.de/tools/msys/
MSYS_MinGW-w64_GCC_492_x86-x64_Full.7z
早速x265のコンパイルをしようと以下のサイトを参考にしたのですが、
http://qiita.com/pb_tmz08/items/29165f4c3ef9bc4285ab
hg, cmakeが必要とのことです。(Linuxには疎いのでhgやcmakeがどういうプログラムなのかいまいち分かりませんが)
デフォルトのMinGW + MSYSにはhgやcmakeは含まれていないようです。
hgやcmakeを使えるようにするにはどうしたらいいでしょうか?
Windows7に入れました。
http://xhmikosr.1f0.de/tools/msys/
MSYS_MinGW-w64_GCC_492_x86-x64_Full.7z
早速x265のコンパイルをしようと以下のサイトを参考にしたのですが、
http://qiita.com/pb_tmz08/items/29165f4c3ef9bc4285ab
hg, cmakeが必要とのことです。(Linuxには疎いのでhgやcmakeがどういうプログラムなのかいまいち分かりませんが)
デフォルトのMinGW + MSYSにはhgやcmakeは含まれていないようです。
hgやcmakeを使えるようにするにはどうしたらいいでしょうか?
2014/12/23(火) 23:02:19.16ID:40EW/Y2H
2523
2014/12/24(水) 21:54:49.37ID:8/ZOVusd ありがとうございました。おかげさまでhg, cmake, ついでにgitまで使えるようになりました。
> MinGWはこっちの方がよくね?
MSYSを別途導入する必要があるようだったので>>23のMSYS_MinGW-w64_GCC_492_x86-x64_Full.7zを使うことにしました。
ところでffmepgのコンパイルをしていて些細な疑問を持ったのですが、
http://d.hatena.ne.jp/kamedo2/20130619/1371662769
のサイトを参考に音声コーデックのfdk-aacをffmpegにマージしてみました。
サイトに書かれていたとおり、
/FFmpeg/fdk-aac-0.1.1/
に移動して
./configure --prefix=/mingw/i686-w64-mingw32
make && make insutall
を実行し、そのあとffmpegのコンパイルをするべく
cd ../ffmpeg-HEAD-4110828
でffmpegフォルダに移動し
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-libfdk-aac
--extra-ldflags=-static --extra-cflags='-march=native -mfpmath=sse' --optflags=-O2
を実行したところ問題無くconfigureは通りました。
> MinGWはこっちの方がよくね?
MSYSを別途導入する必要があるようだったので>>23のMSYS_MinGW-w64_GCC_492_x86-x64_Full.7zを使うことにしました。
ところでffmepgのコンパイルをしていて些細な疑問を持ったのですが、
http://d.hatena.ne.jp/kamedo2/20130619/1371662769
のサイトを参考に音声コーデックのfdk-aacをffmpegにマージしてみました。
サイトに書かれていたとおり、
/FFmpeg/fdk-aac-0.1.1/
に移動して
./configure --prefix=/mingw/i686-w64-mingw32
make && make insutall
を実行し、そのあとffmpegのコンパイルをするべく
cd ../ffmpeg-HEAD-4110828
でffmpegフォルダに移動し
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-libfdk-aac
--extra-ldflags=-static --extra-cflags='-march=native -mfpmath=sse' --optflags=-O2
を実行したところ問題無くconfigureは通りました。
2623
2014/12/24(水) 21:55:31.04ID:8/ZOVusd 調子に乗って「fdk-aacだけでなく最近はやりのOpusという音声コーデックもマージしよう」と
http://downloads.xiph.org/releases/opus/opus-1.1.tar.gz
をダウンロード&展開し、
./configure --prefix=/mingw/i686-w64-mingw32
make && make insutall
を実行。その後ffmpegフォルダに移動して、
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-libfdk-aac --enable-libopus
--extra-ldflags=-static --extra-cflags='-march=native -mfpmath=sse' --optflags=-O2
を実行してみたところ
ERROR: opus not found using pkg-config
Note: When building a static binary, add --pkg-config-flags="--static".
とエラーが返されました。fdk-aacはよくてopusは何でダメなの?訳が分からずググッてみると
ffmpegのconfigureを実行する前に
export PKG_CONFIG_PATH="/mingw/i686-w64-mingw32/lib/pkgconfig"
のおまじないを唱えると問題無くconfigureが通ることが分かりました。
http://qiita.com/tukiyo3/items/ac36375d426d39f203fb
fdk-aacはPKG_CONFIG_PATHをエクスポートせずとも良くて
OpusはPKG_CONFIG_PATHをエクスポートしないとconfigureが通らないのはなぜでしょうか?
http://downloads.xiph.org/releases/opus/opus-1.1.tar.gz
をダウンロード&展開し、
./configure --prefix=/mingw/i686-w64-mingw32
make && make insutall
を実行。その後ffmpegフォルダに移動して、
./configure --enable-gpl --enable-version3 --enable-nonfree --enable-libfdk-aac --enable-libopus
--extra-ldflags=-static --extra-cflags='-march=native -mfpmath=sse' --optflags=-O2
を実行してみたところ
ERROR: opus not found using pkg-config
Note: When building a static binary, add --pkg-config-flags="--static".
とエラーが返されました。fdk-aacはよくてopusは何でダメなの?訳が分からずググッてみると
ffmpegのconfigureを実行する前に
export PKG_CONFIG_PATH="/mingw/i686-w64-mingw32/lib/pkgconfig"
のおまじないを唱えると問題無くconfigureが通ることが分かりました。
http://qiita.com/tukiyo3/items/ac36375d426d39f203fb
fdk-aacはPKG_CONFIG_PATHをエクスポートせずとも良くて
OpusはPKG_CONFIG_PATHをエクスポートしないとconfigureが通らないのはなぜでしょうか?
2014/12/26(金) 21:04:32.27ID:OP/Bn95j
2014/12/27(土) 13:54:55.65ID:BCIPL5E0
MSYS2 Avira で TR/Crypt.XPACK.Gen2 連発するから困る
2014/12/29(月) 09:28:57.28ID:mY3AFavo
3023
2014/12/29(月) 11:52:31.05ID:m849QDq12014/12/30(火) 12:28:25.80ID:NSL+ZZg4
>>30
デフオルトの場所にあれば教えんでも工工わな
デフオルトの場所にあれば教えんでも工工わな
3223
2014/12/30(火) 16:47:35.91ID:tC9GpZ1z >>31
fdk-aacもOpusも共に
./configure --prefix=/mingw/i686-w64-mingw32
とconfiguraしています。だから同じ /mingw/i686-w64-mingw32 にライブラリは格納されてるはずなんです・・・
Opusだけどっかイレギュラーな場所にライブラリをコピーしちゃってるんでしょうかね?
fdk-aacもOpusも共に
./configure --prefix=/mingw/i686-w64-mingw32
とconfiguraしています。だから同じ /mingw/i686-w64-mingw32 にライブラリは格納されてるはずなんです・・・
Opusだけどっかイレギュラーな場所にライブラリをコピーしちゃってるんでしょうかね?
2014/12/30(火) 21:17:40.84ID:NhJ3bWE9
>>30 >>32
疑問を持った時点でffmpegのconfigureの中身を見なさいな。(以下抜粋
> enabled libfdk_aac && require libfdk_aac fdk-aac/aacenc_lib.h aacEncOpen -lfdk-aac
> enabled libopus && require_pkg_config opus opus_multistream.h opus_multistream_decoder_create
ライブラリ有無のチェックに、libopusはpkg-configを用いて判定してるってだけ。
なので PKG_CONFIG_PATH を設定する必要がある。
疑問を持った時点でffmpegのconfigureの中身を見なさいな。(以下抜粋
> enabled libfdk_aac && require libfdk_aac fdk-aac/aacenc_lib.h aacEncOpen -lfdk-aac
> enabled libopus && require_pkg_config opus opus_multistream.h opus_multistream_decoder_create
ライブラリ有無のチェックに、libopusはpkg-configを用いて判定してるってだけ。
なので PKG_CONFIG_PATH を設定する必要がある。
2015/01/04(日) 16:52:23.98ID:BvegMGE7
cygwin64上で作業をやっとります。
故あって32bitコードを書かねばならないのですが、
i686-w64-mingw32-gcc, i686-pc-cygwin-gcc共にfopenでPOSIXパスを渡すと、
errno=2, No such file or directory
ということで開けません。
windowsパスにすると開けます
ダメ fopen("/home/foo/bar.txt", "r");
OK fopen("c:/cygwin64/home/foo/bar.txt", "r");
mingwでは仕方ないかとは思いますが、cygwin32までPOSIXパスを否定されると辛い。
objdumpで見ても、fopenはcygwin1.dllのものを使用している模様。
PATHは/usr/i686-pc-cygwin/sys-root/usr/binを通してあります。
POSIXパスを認識させる良い方法がありましたら御指南願います。
故あって32bitコードを書かねばならないのですが、
i686-w64-mingw32-gcc, i686-pc-cygwin-gcc共にfopenでPOSIXパスを渡すと、
errno=2, No such file or directory
ということで開けません。
windowsパスにすると開けます
ダメ fopen("/home/foo/bar.txt", "r");
OK fopen("c:/cygwin64/home/foo/bar.txt", "r");
mingwでは仕方ないかとは思いますが、cygwin32までPOSIXパスを否定されると辛い。
objdumpで見ても、fopenはcygwin1.dllのものを使用している模様。
PATHは/usr/i686-pc-cygwin/sys-root/usr/binを通してあります。
POSIXパスを認識させる良い方法がありましたら御指南願います。
36デフォルトの名無しさん
2015/01/04(日) 16:57:48.42ID:Qu74iV3W2015/01/04(日) 17:25:27.63ID:tnXQTL6U
2015/01/04(日) 18:42:58.13ID:BvegMGE7
>>37
windows8でcygwin32使うとfork errorでまくりでコンパイルが進まないorz
windows8でcygwin32使うとfork errorでまくりでコンパイルが進まないorz
2015/01/04(日) 18:44:55.84ID:BvegMGE7
>>36
いやいや、cygwin64環境、cygwin32環境でネイティブのgccを使うとPOSIXパス使えるんだわ。
ところが、cygwin64環境でcygwin32(i686-pc-cygwin)だと使えないわけで。
32bit版cygwin1.dllがルートパスをどこと認識してるか、ってところなのかな。
いやいや、cygwin64環境、cygwin32環境でネイティブのgccを使うとPOSIXパス使えるんだわ。
ところが、cygwin64環境でcygwin32(i686-pc-cygwin)だと使えないわけで。
32bit版cygwin1.dllがルートパスをどこと認識してるか、ってところなのかな。
2015/01/04(日) 20:35:46.69ID:tnXQTL6U
>>38
rebaseallやってもforkエラー出まくりなんだとしたらしゃーないな。
cygwin1.dllがあるディレクトリの1つ上がルートディレクトリになってるはず。
単にUnix形式になってさえいればいいのなら /cygdrive/c/cygwin64/home/foo/bar.txt で
開けばいいし、それだとダメならfstabをいじるか
rebaseallやってもforkエラー出まくりなんだとしたらしゃーないな。
cygwin1.dllがあるディレクトリの1つ上がルートディレクトリになってるはず。
単にUnix形式になってさえいればいいのなら /cygdrive/c/cygwin64/home/foo/bar.txt で
開けばいいし、それだとダメならfstabをいじるか
2015/01/04(日) 23:12:59.46ID:BvegMGE7
>>40
windows7ではrebaseで治るんだけどなぁ。8.1はどうやっても連発で。
cygwin1.dllの一つ上がルートディレクトリはいい話を聞きましたわ。
マウントかリンクでなか胡麻化せるかも
windows7ではrebaseで治るんだけどなぁ。8.1はどうやっても連発で。
cygwin1.dllの一つ上がルートディレクトリはいい話を聞きましたわ。
マウントかリンクでなか胡麻化せるかも
2015/01/04(日) 23:41:05.65ID:BvegMGE7
2015/01/06(火) 23:06:21.71ID:ei45L6+i
>>40
/usr/i686-pc-cygwin/sys-root/usr
がcxgwin32のルートになるわけやね。
cygwin64の/homeや/optを/cygdpgve/c/cygwin64/homeの形式で
/usr/i686-pc-cygwin/sys-root/usr/homeとしてシンボリックリンク張ったらあらかた違和感なく32bit, 64bit混在できるようになった。
/usr/i686-pc-cygwin/sys-root/usr
がcxgwin32のルートになるわけやね。
cygwin64の/homeや/optを/cygdpgve/c/cygwin64/homeの形式で
/usr/i686-pc-cygwin/sys-root/usr/homeとしてシンボリックリンク張ったらあらかた違和感なく32bit, 64bit混在できるようになった。
44片山博文MZ ◆T6xkBnTXz7B0
2015/01/17(土) 00:33:59.73ID:PPUSm5YO OpenMPをお使いの方、おらっしゃられるでござるか?
2015/01/20(火) 15:45:02.99ID:aVZQpFMF
あるプログラムをmakeしてるんですが、
./configureで
"Can't find pthread library"
って出ます。
どうすればpthread libraryをインストールできますか?
./configureで
"Can't find pthread library"
って出ます。
どうすればpthread libraryをインストールできますか?
2015/01/21(水) 22:52:26.98ID:8VLGtKQr
setupすればいいだろ
2015/02/08(日) 15:58:27.25ID:GkyTZ4Fl
g++で関数に一時オブジェクトを渡した場合の警告を抑制するにはどうしたらよいですか?
function( &HOGE() )
taking address of temporary
いったん変数に受けて回避していますが、その変数を作るのがめんどうくさいです。
function( &HOGE() )
taking address of temporary
いったん変数に受けて回避していますが、その変数を作るのがめんどうくさいです。
48デフォルトの名無しさん
2015/02/08(日) 23:18:34.94ID:xZ3vG5op MinGWでlibmysql.dllを使いたくて
http://blog.livedoor.jp/dq_school/archives/1256405.html
を参考にして
> reimp libmysql.lib
> gcc -I"/C/Program Files/MySQL/MySQL Connector C 6.1/include" -o tester.cgi tester.c
"/C/Program Files/MySQL/MySQL Connector C 6.1/lib/liblibmysql.a"
とか
> reimp -c -d libmysql.lib
> dlltool -k -d libmysql.def -l libmysql.a
とかやってみたんだけど相変わらず
「undefined reference to mysql_init@4'」
とかのエラーが出やがります。
誰か助けてください。
defファイルを覗いてみたら「@n」のついてる関数名が1つも無いのが気になったけど、
http://tsubaki.hatenablog.com/entry/20121020/1350734844
の
>defファイルの中を見ると関数名の後ろに@8だの@12だの色々な数字がついているのが分かります。
との記述と食い違うのが気になります。
http://blog.livedoor.jp/dq_school/archives/1256405.html
を参考にして
> reimp libmysql.lib
> gcc -I"/C/Program Files/MySQL/MySQL Connector C 6.1/include" -o tester.cgi tester.c
"/C/Program Files/MySQL/MySQL Connector C 6.1/lib/liblibmysql.a"
とか
> reimp -c -d libmysql.lib
> dlltool -k -d libmysql.def -l libmysql.a
とかやってみたんだけど相変わらず
「undefined reference to mysql_init@4'」
とかのエラーが出やがります。
誰か助けてください。
defファイルを覗いてみたら「@n」のついてる関数名が1つも無いのが気になったけど、
http://tsubaki.hatenablog.com/entry/20121020/1350734844
の
>defファイルの中を見ると関数名の後ろに@8だの@12だの色々な数字がついているのが分かります。
との記述と食い違うのが気になります。
2015/02/12(木) 00:40:45.45ID:mUfomLLZ
mingwはvc++用のライブラリをそのまま食えるだろ
レスを投稿する
ニュース
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★5 [BFU★]
- 【野球】大谷翔平、佐々木朗希、山本由伸らがWBC辞退なら広がる不協和音… 『過去イチ盛り上がらない大会』になる可能性も★2 [冬月記者★]
- 【国際】ロシアはすでに戦争準備段階――ポーランド軍トップが警告 [ぐれ★]
- 「町中華」の“息切れ倒産”が増加 ブームにも支えられ職人技で踏ん張ってきたが… 大手チェーンは値上げでも絶好調 [ぐれ★]
- 【news23】小川彩佳アナ「ここまでの広がりになるということを、高市総理はどれだけ想像できていたんでしょうね」 日中問題特集で [冬月記者★]
- 毛寧(もう・ねい)報道官「中国に日本の水産品の市場は無い」 高市首相の国会答弁に「中国民衆の強い怒り」 ★2 [ぐれ★]
- 【高市売り】円安、止まらず!凄い勢いで暴落中。157円へ [219241683]
- 俺「お湯を流してと…」シンク「ボンッw」
- 【悲報】ヤフコメ民「中国が水産物を輸入禁止にするなら、日本国民向けに安く販売すればいい。中国依存から脱するべき」 [153736977]
- もう寝ます
- さすがに広告の煽りエグくね?
- 1,000万円のBMWに擦ってしまった札幌のガキ、捕らえられてガチで詰む [329329848]
