私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレCygwin + MinGW + GCC 相談室 Part 5
gcc スレッド一覧へ / gcc とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
>>250
え?mingwってgccだよ?
え?mingwってgccだよ?
MinGW GCC 4.5.0 and Boost 1.43.0.
http://nuwen.net/mingw.html
http://nuwen.net/mingw.html
mingw で作成したアプリケーションのエントリーポイントを WinMain にするには、どうすればいいのでしょうか?
質問を変えます。mingw でコンパイル・リンクしたコードを調べてみると、
GDI32/KERNEL32/USER32 のほかに, MSVCRT を呼び出しているようですが、
MSVCRT の呼び出しをやめるようにコンパイルすることはできるでしょうか?
GENERIC に手を加える必要があることはわかりましたが、そうしてもなおかつ MSVCRT を呼び出してしまいます。
GDI32/KERNEL32/USER32 のほかに, MSVCRT を呼び出しているようですが、
MSVCRT の呼び出しをやめるようにコンパイルすることはできるでしょうか?
GENERIC に手を加える必要があることはわかりましたが、そうしてもなおかつ MSVCRT を呼び出してしまいます。
>>264
spec をいじる方法。
http://d.hatena.ne.jp/y2q_actionman/20070614/p1
だが、 mingw gcc で普通に作られる exe は
随所で msvcrt の機能に依存しているので、
単にリンクを避けただけでは駄目だと思う。
同等の機能をもったランタイムを用意するか、
依存を完全に避けるコードにするか。
あえて msvcrt をさける理由は何?
spec をいじる方法。
http://d.hatena.ne.jp/y2q_actionman/20070614/p1
だが、 mingw gcc で普通に作られる exe は
随所で msvcrt の機能に依存しているので、
単にリンクを避けただけでは駄目だと思う。
同等の機能をもったランタイムを用意するか、
依存を完全に避けるコードにするか。
あえて msvcrt をさける理由は何?
>>266
msvcrt はもはや Windows の一部。
msvcrt はもはや Windows の一部。
あと、borland bcc32 では msvcrt をインポートしないようですね。
bcc32 だったら win32api だけで書けば、>>266 は実現できるのですが、おなじソースを mingw でコンパイルすると、msvcrt をインポートするコードになるのです。
mapファイル作るときにクロスリファレンス作らせて、
どこでmsvcrt関連を呼び出してるか調べるところからやったら
どこでmsvcrt関連を呼び出してるか調べるところからやったら
MinGWとはつまり、コンパイラにGCCを使い、glibcの代わりにmsvcrtを使う開発環境だというのに
その根本で有るmsvcrtを使わないと言うなら、MinGWを使うべきでない
Win9x時代ならともかく、いまどきmsvcrtが使えない環境はない
その根本で有るmsvcrtを使わないと言うなら、MinGWを使うべきでない
Win9x時代ならともかく、いまどきmsvcrtが使えない環境はない
そうなんですね。特定のランタイムdll に依存していない処理系もあるので、ちょっとこだわってしまいました。
ご意見ありがとうございました。
ご意見ありがとうございました。
つーかMSVCRT.DLLはOSの一部なんだが
むしろ最近のMSVCはそれを利用することはなかったりする。
逆に、最近目にすることができるWindows OSで MSVCRT.DLL を含んでない奴を教えて欲しいくらいだ。
むしろ最近のMSVCはそれを利用することはなかったりする。
逆に、最近目にすることができるWindows OSで MSVCRT.DLL を含んでない奴を教えて欲しいくらいだ。
すみません、すごいこと聞きますが
MSVCRT.DLLのCRTってなんなんですか?
あと、MinGWでwindowsのドライバの作成(WDKソースのコンピル)できますか
MSVCRT.DLLのCRTってなんなんですか?
あと、MinGWでwindowsのドライバの作成(WDKソースのコンピル)できますか
MinGWで下記のソース(test1.c)をコンパイルし、
#include <stdio.h>
int main(void) {
int i;
for (i=0 ; i<100000; i++) printf("a");
return 0;
}
a.exe > hoge.txt を実行します。
このとき gcc test1.c でコンパイルした実行ファイルは一瞬で実行できるのですが(体感0.1秒?)、
gcc -ansi test1.c でコンパイルした実行ファイルは8秒ほど時間がかかります。
ansiオプションは切りたくないのですが、実行ファイルが遅くなるのは嫌です。
何かいい方法はありませんか?
#include <stdio.h>
int main(void) {
int i;
for (i=0 ; i<100000; i++) printf("a");
return 0;
}
a.exe > hoge.txt を実行します。
このとき gcc test1.c でコンパイルした実行ファイルは一瞬で実行できるのですが(体感0.1秒?)、
gcc -ansi test1.c でコンパイルした実行ファイルは8秒ほど時間がかかります。
ansiオプションは切りたくないのですが、実行ファイルが遅くなるのは嫌です。
何かいい方法はありませんか?
シグナルを受信するプログラムを作ったのですがうまくいきません
以下のプログラムに kill 3460 ALRM としても
$ ./target.exe
ZzzZzzZzzZzzZzzZzzZzzZzzZzz[1] 3460 terminated ./target.exe
となってしまいます
bool loop = true;
void trap(int no)
{
std::cout << "tarp!!" << std::endl;
loop = false;
}
int main(int ac, char** av)
{
struct sigaction sa = {0};
sa.sa_handler = trap;
sa.sa_flags |= SA_RESTART;
if(sigaction(SIGALRM, &sa, NULL) != 0) {
std::cerr << "sigaction error" << std::endl;
return 1;
}
for(;loop;) {
std::cout << "Zzz" << std::flush;
sleep(1);
}
std::cout << std::endl << "Shhhhhhhhhhhhhhhhhhhhhhhhhh" << std::endl;
return 0;
}
以下のプログラムに kill 3460 ALRM としても
$ ./target.exe
ZzzZzzZzzZzzZzzZzzZzzZzzZzz[1] 3460 terminated ./target.exe
となってしまいます
bool loop = true;
void trap(int no)
{
std::cout << "tarp!!" << std::endl;
loop = false;
}
int main(int ac, char** av)
{
struct sigaction sa = {0};
sa.sa_handler = trap;
sa.sa_flags |= SA_RESTART;
if(sigaction(SIGALRM, &sa, NULL) != 0) {
std::cerr << "sigaction error" << std::endl;
return 1;
}
for(;loop;) {
std::cout << "Zzz" << std::flush;
sleep(1);
}
std::cout << std::endl << "Shhhhhhhhhhhhhhhhhhhhhhhhhh" << std::endl;
return 0;
}
これができないです
operator errorがでます
無理ですか?
matrix1*=matrix2
operator errorがでます
無理ですか?
matrix1*=matrix2
>>291
もっとくわしく
もっとくわしく
Visual C++ではD3DXMATRIXの掛け算ができたのに、
MinGWではoperator errorがでてできなっかったということです
まあD3DXMatrixMultiplyを使えばいいだけですが
MinGWではoperator errorがでてできなっかったということです
まあD3DXMatrixMultiplyを使えばいいだけですが
>>291の調子でプログラムを書かれたらコンパイラも何していいかわからんわなw
>>291
演算子のオーバーロードが書かれたヘッダファイルを読み込んでないだけだろう
演算子のオーバーロードが書かれたヘッダファイルを読み込んでないだけだろう
前へ 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 7 (996) - [97%] - 2014/9/21 2:15
- Cygwin + MinGW + GCC 相談室 Part 6 (981) - [97%] - 2012/12/30 23:15
- 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
トップメニューへ / →のくす牧場書庫について