私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレCygwin + MinGW + GCC 相談室 Part 7
gcc スレッド一覧へ / gcc とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
>>248
> 大半の人にとっては、ツールセットが何らかのDLLに依存してるかどうかはどうでもいいことで
えっ
静的リンクと動的リンクの違いが「どうでもいい」とかすごい意見だな
静的リンクを多用するWindowsと動的リンクが中心のLinuxの文化の違いを表す重要な側面なのに
> 大半の人にとっては、ツールセットが何らかのDLLに依存してるかどうかはどうでもいいことで
えっ
静的リンクと動的リンクの違いが「どうでもいい」とかすごい意見だな
静的リンクを多用するWindowsと動的リンクが中心のLinuxの文化の違いを表す重要な側面なのに
>>251
ちょっとまて、ツールセットがDLLに依存してるといいたいのかと思っていたが
生成されるバイナリがDLLに依存しているといいたいのか?
なら、依存しないってのが答えだぞ(少なくともCプログラムでは)
つまり嘘
ちょっとまて、ツールセットがDLLに依存してるといいたいのかと思っていたが
生成されるバイナリがDLLに依存しているといいたいのか?
なら、依存しないってのが答えだぞ(少なくともCプログラムでは)
つまり嘘
WindowsのMinGWは、最終的にWindowsAPIか機械語を呼び出して、
基本機能においては特定のDLLやLIBを必要としないだろ。
基本機能においては特定のDLLやLIBを必要としないだろ。
誤解の無いように言っておくとシステムのDLLには依存するが
それ以外の特殊なDLL(cygwin1.dllのような)には依存しないバイナリを
生成できる
ただしC++の場合はC++ランタイム等のスタティックリンクを明示的に行う必要がある
それ以外の特殊なDLL(cygwin1.dllのような)には依存しないバイナリを
生成できる
ただしC++の場合はC++ランタイム等のスタティックリンクを明示的に行う必要がある
MSVCRT.DLLはWin95時代ならいざ知らず、現在のWindowsではOSの一部だよ
>>252
ツールセットの話だよ
ツールセットの話だよ
ツールセットならどうでもいいだろ
gccがiconvやらintlやらのDLLに依存してたからといって誰が気にするんだよ
gccがiconvやらintlやらのDLLに依存してたからといって誰が気にするんだよ
久しぶりに伸びてるから何事かと思ったら…
MSYSの遅さとMinGWを混同してるのがいたのか
そもそもMSYSはCygwinからforkしたもので
単にライセンス形態が変わったものの中身はほとんどCygwinでI/Oはエミュレーションしてるから遅いんだけどな
Linuxと同様にconfigureとかmakeとかしてるんだったら
MSYSで動いてるbashがめちゃくちゃ遅いから全体が遅くなるのは当然の話
そこらへんを解決したいんだったらVPCでもVMwareでもVirtualBOXでもいいから
Linuxの環境を同居させてクロスコンパイルさせれば劇的に速くなる
MSYSの遅さとMinGWを混同してるのがいたのか
そもそもMSYSはCygwinからforkしたもので
単にライセンス形態が変わったものの中身はほとんどCygwinでI/Oはエミュレーションしてるから遅いんだけどな
Linuxと同様にconfigureとかmakeとかしてるんだったら
MSYSで動いてるbashがめちゃくちゃ遅いから全体が遅くなるのは当然の話
そこらへんを解決したいんだったらVPCでもVMwareでもVirtualBOXでもいいから
Linuxの環境を同居させてクロスコンパイルさせれば劇的に速くなる
経験上gccでビルドしたバイナリはMSVC製より速いぐらいだな、Cだと
少なくともVS2010とかだとそう
ただし例外処理にSEH使えない関係で、C++の場合はかなり遅くなるケースがある印象
少なくともVS2010とかだとそう
ただし例外処理にSEH使えない関係で、C++の場合はかなり遅くなるケースがある印象
cygwinのI/Oはホント遅いよな
cygwin用のtexliveをインストールしてみたがSSDマシンでも余りに遅くて(10ページほどのtexファイルに1分くらいかかる)
ネイティブのものをインストールし直した
cygwin用のtexliveをインストールしてみたがSSDマシンでも余りに遅くて(10ページほどのtexファイルに1分くらいかかる)
ネイティブのものをインストールし直した
>あーそんなどうでもいいことなんですか(´・ω・`)
コイツはデキる
>クロスコンパイルした後に生成されるバイナリの実行速度の話かと思って期待しちゃいました
コイツはデキる
コイツはデキる
>クロスコンパイルした後に生成されるバイナリの実行速度の話かと思って期待しちゃいました
コイツはデキる
>>>264
>あーそんなどうでもいいことなんですか(´・ω・`)
>クロスコンパイルした後に生成されるバイナリの実行速度の話かと思って期待しちゃいました
馬鹿には無理さん遅いぞ
早く馬鹿には無理を浴びせてやってやれよ
>あーそんなどうでもいいことなんですか(´・ω・`)
>クロスコンパイルした後に生成されるバイナリの実行速度の話かと思って期待しちゃいました
馬鹿には無理さん遅いぞ
早く馬鹿には無理を浴びせてやってやれよ
msys-vimで、新規に作成するファイルはutf-8、その他のファイルは開いたencodingで保存するって事をしたいのですが、
このような設定を.vimrcに書くにはどうすればよろしいでしょうか?
「新規ファイルなら」みたいなif文って書けますか?
このような設定を.vimrcに書くにはどうすればよろしいでしょうか?
「新規ファイルなら」みたいなif文って書けますか?
>>259
最近出回ってるmingw-gccって何も指定せずにコンパイルすると
libgcc_s.dll とかが必要になるのがあるから、そのことじゃないの?
リンカーで -static オプション付ければいいだけなんだけどね。
最近出回ってるmingw-gccって何も指定せずにコンパイルすると
libgcc_s.dll とかが必要になるのがあるから、そのことじゃないの?
リンカーで -static オプション付ければいいだけなんだけどね。
MinGW + mintty + msys-vimでうまくgitにコミットする方法無いかな?
vim.exeが立ち上がるけど、画面がどこにもないからタスクマネージャーから終了するしかない。。。
vim.exeが立ち上がるけど、画面がどこにもないからタスクマネージャーから終了するしかない。。。
>>280
マジで!?msysGitのインストール後にmingwのインストールをしたからかな?
git config --global core,editor 'vim -c "なんだっけ?"'
みたいな感じで設定して、git commit ってやると、応答がなくなってCPUが頑張りだす。
で、タスクマネージャーで見るとvim.exeってやつが頑張ってる感じになるんですよね。
どうしたら欲しいvimさんが立ち上がるんだろう?
ぐぐーるさんに聞くとgVimならうまくいくんじゃねみたいに言われるけど、
gVimよく分からないから入れたくないんですよね。
マジで!?msysGitのインストール後にmingwのインストールをしたからかな?
git config --global core,editor 'vim -c "なんだっけ?"'
みたいな感じで設定して、git commit ってやると、応答がなくなってCPUが頑張りだす。
で、タスクマネージャーで見るとvim.exeってやつが頑張ってる感じになるんですよね。
どうしたら欲しいvimさんが立ち上がるんだろう?
ぐぐーるさんに聞くとgVimならうまくいくんじゃねみたいに言われるけど、
gVimよく分からないから入れたくないんですよね。
>>284
いやcommit。
↓これかなぁと思ってるけど関係無いかも。
http://d.hatena.ne.jp/gnarl/20100428/1272441051
普通にminttyの上からvimは起動できるんだけど、
git config --global core.editor 'vim -c "set fenc=utf-8"'
って設定した状態で
git commit
ってやったらvimが起動してするはずなのに画面には出てこない。
which vimは/bin/vim.exe です。
ちなみにwhich gitは ${gitのインストールフォルダ}/bin/git.exe 。
このgit/binにもvimっていう実行可能bashファイルが居るのがだめなのかな?
configの内容を vim から /bin/vim.exeに変えるとエラーがでました。
0 [main] vim 2052 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
さらにオプション(-c以降)をはずすとvimが起動したように見えて、
見た目Okでやったと思ったのにちゃんと動いてませんでした。
普通に文字が入力可能でvimの;wqとかを入力できるモードになりませんでした。
いやcommit。
↓これかなぁと思ってるけど関係無いかも。
http://d.hatena.ne.jp/gnarl/20100428/1272441051
普通にminttyの上からvimは起動できるんだけど、
git config --global core.editor 'vim -c "set fenc=utf-8"'
って設定した状態で
git commit
ってやったらvimが起動してするはずなのに画面には出てこない。
which vimは/bin/vim.exe です。
ちなみにwhich gitは ${gitのインストールフォルダ}/bin/git.exe 。
このgit/binにもvimっていう実行可能bashファイルが居るのがだめなのかな?
configの内容を vim から /bin/vim.exeに変えるとエラーがでました。
0 [main] vim 2052 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
さらにオプション(-c以降)をはずすとvimが起動したように見えて、
見た目Okでやったと思ったのにちゃんと動いてませんでした。
普通に文字が入力可能でvimの;wqとかを入力できるモードになりませんでした。
>>286
やってみました。
問題なくvimが起動してコミットログを記入、コミットできました。
こんな警告出てましたが。
Warning: Your console font probably doesn't support Unicode. If you experience s
trange characters in the output, consider switching to a TrueType font such as L
ucida Console!
とりあえずこういう結果でしたが、
今からwinptyのconsole.exeを利用できないかやってみようと思います。
引き続き情報をお待ちしております。
やってみました。
問題なくvimが起動してコミットログを記入、コミットできました。
こんな警告出てましたが。
Warning: Your console font probably doesn't support Unicode. If you experience s
trange characters in the output, consider switching to a TrueType font such as L
ucida Console!
とりあえずこういう結果でしたが、
今からwinptyのconsole.exeを利用できないかやってみようと思います。
引き続き情報をお待ちしております。
gnupackでcygwinを使っています。
最近apt-cygを使ってインストールしたソフトウェアがうまく動かなくなったので質問します。
http://futurismo.biz/archives/1220 を見てapt-cygはhttps://github.com/rcmdnk/apt-cygに切り替え、
ミラーサイトはhttp://ftp.iij.ad.jp/pub/cygwin/x86_64/にしています
apt-cyg install rubyでrubyは入ったようで、こうなります
Cygwin Package Information
Package Version Status
ruby 1.9.3-p448-1 OK
which rubyだとこう返ってきました
/usr/bin/ruby
ですがruby -Vで何も表示されません。ruby -e 'puts "hoge"', ruby --helpも同様です
ls --help はOKです
何かヒントがあれば教えて下さい。お願いします。
最近apt-cygを使ってインストールしたソフトウェアがうまく動かなくなったので質問します。
http://futurismo.biz/archives/1220 を見てapt-cygはhttps://github.com/rcmdnk/apt-cygに切り替え、
ミラーサイトはhttp://ftp.iij.ad.jp/pub/cygwin/x86_64/にしています
apt-cyg install rubyでrubyは入ったようで、こうなります
Cygwin Package Information
Package Version Status
ruby 1.9.3-p448-1 OK
which rubyだとこう返ってきました
/usr/bin/ruby
ですがruby -Vで何も表示されません。ruby -e 'puts "hoge"', ruby --helpも同様です
ls --help はOKです
何かヒントがあれば教えて下さい。お願いします。
>>288
apt-cyg 404でぐぐって。
apt-cyg 404でぐぐって。
Cygwin使ってるんですが、RCTOOLは何を指定したらいいのでしょうか?
Cygwin付属のwinres.exeを指定したら
libtool: link: `regex-dll-res.lo' is not a valid libtool object
と言われてしまいます
Cygwin付属のwinres.exeを指定したら
libtool: link: `regex-dll-res.lo' is not a valid libtool object
と言われてしまいます
windows7 64bitPCにsetup-x86_64.exeでCygwin64とx86_64-w64-mingw32の環境をインストールしました
ビルドしているのはregex-2.7でDLLとlibが欲しい
home/xxxx/regex-2.7フォルダにbuildフォルダを作ってそこから../configureしています
(configureの中身)
../configure RCTOOL=x86_64-w64-mingw32-windres.exe --prefix=/cygdrive/f/bin/work/MinGW64 --host=x86_64-w64-mingw32
--build=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --with-arch=i686 --with-tune=generic
CFLAGS="-g -O2 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -L/usr/x86_64-w64-mingw32/sys-root/mingw/lib"
--enable-shared=yes --enable-static=yes
RCTOOLは一応指定していますが、configureで作られる/home/xxxx/regex-2.7/build/src/makefileの最後がなぜか
.rc.o:
windres --include-dir $(resdir) -i $< $@
.rc.lo:
RCTOOL $< $@
となっていたので、自分で書き換えました
.rc.o:
x86_64-w64-mingw32-windres --include-dir $(resdir) -i $< -o $@
.rc.lo:
$(RCTOOL) $< -o $@
この状態でmakeすると最後の方のlinkで
ビルドしているのはregex-2.7でDLLとlibが欲しい
home/xxxx/regex-2.7フォルダにbuildフォルダを作ってそこから../configureしています
(configureの中身)
../configure RCTOOL=x86_64-w64-mingw32-windres.exe --prefix=/cygdrive/f/bin/work/MinGW64 --host=x86_64-w64-mingw32
--build=x86_64-w64-mingw32 --target=x86_64-w64-mingw32 --with-arch=i686 --with-tune=generic
CFLAGS="-g -O2 -I/usr/x86_64-w64-mingw32/sys-root/mingw/include -L/usr/x86_64-w64-mingw32/sys-root/mingw/lib"
--enable-shared=yes --enable-static=yes
RCTOOLは一応指定していますが、configureで作られる/home/xxxx/regex-2.7/build/src/makefileの最後がなぜか
.rc.o:
windres --include-dir $(resdir) -i $< $@
.rc.lo:
RCTOOL $< $@
となっていたので、自分で書き換えました
.rc.o:
x86_64-w64-mingw32-windres --include-dir $(resdir) -i $< -o $@
.rc.lo:
$(RCTOOL) $< -o $@
この状態でmakeすると最後の方のlinkで
error.logがlibtool: link: `regex-dll-res.lo' is not a valid libtool object
make.logが ターゲット `regex-dll-res.rc' を再 make する必要はありません; VPATH 名 `../../src/regex-dll-res.rc' を使用します.
ターゲットファイル `regex-dll-res.lo' の必要条件を満たしました.
ターゲット `regex-dll-res.lo' の再 make が必要です.
make[2]: ディレクトリ `/home/km/regex-2.7/build/src' に入ります
x86_64-w64-mingw32-windres.exe ../../src/regex-dll-res.rc -o regex-dll-res.lo
チェインに子プロセス 0x6001244a0 (regex-dll-res.lo) PID 263712 を取り込みました.
生存子プロセス 0x6001244a0 (regex-dll-res.lo) PID 263712
(中略-プロセスが並びます)
ターゲットファイル `libregex.la' の必要条件を満たしました.
ターゲット `libregex.la' の再 make が必要です.
/bin/sh ../libtool --tag=CC --mode=link x86_64-w64-mingw32-gcc -g -O2
-I/usr/x86_64-w64-mingw32/sys-root/mingw/include -L/usr/x86_64-w64-mingw32/sys-root/mingw/lib
-no-undefined -version-info 2:7:0 -Wl,--major-image-version=2 -Wl,--minor-image-version=7
-o libregex.la -rpath /cygdrive/f/bin/work/MinGW64/lib regex.lo regex-dllversion.lo regex-dll-res.lo
チェインに子プロセス 0x6001252e0 (libregex.la) PID 254072 を取り込みました.
生存子プロセス 0x6001252e0 (libregex.la) PID 254072
失敗した子プロセス 0x6001252e0 PID 254072 を回収します
Makefile:271: recipe for target `libregex.la' failed
チェインから子プロセス 0x6001252e0 PID 254072 を削除します.
make[2]: ディレクトリ `/home/km/regex-2.7/build/src' から出ます
失敗した子プロセス 0x60006b470 PID 252004 を回収します
Makefile:262: recipe for target `all-recursive' failed
チェインから子プロセス 0x60006b470 PID 252004 を削除します.
make[1]: ディレクトリ `/home/km/regex-2.7/build' から出ます
失敗した子プロセス 0x60007d530 PID 172788 を回収します
Makefile:192: recipe for target `all' failed
チェインから子プロセス 0x60007d530 PID 172788 を削除します.
となってmakeに失敗します
make.logが ターゲット `regex-dll-res.rc' を再 make する必要はありません; VPATH 名 `../../src/regex-dll-res.rc' を使用します.
ターゲットファイル `regex-dll-res.lo' の必要条件を満たしました.
ターゲット `regex-dll-res.lo' の再 make が必要です.
make[2]: ディレクトリ `/home/km/regex-2.7/build/src' に入ります
x86_64-w64-mingw32-windres.exe ../../src/regex-dll-res.rc -o regex-dll-res.lo
チェインに子プロセス 0x6001244a0 (regex-dll-res.lo) PID 263712 を取り込みました.
生存子プロセス 0x6001244a0 (regex-dll-res.lo) PID 263712
(中略-プロセスが並びます)
ターゲットファイル `libregex.la' の必要条件を満たしました.
ターゲット `libregex.la' の再 make が必要です.
/bin/sh ../libtool --tag=CC --mode=link x86_64-w64-mingw32-gcc -g -O2
-I/usr/x86_64-w64-mingw32/sys-root/mingw/include -L/usr/x86_64-w64-mingw32/sys-root/mingw/lib
-no-undefined -version-info 2:7:0 -Wl,--major-image-version=2 -Wl,--minor-image-version=7
-o libregex.la -rpath /cygdrive/f/bin/work/MinGW64/lib regex.lo regex-dllversion.lo regex-dll-res.lo
チェインに子プロセス 0x6001252e0 (libregex.la) PID 254072 を取り込みました.
生存子プロセス 0x6001252e0 (libregex.la) PID 254072
失敗した子プロセス 0x6001252e0 PID 254072 を回収します
Makefile:271: recipe for target `libregex.la' failed
チェインから子プロセス 0x6001252e0 PID 254072 を削除します.
make[2]: ディレクトリ `/home/km/regex-2.7/build/src' から出ます
失敗した子プロセス 0x60006b470 PID 252004 を回収します
Makefile:262: recipe for target `all-recursive' failed
チェインから子プロセス 0x60006b470 PID 252004 を削除します.
make[1]: ディレクトリ `/home/km/regex-2.7/build' から出ます
失敗した子プロセス 0x60007d530 PID 172788 を回収します
Makefile:192: recipe for target `all' failed
チェインから子プロセス 0x60007d530 PID 172788 を削除します.
となってmakeに失敗します
みなさん、libtoolの使い方知っていますか?
知ってたらDLLにバージョン情報埋め込む方法教えてください
母より
知ってたらDLLにバージョン情報埋め込む方法教えてください
母より
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / gcc スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- Cygwin + MinGW + GCC 相談室 Part 8 (938) - [97%] - 2022/10/28 8:00
- Cygwin + MinGW + GCC 相談室 Part 6 (981) - [97%] - 2012/12/30 23:15
- Cygwin + MinGW + GCC 相談室 Part 5 (981) - [97%] - 2011/4/6 2:32
- Cygwin + MinGW + GCC 相談室 Part 4 (1001) - [97%] - 2010/3/23 18:31 ☆
- Cygwin + MinGW + GCC 相談室 Part 3 (1001) - [97%] - 2008/9/12 0:04 ★
- 【激遅】AppleGCC【絶望】 (111) - [1%] - 2010/1/15 10:31
トップメニューへ / →のくす牧場書庫について