GCCについて
レス数が1000を超えています。これ以上書き込みはできません。
0001爽
NGNGというものを読み始めました。
この本に載っているGCC(GNU C)の
最新版の入手方法がわかりません。
GCCを使って、アセンブリ言語コード、
C++言語コードさらにJAVA言語コードの
コンパイルをしたいと思っています。
GCCの最新版の入手方法とコンパイルまでの流れを教えて下さい。
0002デフォルトの名無しさん
NGNG0003爽
NGNG0005デフォルトの名無しさん
NGNG板出入り禁止
ネタなのかマジなのか知らないが、
スレ立てるほどでもないことは、
スレ立てるまでもない質問スレに書いてくれって事。
http://pc.2ch.net/test/read.cgi/tech/1006910650/l50
それと、親切な4さんに感謝しときなさい。
sageでな、、、
0007デフォルトの名無しさん
NGNG入手はWinMXでできます。
Adobe PhotoShopとMicrosoft Visual Studio 6.0を用意すれば
たぶん交換してもらえるでしょう。
WinMXはこちらです。
ttp://www.winmx.com/
0008デフォルトの名無しさん
NGNG犯罪幇助につきタイーホケテーイ
0009デフォルトの名無しさん
NGNGどの辺が犯罪でしょうか?
0010デフォルトの名無しさん
NGNGMXでAdobe PhotoShopとMicrosoft Visual Studio 6.0を共有することが。
0011デフォルトの名無しさん
NGNG7と関係あるのでしょうか?
0012デフォルトの名無しさん
NGNG0013デフォルトの名無しさん
NGNGGNU Compiler Collection の略だしね。
f77, c, c++, asm(gas), java(gcj) に対応。
ただし、gcj はまだ Windows 環境じゃ上手く動かない(少なくとも3.0は)。
0014名無しさん@XEmacs
NGNG001512
NGNGgccでjavaがどーのこーのいう1を馬鹿だと思っていました。
てへ♥
↓おかげで眠気がふっ飛びました
http://gcc.gnu.org/java/index.html
0016デフォルトの名無しさん
NGNG0017爽
NGNGJAVAは、GCC 3.1 には、Windows 環境 でもうまく動くようになるらしいですね
0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNGGCCって確かPascalとかObjectiveCとかも
コンパイルできなかったっけ?
けっこう多機能なんだよ、アレ
洩れも詳しくはないけど
GCC教えてスレッドに再利用age
0020デフォルトの名無しさん
NGNG商用のは VisualCafe に付属していたシマンテックのコンパイラを始めいくつかある。
大抵は数万円するから個人では買わないね。謳っているほど効果があるか疑わしいし。
0021デフォルトの名無しさん
NGNG中間言語があるからフロントエンドさえあれば何でもOK
0022デフォルトの名無しさん
NGNG『知りません』『知りません』ってよォーーーー
『知りません』・・・そんな言葉は使う必要がねーんだ
なぜなら オレやオレたちの仲間は その言葉を頭に浮かべた時には!
既にGoogleや書籍で調べがついちまって もうすでに『知っている』からだッ!
だから 使った事がねェーーーッ
『知っている』なら 使ってもいいッ!」
0023デフォルトの名無しさん
NGNGじゃあ、GCJがフリーでは初めてなのかな。
0024デフォルトの名無しさん
NGNGしかしgcjってネイティブコード吐けるのか。知らなかった。
.class作るだけならIBMがGPLで出してるjikesも速くていいよ。
UTF-8にしないと日本語混じりのソースで文句言うけど。
0025デフォルトの名無しさん
NGNG0026デフォルトの名無しさん
NGNGhttp://oss.software.ibm.com/developerworks/opensource/jikes/
antとjikesをうまいこと使うと日本語もoKらしい。
(antでnative2asciiを使うらしい(ant知らない))
0027デフォルトの名無しさん
NGNG0028失貴君
NGNG0029デフォルトの名無しさん
NGNGANTって多分これのことでしょ
http://jakarta.apache.org/ant/index.html
Javaで書かれたmakeのようなものですが、
Javaをコンパイルする場合はmakeより高速で高機能です。
native2asciiはJDKについてます
0030あり?
NGNGgasって浮動小数点備わっていないわけ??
0031デフォルトの名無しさん
NGNG浮動小数点を扱うには、$99.00でレジストが必要です。
0032デフォルトの名無しさん
NGNG#じゃ、しばらく遊んだらnasmだな
0033デフォルトの名無しさん
NGNG.floatで定数として書けるけど。
0034デフォルトの名無しさん
NGNGんじゃ、対応するオペレータは?
0035デフォルトの名無しさん
NGNGgcc -Sを見るとfstplとか使われてますが。
0036デフォルトの名無しさん
NGNGワラタ
って・・・ねただよね・・・(おどおど
003732
NGNG0038デフォルトの名無しさん
NGNG0039デフォルトの名無しさん
NGNGiconvが使えるなら、jikesでもUTF-8にする必要ないよ。
少なくとも、Debian GNU/Linux sidに入ってるパッケージは出来た。
cygwinでもちょっと試してみたけど、iconv使うようにするとうまくコンパイルできなかった。
あと、solarisのiconvもだめらしい。
0040デフォルトの名無しさん
NGNGしかし、C++ で virtual 使いまくりのときに destructorが
2回呼ばれるバグってどうなったんだろう?
GNATSでみると open bug ばっかりでDBとして破綻してる気がしてくる。
0041デフォルトの名無しさん
NGNGfor (i=1;i<=5;i++)
for (j=1;j<=5;j++)
a[i][j]=0;
for (i=1;i<=25;i++){
while (a[(k=rand()%25)/5+1][k%5+1]!=0);
a[k/5+1][k%5+1]=i;
}
これで振り分けするつもりだったのに
gccだとうまくいきません。cc,bccとかならうまくいくのにな。
これってバグかな?
0042デフォルトの名無しさん
NGNGとりあえず while んとこの ; がなんとなく気になる。
0043デフォルトの名無しさん
NGNG0044デフォルトの名無しさん
NGNGちゃんと動いてるみたいだよ。
004544
NGNGfor (i=1;i<=5;i++)
for (j=1;j<=5;j++)
printf("%2d ",a[i][j]) ;
で表示すると
23 13 3 25 15 17 20 16 1 11 6 2 10 12 24 4 22 7 5 19 21 9 14 18 8
にナターヨ、どー?>41
0046デフォルトの名無しさん
NGNGand 10, you should always do it by
j=1+(int) (10.0*rand()/(RAND_MAX+1.0));
and never by anything resembling
j=1+((int) (1000000.0*rand()) % 10);
(which uses lower-order bits)."
004741
NGNG>>46さんの通りにやってもこんなになります。
0 21 6 0 0 14 24 19 11 20 17 0 8 0 0 12 0 5 2 25 15 7 4 23 16
おとなしく別アルゴリズムにしろって感じでしょうかね。
ありがとうございます。
0048デフォルトの名無しさん
NGNGclass foo{
public:
void pbuff(void){
static char buff[16] ;
}
} ;
void foo::pbuff(void){
static char buff[16] ;
}
void main(void){
return ;
}
[foo]$ gcc -v
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/2.96/specs
gcc version 2.96 20000731 (Red Hat Linux 7.0)
[nic@nina cye]$ gcc foo.cc
foo.cc:7: redefinition of `void foo::pbuff ()'
foo.cc:3: `void foo::pbuff ()' previously defined here
foo.cc: In method `void foo::pbuff ()':
foo.cc:7: Internal error #19990919.
foo.cc:7: Internal compiler error in setup_vtbl_ptr, at
../gcc/cp/semantics.c:1203
Please submit a full bug report.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
[foo]$
こういうのは、やっぱレポート送ったほうがいいんでしょうか?
それとも、そもそもソースがおかしい場合は、そっとしといたほうがいいんでしょうか?
0049デフォルトの名無しさん
NGNG0051デフォルトの名無しさん
NGNGできれば日本語のがいいのですが。。。
やっぱりgcc.gnu.orgのやつを熟読しないとだめかな?
0052デフォルトの名無しさん
NGNG0053デフォルトの名無しさん
NGNG0055名無しさん@お腹いっぱい。
NGNG$ g++-3.0 foo.c
foo.c:7: redefinition of `void foo::pbuff()'
foo.c:3: `void foo::pbuff()' previously defined here
foo.c:10: `main' must return `int'
foo.c: In function `int main(...)':
foo.c:11: return-statement with no value, in function declared with a non-void return type
$
0056^^
NGNGこのレスを見た人間は十三日以内に死にます。
※あなたに訪れる死を回避する方法が一つだけあります。
それはこのコピペを一時間以内に7つ、別のスレに貼り付ける事です。
0057デフォルトの名無しさん
NGNGE-mail欄に元スレを書き込んでください
これがあればもっと面白かったかも
0058デフォルトの名無しさん
NGNGman objdump
0059デフォルトの名無しさん
NGNGサンキュッパ あgえ
0061デフォルトの名無しさん
NGNG変更点は以下の通り
・GCC 3.0 now supports newer versions of the NetBSD operating system,
which use the ELF object file format, on x86 processors.
・Correct debugging information is generated from functions that have lines
from multiple files (e.g. yacc output).
・A fix for whitespace handling in the -traditional preprocessor,
which can affect Fortran.
・Fixes to the exception handling runtime.
・More fixes for bad code generation in C++.
・A fix for shared library generation under AIX 4.3.
・Documentation updates.
・Port of GCC to Tensilica's Xtensa processor contributed.
・A fix for compiling the PPC Linux kernel (FAT fs wouldn't link).
0062デフォルトの名無しさん
NGNG0063デフォルトの名無しさん
NGNGこのパッチを当てた人間は十三日以内に死にます。
※あなたに訪れる死を回避する方法が一つだけあります。
それはこのパッチを一時間以内に7つ、他人のGCCに当てる事です。
0064デフォルトの名無しさん
NGNG0065デフォルトの名無しさん
NGNG\∧_ヘ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
,,、,、,,, / \〇ノゝ∩ < 1000取り合戦、いくぞゴルァ!! ,,、,、,,,
/三√ ゚Д゚) / \____________ ,,、,、,,,
/三/|ii|U|ii|\ ,,、,、,,, ,,、,、,,,
,,、,、,,, U (:::::::::::) ,,、,、,,, \オーーーーーーーッ!!/
//三/|三|\ ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
∪ ∪ ( ) ( ) ( ) )
,,、,、,,, ,,、,、,,, ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
,,、,、,,, ( ) ( ) ( ) ( )
0066デフォルトの名無しさん
NGNG0067デフォルトの名無しさん
NGNGcygwin使いたくないよ〜
0068デフォルトの名無しさん
NGNG0069デフォルトの名無しさん
NGNG0070デフォルトの名無しさん
NGNG0071デフォルトの名無しさん
NGNG中見ても何がなんだかさっぱり分からん。
mdファイルをどう処理してるのかだけでも
理解しようと思ったんだけど、しんどい。。
0072デフォルトの名無しさん
NGNG0073デフォルトの名無しさん
NGNG0074デフォルトの名無しさん
NGNGhttp://www.sra.co.jp/wingnut/gcc/gcc-j.html#Passes
このあたりがソース解析の鍵かな。
これはいいドキュメントだから保存しておいてもいいかも。
0075デフォルトの名無しさん
NGNG0076デフォルトの名無しさん
NGNGgdbのエンジンでフルスクリーンのGUIデバッガ作りたいYO!
0077デフォルトの名無しさん
NGNGcygwin の gdb ではダメなのか?
0078デフォルトの名無しさん
NGNGGVDの日本語表示対応を熱烈に頼む。Adaで書いてあるけど(w
http://libre.act-europe.fr/
GVD大好き。最高。
0079デフォルトの名無しさん
NGNG私はグッシッシと呼んでます。グッシッシ
0080デフォルトの名無しさん
NGNG0081デフォルトの名無しさん
NGNGあまりの下らなさに笑ってしまった、、、鬱
0083デフォルトの名無しさん
NGNG0084デフォルトの名無しさん
NGNGネーミングは、プログラマーの心意気なんだよね。グッシッシ
0085デフォルトの名無しさん
NGNG0086デフォルトの名無しさん
NGNG0087デフォルトの名無しさん
NGNG0088デフォルトの名無しさん
NGNG本当にリリースされるなら嬉しいが。
0089デフォルトの名無しさん
NGNG既に5月1日に延期されてますよ?
http://gcc.gnu.org/ml/gcc/2002-04/msg00514.html
0090デフォルトの名無しさん
NGNGあれ、意味がさっぱり分かりません。
0091名無しさん@お腹いっぱい。
NGNG読む必要のある人、読みたい人が読むってことだから、
そうであるなら${GCC-SOURCE}/gcc/doc/rtl.texiを読め。
でなければ、( ゚д゚)ポカーンでよいではないか。
0092デフォルトの名無しさん
NGNGというのを使ってみたんだけど、
同じプログラムをbcc32でコンパイルしたら
異様に早くなった。
もともと時間かかる処理なんだけど、
bcc32で実行時間4分。
gcc 待ちきれなくて強制終了(w
こんなもんなんですか?
ちなみにcygwinでのgccは速かったです。
0093デフォルトの名無しさん
NGNG0094名無しさん@お腹いっぱい。
NGNGつーか、そんな事書いている暇あったら他のプログラムで試してみろ。
0095デフォルトの名無しさん
NGNGbcc32 最適化:芋
gcc 最適化:幼稚園児の日本語並み
0096デフォルトの名無しさん
NGNG0097デフォルトの名無しさん
NGNG自分が無数の最適化オプションを使いこなせないからといって幼稚園児並と表現するのはどうかと。
0098デフォルトの名無しさん
NGNGお前がgccを直せ。
三島のような日本語を話せるようにまでしろ。
そして俺たちに使わせろ。
0099デフォルトの名無しさん
NGNG$ gcc test.c -o test.exe
と入力しても何も生成物が作られず、またエラーも出ずにプロンプトに戻ってしまいます。
$ gcc -save-temps test.c -o test.exe
と入力すると test.i test.s test.o が生成されますので、途中までは動いているようです。
$ gcc -save-temps -v test.c -o test.exe
と入力すると、各処理が表示されました。
cpp0.exe で test.c から test.i を生成しているようです。
cc1.exe で test.i から test.s を生成しているようです。
as.exe で test.s から test.o を生成しているようです。
collect2.exe で test.o から test.exe を生成するようなのですが、生成されていません。
ためしに -v で表示された collect2.exe の行をコピーアンドペーストで再度実行すると
(test.i, test.s, test.oは存在する状態)、ちゃんと test.exe が生成されました。
test.exe を実行すると 正しく Hello,World!! と表示されます。
??? なぜ gcc -v で吐き出された処理を順番にコピーアンドペーストで
貼り付けるとコンパイルできるのに…?
Windows2000を使用しているのですが、テンポラリファイルの作成される
タイミングかなにかが影響しているのでしょうか?
なにか情報があれば教えてください。
0100デフォルトの名無しさん
NGNG>>99
メモリが足らないんだよ。
最近出たマシンに買い換えなさい。
010199
NGNGコンパイルできないという罠。 …なんです。
メモリは 512M 積んでいるんです。
0102デフォルトの名無しさん
NGNGVladimir Makarov, of Red Hat, has contributed a new scheme for
describing processor pipelines (commonly referred to as the DFA
scheduler). This new scheme can model certain pipeline architectures
more effectively than the old scheme, which in turn can improve
the code generated by the compiler.
これってどんなもんなんでしょうかね?
0103仕様書無しさん
NGNGそれってRTL勉強しなおしってこと?
今一生懸命勉強してんだぞ!ゴルァ!!!
0104名無しさん@お腹いっぱい。
NGNGいや、instruction scheduler(の候補が出たきた)だけでしょ。
0105デフォルトの名無しさん
NGNG0106デフォルトの名無しさん
NGNGhttp://www.geocrawler.com/archives/3/6013/2002/4/100/8422034/
3.1のMinGW版作れるみたいっすよ。
実際自分で作成してベンチマークとってみたんだけど、-march=pentium3 -msse
でoptimizeしてもgcc-2.95.3-7とそれほど変わらなかったのだが。
0107デフォルトの名無しさん
NGNG最適化スイッチいじればgccでも結構いけると思うのだが
0108名無しさん@お腹いっぱい。
NGNGつーか、>>95は単なる煽りだって。bccより悪いわけがない。
bccは「最適化はしてない」と言っていいくらい。
0109デフォルトの名無しさん
NGNGないんだから、>>95はgccを絶賛してるんでは?
コンピュータのレベルを越えてると。
0110デフォルトの名無しさん
NGNG-finline-functions -fomit-frame-pointer -funroll-loops
程度しか追加していないけど。。。
0111デフォルトの名無しさん
NGNG-fomit-frame-pointer
は -O オプション指定だけで付くらしいよ。
0112デフォルトの名無しさん
NGNG0113デフォルトの名無しさん
NGNGpgcc使っているから?
0114デフォルトの名無しさん
NGNG0115デフォルトの名無しさん
NGNG0116デフォルトの名無しさん
NGNG0117デフォルトの名無しさん
NGNG0118デフォルトの名無しさん
NGNG0119デフォルトの名無しさん
NGNG-fpmath=sse
のオプションがうまく使えなかったんだけど、直ったのかな?
0121デフォルトの名無しさん
NGNGhttp://gcc.gnu.org/
やっとメインページ更新。さて落として使ってみるかな。
0122デフォルトの名無しさん
NGNG0123デフォルトの名無しさん
NGNGスマン。別のソフトでは使える場合もあった。
ダメだったのはnbench-2.1のHUFFMANのところで
セグメンテーションのエラーが出たところだった。
0124デフォルトの名無しさん
NGNG0125デフォルトの名無しさん
NGNGまだベータリリースだけど、出たみたい。
http://www.geocrawler.com/lists/3/SourceForge/6013/25/8692236/
0126デフォルトの名無しさん
NGNG0127デフォルトの名無しさん
NGNG0128デフォルトの名無しさん
NGNG0129デフォルトの名無しさん
NGNGWhen you specify `-O', the compiler turns on (中略)
`-fomit-frame-pointer' on machines that can support debugging even
without a frame pointer.
だそうです。(info gccより。)
x86系だと machines that can support debugging even without a frame
pointer じゃないので、-O だけでは -fomit-frame-pointer は付きません。
0130デフォルトの名無しさん
NGNG$ cat hoge.cc
#include <stdio.h>
#ifndef __stdcall
#define __stdcall __attribute__((__stdcall__))
#endif
#ifndef __cdecl
#define __cdecl __attribute__((__cdecl__))
#endif
void __stdcall print_i(int i) {
printf("%d,", i);
}
void __cdecl print_i(int i);
int main(int argc, char **argv) {
int i;
for (i = 0; i < 20; i++)
print_i(i);
printf("\n");
}
$ gcc -v
Reading specs from /usr/lib/gcc-lib/i686-pc-cygwin/2.95.3-5/specs
gcc version 2.95.3-5 (cygwin special)
$ gcc -Wall -o hoge hoge.cc
$ ./hoge
0,1,2,3,4,5,6,7,8,9,10,
Segmentation fault (core dumped)
$
0131デフォルトの名無しさん
NGNG上書きが警告されないというのも変だけど...
0132デフォルトの名無しさん
NGNGReading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs
gcc version 2.95.4 20011002 (Debian prerelease)
$ gcc -c attr.c
attr.c:11: conflicting types for `print_i'
attr.c:8: previous declaration of `print_i'
0133デフォルトの名無しさん
NGNG.c だけじゃなくて、.cc でもやってみよう。
0134デフォルトの名無しさん
NGNG.c → エラー(132)
0135デフォルトの名無しさん
NGNG上書きっていうより、あいのこになってしまいます。
print_iを呼ぶとき、
__cdecl なら
addl $-12,%esp
movl -4(%ebp),%eax
pushl %eax
call _print_i__Fi
addl $16,%esp
__stdcall なら
addl $-12,%esp
movl -4(%ebp),%eax
pushl %eax
call _print_i__Fi@4
addl $12,%esp
となるはずが、両方指定すると
addl $-12,%esp
movl -4(%ebp),%eax
pushl %eax
call _print_i__Fi@4
addl $16,%esp
になってしまって、どっちやねん!
0136デフォルトの名無しさん
NGNG俺英語ダメだから頼むわ
http://gcc.gnu.org/cgi-bin/gnatsweb.pl
http://www.t.ring.gr.jp/pub/GNU/gcc/
0138デフォルトの名無しさん
NGNGhttp://sourceforge.net/project/showfiles.php?group_id=2435
0139デフォルトの名無しさん
NGNGlibcのコンパイルをしなおさないで済ます方法をおしえてくり。
0140デフォルトの名無しさん
NGNGLD_PRELOADとか使って普通にinterpositioningするんじゃだめ?
0141139
NGNGスタティックリンクしたいんだけど。無理かな?
0142デフォルトの名無しさん
NGNGLinuxだったら/usr/lib/libc.soをテキストエディタで覗くと幸せになれるかもしれない。
0143デフォルトの名無しさん
NGNG/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a )
これってどういう意味?
0144142
NGNGこれを利用すれば一部の関数だけオーバーライドできそうだけど。
0145140
NGNGstatic linkでいいならそれこそ普通のobject interpositioningでOKでないの?
$ cat caller.c
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int main(int argc, char** argv)
{
open("/dev/null", O_RDWR);
return 0;
}
$ cat open.c
#include <stdio.h>
int open(const char *pathname, int flags)
{
printf("object interpositioned\n");
return 0;
}
$ gcc -c caller.c
$ gcc -c open.c
$ gcc open.o caller.o
$ ./a.out
object interpositioned
$
0146デフォルトの名無しさん
NGNGそのwriteとかは自分が呼ぶだけ?
それともprintfとかが呼ぶwriteも置き換えたいの?
どっちだろう。
0147139
NGNGprintfが呼ぶ奴も乗っ取りたいのでシュ!
0148デフォルトの名無しさん
NGNG笑った。
0149デフォルトの名無しさん
NGNGそれは出来ない。libc作り直せ。
0150デフォルトの名無しさん
NGNG昔のUNIX系の処理系では乗っ取れてしまうものがある。
これって、ANSI C的にはまずいんだけど。
というわけで>>139よ、古いUNIXを探してみたらどうだろう。
0151139
NGNGwriteとかその辺の底辺チックな分を全部取っ払って
自分libをリンクしないとダメなようにしてみてます。
でも、本当は
#ifndef hoge
void hoge( int fd, char* buf, size_t size){ return 0; }
#endif
みたいな仕掛けを作りたいです。
Javaでいうところのオーバードライブでしたっけ? そんな感じ
0152デフォルトの名無しさん
NGNG0153デフォルトの名無しさん
NGNGふぁらんじゃーでジェットサウンドの方が効率良いよ。
0155デフォルトの名無しさん
NGNG0156デフォルトの名無しさん
NGNG0157デフォルトの名無しさん
NGNG何用のどのGCC?
とりあえず http://gcc.gnu.org/ がホームだが
ありがとう!ずっと探してました〜!!
0159デフォルトの名無しさん
NGNG0161デフォルトの名無しさん
NGNG0162デフォルトの名無しさん
NGNGこれって何か使い道あるんでしょうか。
0163デフォルトの名無しさん
NGNGpublic void main(String a[]) {
System.out.println("hello,World!");
}
}
をコンパイル、実行して「Javaできます!!」と履歴書に書けます。
0164デフォルトの名無しさん
NGNGすばらしい!!
ぼくもgccしたい!!
でもディス鳥TL8はgcc 2.96だ。
よほどバグでもあるんだろうね。3.x
0165デフォルト名無しさん
NGNGDebian使え
0166デフォルトの名無しさん
NGNGTurboがやる機内だけ。
0167デフォルトの名無しさん
NGNG自分でバージョンageれ。
0168デフォルトの名無しさん
NGNGアセンブラのある行が、Cのどの行がコンパイルされてできたものかを
知りたいときはどんなオプションをつければいいのでしょうか?
0169デフォルトの名無しさん
NGNGSWTは使えるけどね。
0170デフォルトの名無しさん
NGNGリンクエラーになる。
ちょーウザい。どうにかならない?
0171名無しさん@お腹イパーイ。
NGNG-fno-builtin
// -ffreestandingな人なのかな?
0172名無しさん@お腹イパーイ。
NGNGごめん。
-fno-builtin(あるいは-ffreestanding)するとlinkしようとするってことだね。
逆だね。-ffreestanding -fbuiltinだね。
0173デフォルトの名無しさん
NGNGいやーそれつけてもダメなの。困った困った。
0174名無しさん@お腹イパーイ。
NGNG0175御茶目菜子
NGNGいまのじだいポケコンBASICじゃんか
0176デフォルトの名無しさん
NGNG0177デフォルトの名無しさん
NGNGBASICスレに逝けよ。
>>176
まだ不安定なんじゃない?
俺の所にもmingwのGCC 3.0があるんだけど、なんか癖有り状態だし。
0178御茶目菜子
NGNGBASIC使えないんだって?
どんくさ〜
0179デフォルトの名無しさん
NGNG0180168
NGNG全然わからん・・・
0181デフォルトの名無しさん
NGNGhttp://cvsweb.freebsd.org/src/contrib/gcc/version.c?rev=1.2&content-type=text/x-cvsweb-markup
FreeBSDのgccは3.1ですが。
0182デフォルトの名無しさん
NGNGおれもわからん。
-Sのアセンブラ出力にCコードをコメントで入れてホスイってことね。
しょうがないから-g -cで一回objに落として
objdump -d -Sで見てる
0183168
NGNGナイス! とりあえずその手でいかせてもらうよ。
次に生まれ変わった時は、アンタと結婚したいな。
0184デフォルトの名無しさん
NGNGgcc -v してみると、リンクするときに自分が作ったやつ以外の
.o がリンクされてない?(crtなんとか.o とか)
crtなんとか.o とかが原因だったら、そのソースをmemsetとか使わずに
書きなおせばいいんでは。
0185デフォルトの名無しさん
NGNGあれってただのスタートアップルーチンかなって思ってたんだけど。
0186デフォルトの名無しさん
NGNGどの関数で参照してるかとか、リンカのメッセージに出てないの?
0187デフォルトの名無しさん
NGNGcrt*.oって標準ライブラリみたいなもんだけど、それはオプションで切れるよ。
>>184
memsetとかって、例えば構造体とか配列とか作ったときに勝手に初期化するもんで
(最近のgccって賢いよな) それ用にmemsetを勝手に呼ぶようにコンパイルするんよ。
自分で使ってなくても勝手にでてくるんだよね・・・
0188187
NGNGcrt*.oはもちろんただのスタートアップルーチンだよ。うん。
0189デフォルトの名無しさん
NGNGここには東大を目指す受験生が集まってます
0190170
NGNGconst int hoge[4] = {0x00,0x20,0x33,0x54};
return x<4?hoge[x]:-1;
}
まあこんな関数があったとして、-nostdlib でコンパイルすると
memcpyが必要、とか言われるんですけどなんででしょうか?
アセンブラ読んでもmemcpyなんて出て来ないし・・・
0191デフォルトの名無しさん
NGNGstatic const int hoge...
ほんとーにアセンブリ吐かせたか?
0192170
NGNGおー素晴らしい。オレが一方的にバカだったみたい。 なるほどね。3日悩んじゃったよ
でもアセンブリ吐かせてmemcpyでてこなかったんだよなぁ。
objdump -D hoge.o | grep mem で確認してたんだけど・・・
0193デフォルトの名無しさん
NGNGENTRY
0194デフォルトの名無しさん
NGNG0195デフォルトの名無しさん
NGNG0196デフォルトの名無しさん
NGNG0197g++
NGNG0198h8300-hms-gcc
NGNGmov.w @0xfff134:32,r2
adds #0x1,er2
mov.w r2,@0xfff134:32
という感じで32ビットの足し算をしているようです。
いったいなんででしょうか?
また、せっかくINC命令とかあるのになんでgccは
最適化してもそれを使ってくれないのでしょうか?
グッシッシは2.95.3 、対象は3067Fです。
0199デフォルトの名無しさん
NGNG0200デフォルトの名無しさん
NGNGincはUパイプOnlyだからかと。
演算はleaとかaddにしたほうがいい。
0201182
NGNGobjdump -d -Sだとexternシンボルが-見えないので
objdump -d -S -rのほうが吉。
0202デフォルトの名無しさん
NGNGファイルがあるらしいのですが、いったいどのファイルでしょうか?
また、それらを改造して自分好みの最適化を編集できるでしょうか?
0203仕様書無しさん
NGNG自分好みの最適化って何?
0204デフォルトの名無しさん
NGNG例えばビット演算が装備されてるCPUにおいて
1ビットのビットフィールド使っているときとか
自動的にビット演算命令を使うように
コンパイルしてほしいのですよ。
*.md、見てみます。
0205デフォルトの名無しさん
NGNG0206デフォルトの名無しさん
NGNGどうしても必要なら使わざるを得ない。
それから#pragmaって書くけど、プリプロセッサが理解する物ではない。
0207デフォルトの名無しさん
NGNGだけだけど、偶然違う意味のパラメタの文字が一致したりすると悲惨。最小限に
使おう。
0208デフォルトの名無しさん
NGNG気をつけてくれ
0209デフォルトの名無しさん
NGNGこわっ!
0210デフォルトの名無しさん
NGNG逆ギレコンパイラかよ!
0211デフォルトの名無しさん
NGNGそれはANSI-C規格に沿ってないね。
0212デフォルトの名無しさん
NGNGどう考えても余計なレジスタ退避までやってて非効率的。
こういう定型処理なところは最適化の対象にならないのかな?
0213デフォルトの名無しさん
NGNGVC++でいうところのnakedはないのかな?
0214デフォルトの名無しさん
NGNG0215デフォルトの名無しさん
NGNG割り込みが頻繁に発生するの?効率を気にするほども?
0216デフォルトの名無しさん
NGNG__gxx_personality_v0
が出ちゃうのはどうにかならんの?
次のlibc待つしかないのかな?
0217デフォルトの名無しさん
NGNG0218デフォルトの名無しさん
NGNG0219デフォルトの名無しさん
NGNGterminate__Fvが定義されていない、みたいなこと言われました。
これってどうすればいいんですか?
0220195
NGNG数値解析屋としてはさらなるチューンを望むな。
0221デフォルトの名無しさん
NGNG0222デフォルトの名無しさん
NGNGショック
0223デフォルトの名無しさん
NGNG2.95.2までは小さかったけど、3.1になってから実行ファイルが大きくなった
みたいだ。おそらくライブラリの大改修が行われてスタティックリンクする
ファイルが増えたと見られる。
0224デフォルトの名無しさん
NGNG0225デフォルトの名無しさん
NGNG0226デフォルトの名無しさん
NGNG0227デフォルトの名無しさん
NGNG0228デフォルトの名無しさん
NGNGmingwって今独立してあるんだっけ?
0229デフォルトの名無しさん
NGNGどうすればいいのでしょうか?
0230デフォルトの名無しさん
NGNGローカルにダウンロードしてからだと上手くいくかも
0231デフォルトの名無しさん
NGNGMinGWはDev-C++に含まれているので、それを使うと楽。
http://www.bloodshed.net/dev/devcpp.html
0232デフォルトの名無しさん
NGNG0233デフォルトの名無しさん
NGNG0234FreeBSDキチガイ
NGNG/usr/local/src
0235デフォルトの名無しさん
NGNG0236デフォルトの名無しさん
NGNGint main(void)
{
char a[1000000] = "";
return 0;
}
みたいなソースをコンパイルすると、
なんだか巨大な実行ファイルができてしまいます。
配列のサイズを変えれば出力ファイルのサイズも変わるし、
初期化しなければ普通の?サイズになります。
ming の gcc 2.95 では再現しません。
自分が厨なだけで、こんなもんなんでしょうか?
それとも gcc3 以降に新しいオプションでも追加されたのでしょうか?
0237デフォルトの名無しさん
NGNG1000000バイトの空文字列が初期化用に用意されるためです。
おそらくどのコンパイラを使っても同じような結果になるはず。
0238デフォルトの名無しさん
NGNGっつーか、空文字列だから、最適化の度合いによっては、0で埋める
ようなコンパイラもあるのか。
0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNG同じです。
"abc"は{ 'a', 'b', 'c', '\0' };と等価なので、
同じと解釈するコンパイラがあっても間違いではありません。
0241236
NGNG構造体の初期化のように、
配列内の全ての要素が 0 で初期化されるということでしょうか?
なるほどー。
厨で申し訳ないです… 勉強し直してきます。
ちなみに手持ちのコンパイラ(Win32)では、最適化なしで
bcc では gcc3.1 と同じ結果になり、
gcc2.95 と cl は小さいサイズになりました。
gcc3.1 でも -Os をつけるとサイズが小さくなりました。(-O2では駄目だった)
0242デフォルトの名無しさん
NGNGchar *a = ""; と勘違いしていた。鬱氏。
0243デフォルトの名無しさん
NGNGgcc 2.95.3がそれやってる。
領域を確保して0をmemset
0244デフォルトの名無しさん
NGNGld: cannot find -lmingwex
というエラーが出たんですが、これってライブラリが見つからないってことですか?
落としてきたgcc-3_1-core-20020516-1.tar.gzには、それらしいファイルが
ないっぽいんですが?
0245デフォルトの名無しさん
NGNG0246デフォルトの名無しさん
NGNGcore
runtime
(libstdc++)
(make)
(w32api)
(gdb)
必須は上の3つ
0248デフォルトの名無しさん
NGNG0249デフォルトの名無しさん
NGNG0250デフォルトの名無しさん
NGNG実行するのでは?
0251デフォルトの名無しさん
NGNGC++のクラスとリンクできたりして楽しい。
0252デフォルトの名無しさん
NGNG参照カウントを内部でするような
コードを生成するのかな?
0253デフォルトの名無しさん
NGNG0254デフォルトの名無しさん
NGNG0255デフォルトの名無しさん
NGNG0256デフォルトの名無しさん
NGNG0257デフォルトの名無しさん
NGNG0258デフォルトの名無しさん
NGNG0259デフォルトの名無しさん
NGNGディレクトリ分ければ大丈夫
0260デフォルトの名無しさん
NGNGある共有ライブラリはlibc++(2.95)を使い、
ある共有ライブラリはlibc++(3.0.4)を使っています。
これらを一緒に使っても問題ないでしょーか。
0261デフォルトの名無しさん
NGNG0262デフォルトの名無しさん
NGNGこりゃ困った・・・
0263デフォルトの名無しさん
NGNGちなみに、どんな状況なの?
0264デフォルトの名無しさん
NGNGライブラリをコンパイルしなおせばいいんじゃないかな
0265デフォルトの名無しさん
NGNGをとってきて。コンパイルしますた。
だけど
gcc/cp/parse.h
がないとかエラーが出て
とまってしまいます。
だれかコンパイルできてるかたはいますか?
gcc/cp/parse.y
ならあるんですが。。。
0266260
NGNG3.0.4のほうは自前なので、こちらを2.95でコンパイルすればいいんですけどね・・・
ところで、ダメな理由というのはどういうものなのでしょう。
0267デフォルトの名無しさん
NGNGまずflex/bison通せ
0268デフォルトの名無しさん
NGNGパスも通っています。
0269デフォルトの名無しさん
NGNG>>267の通せってのは、パスを通せって意味じゃなくて、
parse.yをbisonに通せって意味じゃないの?
0270デフォルトの名無しさん
NGNG0271デフォルトの名無しさん
NGNGファイルに落とすオプションって何なんでしょか?
検索かけたり、日本語マニュアルを読んだりしてみましたが
載ってないようなんです。
3年程前に参加していたプロジェクト(別の会社)では、確かに
エラーメッセージをログファイルに落として、それを元にエラー修正を
行っていたはずなんですが・・・当時の資料は当然持ってないので、わかりません。
誰か教えてください〜〜!(T-T
0272デフォルトの名無しさん
NGNGねた?
0273271
NGNG0274デフォルトの名無しさん
NGNG(゚∀゚)はい、どうぞ >&
0275デフォルトの名無しさん
NGNGGCCのマニュアルには載ってないだろうな、当然。
man sh
0276デフォルトの名無しさん
NGNG0277真271
NGNG0278デフォルトの名無しさん
NGNG恥ずかしいから篭ってていいよ
0279デフォルトの名無しさん
NGNG0280デフォルトの名無しさん
NGNG0281デフォルトの名無しさん
NGNG0282デフォルトの名無しさん
NGNG先と、ビルド方について分かりやすく解説したページなど、
ございませんか。
ところで、Mingw32 のソースは、Mingw32 そのものでビルドす
るのでしょうか。VC++ などでコンパイルするのでしょうか。
0283デフォルトの名無しさん
NGNGスマソ
0284デフォルトの名無しさん
NGNGMingw32ってGPLだろ?
0285デフォルトの名無しさん
NGNG0286デフォルトの名無しさん
NGNG0287デフォルトの名無しさん
NGNGどちらが速いかを比べてみたいのですが、GCCでWindows2000のDOS窓で動く
バイナリは作れるのですか?
どうもCygwinという環境の中でないとだめのようですが。。。
0288デフォルトの名無しさん
NGNG>>287
CygwinでもMingwでも落としてください。
0289デフォルトの名無しさん
NGNGありがとうございます。
ひとつ賢くなれます太。
0290デフォルトの名無しさん
NGNGcygwin 版の gcc で cygwin1.dll を必要としないバイナリを作りたいなら、
コマンドラインオプションに -mno-cygwin つければ良い。
0291デフォルトの名無しさん
NGNG0292デフォルトの名無しさん
NGNGdllimport系以外、大抵はlibc位でしか使わないけど、
formatなんかは普通に便利。使っている人いる?
0293デフォルトの名無しさん
NGNGどういう物なのか教えてくれ
0294デフォルトの名無しさん
NGNGハードウェアよりのコードを書くときには、aligned は良く使ってる。
0295デフォルトの名無しさん
NGNG>aligned
その手があった! もっと早く言ってくれよ・・・ もう手遅れだ
0296名無しさん@お腹イパーイ。
NGNG#pragmaみたいな非標準実装依存のqualifier。
例:
http://www.cygwin.com/ml/cygwin/1999-02/msg00484.html
0297デフォルトの名無しさん
NGNG0298デフォルトの名無しさん
NGNGboehmのソースを見るのがよろし
0299デフォルトの名無しさん
NGNGこのサイト、なかなか参考になるかも<RTL
0300デフォルトの名無しさん
NGNG0301デフォルトの名無しさん
NGNGhttp://gccintrospector.blogspot.com/
0302デフォルトの名無しさん
NGNG0303デフォルトの名無しさん
NGNGgcjでもgnatでもいいんじゃない?
使ってる人少なそうだけど。。
0305デフォルトの名無しさん
NGNG0306デフォルトの名無しさん
NGNG0307デフォルトの名無しさん
NGNG0308デフォルトの名無しさん
NGNG0309デフォルトの名無しさん
NGNGhttp://gcc.gnu.org/c99status.html
ちなみにgcc-3.0.4では-std=c99付けないとC99の機能を使えない。
0310デフォルトの名無しさん
NGNGpragmaのwarningだけ止めれないかな?
0311デフォルトの名無しさん
NGNGということでしょうか?
C++はまだ追いついてませんよね?
0312デフォルトの名無しさん
NGNG0313デフォルトの名無しさん
NGNGgccはそのへん弱いよね。俺も知りたいよ。
VCみたいに番号で抑制できればいいのにね。
0314デフォルトの名無しさん
NGNGまだ完全ではないがすでに仕様の大部分に対応しているということ。
> C++はまだ追いついてませんよね?
でも、3.xになってかなりまともになったよ。
boostというC++の最新の機能をバンバン使ったライブラリでregression test
した結果、
http://www.boost.org/status/compiler_status.html
http://www.boost.org/more/regression.html
http://boost.sourceforge.net/regression-logs/cs-win32.html
単純にfailの数からすれば、GCC-3.1はVC++やIntel、BCCよりまともらしい。
他がダメなだけなのかもしれないけどね。
0315デフォルトの名無しさん
NGNGVCはおろかWatcomにも負ける
0316デフォルトの名無しさん
NGNGどこかに統計的な資料がある? 昔、C++ でマルコフ情報源を使って適当な
文章を書き出すプログラム(プログラミング作法で使ってたヤツね)を走らせて
みたんだが、コンパイラの差よりも STL の実装の差の方が大きかった覚えが。
(資料どっかにやってしまったが)
0317デフォルトの名無しさん
NGNGbad_allocをキャッチ出来ないでout of memoryって表示されて終了。
多分stlの実装の問題だと思うんだけど、
これなんとかなりませんか?
gccは2.94です。
0318315じゃないけど
NGNG1998年の資料なんであんまり参考にならないけど、
http://www.geocities.com/SiliconValley/Vista/6552/compila.html
によると、VC++よりは悪いけど、Watcomとは同じぐらい、表には載ってない
がBorlandやSymantecより良かったらしい。
新し目の資料として、Athlonで各種暗号アルゴリズムに対する計算速度の
比較をgcc-3.04, Intel C++ 6.0, KAI C++ 4.0eに対して行ったものがある。
http://www.randombit.net/misc/x86_comp.php
ちなみに、
... this test is only a comparison of integer code. ... So please
only consider these results useful if your application is also
heavily integer-based.
という条件付きなので注意。
これによると、条件付きとは言えAthlonではgccはIntel C++より良いらしい。
VC++の最適化はだいたいIntel C++と同じくらいのようだから、Athlonでは
gccの方が良さそう。
なので、gccの最適化が弱いというのはAthlonでは当てはまらず、巷のgcc-3.x
Athlon最強説は正しいっぽいと思われ。
0319317
NGNGこういう実装があるからstlは嫌いなんだよな。
0320デフォルトの名無しさん
NGNGもっと下のレベルのnewを書き換えるとかするべきじゃないの、本来は。
0321デフォルトの名無しさん
NGNGSTLport じゃだめかな?
0323デフォルトの名無しさん
NGNG0324デフォルトの名無しさん
NGNGなんでISじゃなくてDraft準拠なわけ?
0325デフォルトの名無しさん
NGNG草案に準拠って何ダロね
0326デフォルトの名無しさん
NGNGでも、gccの最適化はダメという説に対する反証にはなるよね。
gcc-3.xのPentium IIIやPentium IVでのベンチマークがあればはっきりするんだけど、
見つからなかった。
これも少し古い資料なんだけど、Pentium IIIでのgcc-2.95とintel 5.0とVC++ 6.0
の比較。
http://www.open-mag.com/features/Vol_15/IntelC/intelc.htm
On Linux, numerically intense CPU performance improved by 47% compared to GNU C v2.95
On Windows, numerically intense CPU performance improved by 37% compared to MS Visual Studio.
なんで、gcc-2.95とVC++ 6.0の差はそれほどではないが、gcc-2.95とintel 5.0の差は
大きいということになる。
でも、今のところ規格準拠度が他より高く、非常に多くのプラットフォ−ムに対応し、
一通りの最適化をしてくれる上、フリ−なんだから、普通に使う分には十分な性能だと
思うけどなあ。数値計算とかなら金払ってカリカリに最適化してくれるコンパイラを
買えばいいだけだし。
0327デフォルトの名無しさん
NGNG> 普通に使う
その「普通」に、実は 326 固有の使い方が投影されている可能性が高いと
思うが……。
なんにせよケースバイケースで、gcc が十分、あるいは gcc がベストの選択肢
となる用途もある。ただ、それを「普通」というと解釈が食い違ってフレームになる
可能性が高いから、ちと気をつけてくれ。
0328デフォルトの名無しさん
NGNGそうか?
「普通」というのは実行速度が極めて重要な分野など特別な事情がある場合以外
という意味だよ。
例えば、数値計算分野では、基本的に今まで計算機では計算できなかったものを
計算することに意味があり、どういう方法でもいいから速度が上がれば今まで計算
できなかった問題に対応できるようになるので、計算速度が一番重要。
でも、数値計算以外ではそこまで実行速度は重要ではないでしょ。むしろ、手軽に
入手でき、手元のプラットフォ−ムで規格に沿ったプログラムをちゃんとコンパイル
できるほうが重要。
全体的に見て、今のgccには大きな欠陥がなく他より優っている部分の方が多いん
だから、特別な事情がなければgccがbetterな選択になると思われ。
> なんにせよケースバイケースで、gcc が十分、あるいは gcc がベストの選択肢となる用途もある。
これってgccを別のものに置き換えても成り立つじゃん。
> それを「普通」というと解釈が食い違ってフレームになる可能性が高いから、ちと気をつけてくれ。
特別な事情がない場合を「普通」と呼ぶのがそんなに変か?
0329デフォルトの名無しさん
NGNG> 「普通」というのは実行速度が極めて重要な分野など特別な事情がある場合以外
> という意味だよ。
「特殊」は「普通」の裏返しだからな…
少なからず開発者人口がいる Win32 の分野なんかだと gcc は
- プリコンパイルヘッダに対応していないので <windows.h> 読み込むだけで
時間かかりすぎ。
- UNICODE 対応がイマイチ
- 最新の Platform SDK に対応していない
- MFC, ATL/WTL, VCL といったクラスライブラリが提供されていない
- BoundsChecker のようなリソースリークを検出するツールなど、サードパーティ
製品が充実していない
といった理由で、お奨めとは言いにくい。
「特別な事情」とか「普通」とか言わずに、具体例で示した方が話が建設的な
方向に進むと思うが、どうか?
0330デフォルトの名無しさん
NGNG> でも、今のところ規格準拠度が他より高く、
完全に準拠しているわけではないので、目糞鼻糞。
> フリ−なんだから、普通に使う分には十分な性能だと
性能の話しにフリーかどうかを持ち出すのはおかしいだろ。
漏れはgcc愛用してるが、少なくとも最適化は駄目だ。
信者じゃないんだったら駄目な部分も認識しておこうよ。
(athlonで最強ってのも、それこそ「普通」はathlonなんか使ってない)
0331デフォルトの名無しさん
NGNGそっちのほうが「特殊な事情」じゃないのか?
0332デフォルトの名無しさん
NGNGちなみにWin32に限らずgcc-3.0のコンパイル速度は遅い。今まで誰も突っ込ま
なかったのが不思議なくらい。
まあ、たしかに、Win32だとgccは使いづらいかも。でもgccの問題というより周辺
の開発環境の問題だという気がする。
>>330
> 性能の話しにフリーかどうかを持ち出すのはおかしいだろ。
入手できないければ意味ないじゃん。入手できないコンパイラの性能は実質0だ。
C&C++最新規格完全準拠、最適化も最強、でも値段が1億円でライセンスガチガチ
だったらあんまり意味ないだろ。個人だとVC++すら買えんやつ多いぞ。
> 少なくとも最適化は駄目だ。
その根拠が知りたいんだけど。
よくgccの最適化は駄目だ駄目だって言われている割には具体的なベンチマークがあん
まり出ていないんだよね。コ−ド読んで最適化手法として教科書通りのことしかやって
いないから駄目って言うかもしれないけど、他のコンパイラがそれ以上のことをやって
いるとは限らないし。
たしか、egcsの1.1とVC++ 5.0あたりでは最適化アルゴリズムはほとんど同じだが、egcs
ではコ−ドが不完全で遅かったりミスコンパイルすることが多い、そこがegcsとVC++の
差だったって話を聞いたことがある。
x86以外ならともかく、gcc-3.xマンセーマンセー言ってathlon向けにgccでコンパイルして
いるフリーソフトの開発者がそこそこいるのに、一方では粘着チックにgccの最適化は
駄目だ駄目だと言われ続けているのが不思議でたまらない。
0333デフォルトの名無しさん
NGNGSTL使わなければホゲホゲぐらい出るからフガフガだって言えばいいんでないの?
普通/特殊なんて人によって違うんだからさ。
// 本筋(どの場合にどの程度のパフォーマンスが出るのか)に関係ないからsage。
0334デフォルトの名無しさん
NGNGWinならVC++とIntelのがあるな。
標準準拠度もComeau C++ + VCで最強だが。
0335デフォルトの名無しさん
NGNG> 入手できないければ意味ないじゃん。
意味があるかどうかを決めるのは俺たちではなくて、ユーザの側だ。
332 の価値基準で「普通」とか「高価で買えないから無意味」とか言っても、
そんなことは誰も興味ないわけで。判断材料の一つとして
gcc は無料というのはメリット
って形で提示しようよ。
0336デフォルトの名無しさん
NGNG30日だけ??
0337デフォルトの名無しさん
NGNGむかーし、簡単な比較したときの書き込みを見つけた。てっきりム板だと思ったら
UNIX 板でやってたのか。
C++って使わないの??@UNIX板
http://pc.2ch.net/test/read.cgi/unix/1004227343/257
http://pc.2ch.net/test/read.cgi/unix/1004227343/265
http://pc.2ch.net/test/read.cgi/unix/1004227343/290
使ってる STL 自体がバラバラなんで、アレなんだけど。手元にいろいろ処理系
揃えてる人、いたら全部 STLport で統一してベンチマーク採ってみない?
0338デフォルトの名無しさん
NGNGは?評価版じゃなくて非商用版だよ
0339デフォルトの名無しさん
NGNGこんなページ見つけた。
Linux Pentium III上でのIntel C++ 6.0とgcc-3.0.4とgcc-3.1の比較。
http://www.coyotegulch.com/reviews/intel_comp/intel_gcc_bench2.html
gcc-3.0.4の時点ではIntel C++の方が上という結論だったけど、この記事を
書いた直後に出たgcc-3.1で比較したら、gcc-3.0.4より悪くなっている場合も
あるけど、Intel C++よりgcc-3.1の方が速い場合もあり、どっちが上という
わけでもないという結論に変わったらしい。
これを見る限り、gccの最適化はもう駄目と言わせないレベルになったと
言ってもいいじゃないかな。
0340デフォルトの名無しさん
NGNG> > 性能の話しにフリーかどうかを持ち出すのはおかしいだろ。
> 入手できないければ意味ないじゃん。入手できないコンパイラの性能は実質0だ。
> C&C++最新規格完全準拠、最適化も最強、でも値段が1億円でライセンスガチガチ
> だったらあんまり意味ないだろ。個人だとVC++すら買えんやつ多いぞ。
「性能の話に値段は関係無い」って意味が分からないの?
そこで自分勝手な妄想コンパイラを例にあげるなよ。
0341デフォルトの名無しさん
NGNGgccの最適化機能は、Intel C++やVC++と同レベルで、十分な最適化を行っている
っていう結論であってる?
0342デフォルトの名無しさん
NGNG問題になるアプリケーションっていまだにあるの?
0343デフォルトの名無しさん
NGNGほとんどないだろーよ。
それが問題になる状況ってよっぽど「特殊」なんだけど、
ここの人たちがこれにつっこまないのがフシギ。
で、Draftに準拠(藁)の話はどうなったの?
0344デフォルトの名無しさん
NGNGもちろん、山のようにある。問題にならないアプリケーションも山のようにある。
0345デフォルトの名無しさん
NGNGアプリケーションがほとんどだと思うんだけど、
"コンパイラまかせで" 速度をアゲなければならないアプリを
具体的にアゲてもらえませんか?
MPEG4コーデックなんかはMMXなりSSE2なり使えばいいんだから除外ね。
シミュレーション屋さん?計算屋さん?天文屋さん?
0346デフォルトの名無しさん
NGNGプロセッサ自体が出回ってるとかそういうことじゃなくて、、、
イタコンは漢のコンパイラって感じがするんだけどよー
intelとvc++とgcc、これについてはどんなもんでしょ。
0347デフォルトの名無しさん
NGNG0348デフォルトの名無しさん
NGNGここはgccスレなんだよ。PC小僧はすっこんでろ。
0349デフォルトの名無しさん
NGNG> "コンパイラまかせで" 速度をアゲなければならないアプリを
> 具体的にアゲてもらえませんか?
それは問題定義が変。
速度を上げたければ、アセンブラで書くなり CPU 早いのに入れ替えるなり
方法はいくらでもあるわけだが、
コンパイラの最適化が優れていることで、利益が出る
ならば、最適化が優れているコンパイラを選択することに意味がある。
アセンブラだと性能と開発費(人件費・時間)のトレードオフが発生する
から、コンパイラに任せた方が安上がりってケースもあるしさ。
あと IA-32 限定で話をする必要もないと思うが。
0350デフォルトの名無しさん
NGNGどうしても「gcc最高!」って叫びたいヤツが紛れ込んでるよな。
べつにgccがある面で他に負けてるからと言って、そいつのせいじゃないし、
冷静に比較検討すりゃ良いだけなんだが。
0351デフォルトの名無しさん
NGNG0352デフォルトの名無しさん
NGNG逆に「gcc最低!」って叫びたい香具師も紛れ込んでいるよね。できる
だけ根拠を出して議論してほしいなあ。>>351みたいに。
0353デフォルトの名無しさん
NGNGあ、>>351は「gcc最低!」って叫びたい香具師って意味ね。
0354デフォルトの名無しさん
NGNG> 逆に「gcc最低!」って叫びたい香具師も紛れ込んでいるよね。
いや「最低!」を主張するのは難しいと思うが。
lcc-win32 とかあるし。lcc は元々が「コンパイラの仕組み」を説明するための
教育用の処理系で、高度な最適化よりも単純な実装を優先してるから、仕方
ないと思うけど。
……もっと言えば、俺が昔、勉強がてら書いた処理系は、さらに酷い(w
0355デフォルトの名無しさん
NGNG論理的にgccを否定するならいいんだけど、そうじゃなくて、なんでもケチ
付けるアンチがいるでしょ?
まあ、死んじゃと安置の煽り愛は2chの鼻だからいいんだけどね。
0356デフォルトの名無しさん
NGNG0357デフォルトの名無しさん
NGNG0358デフォルトの名無しさん
NGNGgcc ってターゲットのアーキテクチャによっても、出力コードの良し悪しが
あるよな。IA-32 はユーザ数も多いし歴史も長いから、全く心配要らんけど。
0359デフォルトの名無しさん
NGNGそんなマイナーなものに使ってるの?
0360デフォルトの名無しさん
NGNGいや、一番枯れてんのは68k用だよ。
IA-32はアーキテクチャ的にはgccには不利。
これはgccのせいというよりIA-32が思いっきりカスなだけだが。
0361デフォルトの名無しさん
NGNG>できるだけ根拠を出して議論してほしいなあ。>>351みたいに。
VC >>>>>>>> gcc っつのも大して根拠ないやろ。
小手先の最適化で勝っても(そら他チップに対応してないし
ホームベースなんだからgccに負けたらアホやな)
Windowzはシステムが思いっきりカスやしね。
MCI コマンド MCI_WAIT で送ってみ、デバイスからリターンするまで
ビジーループで待っててスレッドのCPU使用率100%や。(ワラ
1クロック短くする前にシステムのカスな部分がなくなってから
自慢してや。>> VC擁護派
0362デフォルトの名無しさん
NGNGgccマンセー派だが、コンパイラの議論には関係ないと思う。
# ネタをネタと…だなw
0363デフォルトの名無しさん
NGNG0364デフォルトの名無しさん
NGNGいつかそう言われたいもんだ(笑)
0365デフォルトの名無しさん
NGNGほとんど脳みそ使わずにi386からARMやらSH4からH8までサポートできるし。
なんつーか、メリットってそれだけだけどな。 あ、あと商用でもタダってのも。
0366デフォルトの名無しさん
NGNG> ほとんど脳みそ使わずにi386からARMやらSH4からH8までサポートできるし。
新しいアーキテクチャに対応する場合には、さすがにもうちょっと苦労するぞ。
組み込み用途なんかだと binutils と合わせて
- 対応アーキテクチャが多い
- 新しいアーキテクチャにも md ファイル書けば対応できる
(既存のアーキテクチャの変種だと、特に簡単)
- クロスコンパイラが作れる
っつーあたりは、大きなメリットだな。
> なんつーか、メリットってそれだけだけどな。
また余計な一言を……。
0367デフォルトの名無しさん
NGNG0368デフォルトの名無しさん
NGNG0369デフォルトの名無しさん
NGNG0370デフォルトの名無しさん
NGNG0371デフォルトの名無しさん
NGNG基本じゃないのか? Makefileに書いてしまうけど…。
0372デフォルトの名無しさん
NGNGヘッダがgcc依存している罠
0373デフォルトの名無しさん
NGNG>>また余計な一言を……。
デメリットを知っていながら隠さなくても
>>(既存のアーキテクチャの変種だと、特に簡単)
へぇ、簡単にできるのか。
0374デフォルトの名無しさん
NGNG> デメリットを知っていながら隠さなくても
デメリット指摘してないだろ?
>>365
> なんつーか、メリットってそれだけだけどな。
これじゃ、単に煽ってるだけだ。
0375デフォルトの名無しさん
NGNG日本語知らない奴に突っ込むなよ。
0376名無しさん@お腹イパーイ。
NGNG> VC++の最適化はだいたいIntel C++と同じくらいのようだから、
の資料は?
0377名無しさん@お腹イパーイ。
NGNG> これを見る限り、gccの最適化はもう駄目と言わせないレベルになったと
> 言ってもいいじゃないかな。
つーか、対VC++で「駄目」なんて言えるほど、極端に差が出たベンチ見たことない。
CPUたくさん対応してるから遅いだろうという思い込みや、
「駄目」ということにしたい人間がフレ廻っているだけと思われ
IntelやIBMが自社CPUに作ったcompilerはブッちぎりの速さなことがよくあるけど。
>>329
コードの最適化の話から外れてるじゃん(w
0378デフォルトの名無しさん
NGNG>IntelやIBMが自社CPUに作ったcompilerはブッちぎりの速さなことがよくあるけど。
漏れの環境ではインテル C++ コンパイラはかなり速くなったよ。
このサイトで日本語ヘルプが落とせる模様
http://www.xlsoft.com/jp/products/vtune/perftool.htm
ってかペンチの話だよね。漏れもベンチみたことないな・・。
横槍スマソ 逝ってきます・・・
0380デフォルトの名無しさん
NGNGF:\開発\SRC\HOGE.CPP(108) : Error : Symbol '_vt.10CHoge' not defined
F:\開発\SRC\HOGE.CPP(108) : Error : Symbol '_vt.10CHoge' not defined
というエラーが出てしまいました。リンクエラーっぽいのでmakefileを
確認してみたのですが、何度見直してもミスしている様子はありません。
3時間ほど、いろいろ試してこのエラーと格闘していましたが、結局、私の力
だけでは解決できませんでした。
全く同じエラーメッセージがふたつ出てくるのもなにか怪しいですが……。
なにか、「こういうところはチェックしたか?」というヒントのようなものを
いただけたら有難いです。
0381デフォルトの名無しさん
NGNG>少なからず開発者人口がいる Win32 の分野なんかだと gcc は
>といった理由で、お奨めとは言いにくい。
それで何か言った気になってるの?おまえあほだろ。
Windowsでの一番いいコンパイラはVBに決ってんだろ。
0382デフォルトの名無しさん
NGNG0383デフォルトの名無しさん
NGNGコンパイルオプションは何をつければいいのでしょうか?
(cygwin gcc 3.2 です。)
0384デフォルトの名無しさん
NGNGエラーメッセージは?
0385383
NGNG/cygdrive/c/DUCUME~1/......
undefined reference to std::basic_string<char,std::char_traits<char>,std::allocator<char> >::basic_string[in-charge]()
ld returned 1 exit status
0386デフォルトの名無しさん
NGNGとりあえずコンパイルオプションに -v つけて実行した結果を見せてくれ。
0387デフォルトの名無しさん
NGNGg++でコンパイル汁!!
0388383
NGNGで
実行結果を出力できないのですが、
どうすればできるのでしょうか。
(out.txtに何も書き込まれない)
0389デフォルトの名無しさん
NGNGリンクのコマンド
0390デフォルトの名無しさん
NGNG-fbranch-probabilities を付けてコンパイルしても
同じ実行ファイルが生成されるのですが
どうすれば違うファイルが生成されるようにできるのでしょうか
0391デフォルトの名無しさん
NGNGgcc -v test.cpp 2>&1 > out.txt
0392383
NGNGやってみましたが、テキストには出力されませんでした。...
その後、古いcygwinディレクトリをすべて削除し、installし直したら
g++でコンパイルできました。
>>384,386,387 ありがとうございました。
0393デフォルトの名無しさん
NGNG0394377
NGNGいや、Intelの方が速いことが多い、と言ったつもり。分かりにくい文章でスマンが。
MIPSのコンパイラも(当時は)滅茶速いコードを生成した。
しか「も」データフロー解析アルゴリズムが美しい。
0395デフォルトの名無しさん
NGNGぬ?GCCについての話じゃないけど、どう美しいか知りたいんいん。
0396デフォルトの名無しさん
NGNGどう美しいか聞かれても答えようがない。
0397デフォルトの名無しさん
NGNGオパーイモナー
0398デフォルトの名無しさん
NGNG0399395
NGNGそういう時は、詳細がわかる参考文献あげて「これみろやゴルァ」とかするでしょうよ。
というわけで小野寺某の「おあんお」や「おあーい」の
詳細がわかる参考文献強くきぼんぼん。
0400デフォルトの名無しさん
NGNG0401デフォルトの名無しさん
NGNGその前に binutils-2.13 を入れた方がいいんでしょうか?
良く分からんのですが…
現状はこのような環境になっています
gcc 2.95.3-2vl20
binutils 2.11.90.0.8-8vl5
0402デフォルトの名無しさん
NGNGsparc-sun-solaris2.8 で binutilsをいれてはあったことならあるが。
0403デフォルトの名無しさん
NGNGコンパイルできた。昔みたいにコンパイルに丸一日…ってわけでもないだろうから、
とりあえずやってみてはいかが?
0404デフォルトの名無しさん
NGNGkernelのバージョンは2.4.18-0vl3ですね
今とりあえずやってます。。
3.2のマニュアルが英語でちょっと良く分からなかったんですが、
とりあえず $ make bootstrap で。
http://www.asahi-net.or.jp/~wg5k-ickw/
↑ここに 2.95.2 の訳があるんですが、これって参考になりますかね?
なんか、結構変わってるようだったんで、
見るだけにしといたんですが。
0405デフォルトの名無しさん
NGNG0406デフォルトの名無しさん
NGNG>gcc4.2って使い心地どう?
( ゚д゚)ポカーン
0407デフォルトの名無しさん
NGNGglibcは・・・
0408デフォルトの名無しさん
NGNG時間が解決するもんだと思うよ。
0409デフォルトの名無しさん
NGNGネタ?
0410408
NGNG0411デフォルトの名無しさん
NGNG0413408
NGNG0414デフォルトの名無しさん
NGNGjavaとかadaとかfortranとかobjective-Cとかのフロントエンドも
全部コンパイルしちまった。使わねーけれども。
ああもったいね…。ソースからコンパイルすると、アンインストール
できねぇじゃん。make uninstallもダメだって
find -ctime -1 -exec rm {} \; とかでやればいいか…
0415デフォルトの名無しさん
NGNG数ヶ月前、GNATSに登録したけど、まだ直ってないらしい。
結局ソースを直す羽目になる。
0416デフォルトの名無しさん
NGNG古いgccと、新しいgccでは、binutilsのコンパイル結果が違うから、
新しいの作ったら、binutilsも作り直さないといけないとか。
厨でゴメンヨ!
0417デフォルトの名無しさん
NGNG0418デフォルトの名無しさん
NGNGgcc3.2だと構文エラーっぽいものが出たので、2.95でやってみたら問題なく。
windowMakerのドックアプリ試しにコンパイルしてみて、
ちゃんと出来てたし、多分大丈夫だろうと思います。…
0419デフォルトの名無しさん
NGNGオブジェクトフォーマット(elf/coff等)が同じであれば基本的には問題ないはず。
デバッグ情報とかがうまく生成されないとかいうのがあるかもしれんが、
出来たバイナリを使うだけなら問題ない。
おいらは、同じ時期にリリースされた or binutilsが新しいのを使うようにしてる。
0420デフォルトの名無しさん
NGNGglibc忘れた。
glibcはドキュメントに書いてあるバージョンを使えばいいんじゃない?
0421デフォルトの名無しさん
NGNG私はLinuxや*BSD全般です。
0422デフォルトの名無しさん
NGNGSolarisとFreeBSDとcygwin
0423デフォルトの名無しさん
NGNGCygwin と FreeBSD と PS2
0424デフォルトの名無しさん
NGNG0425416,418
NGNGglibcは確かに面倒臭そうですね
コンパイル自体は簡単だったけど、入れ替えるのが…
割と長期戦というか、少しずつ情報集めながらやらないとダメかも。
まぁ精進します。では
0426デフォルトの名無しさん
NGNGむしろ、Cygwin プだろ。
0427デフォルトの名無しさん
NGNG0428デフォルトの名無しさん
NGNG0429デフォルトの名無しさん
NGNGgcc3.2に移行を考えてます。
最適化とかは速くなっているのでしょうか?
0430デフォルトの名無しさん
NGNG0431デフォルトの名無しさん
NGNGそんなコト聞いてる時点でgcc3.2なんて使えない。気になるなら自分で調べれ。
できんのなら大人しくgcc 2.96.xか他のコンパイラでも使ってろ。
>>429
>Red Hat7.1に入っていたgcc2.96を今使ってるのだが
>gcc3.2に移行を考えてます。
ワラタ
0432デフォルトの名無しさん
NGNG>429
はなんか笑える話なのか・・・?
0433デフォルトの名無しさん
NGNG0434428
NGNGなんで煽られてんだ?
「消してくれる」ことはないみたいですね。
> ...the current behavior is both sub-optimal and inconsistent
> and will change in the future.
この記述ってけっこう古いバージョンから変わってないみたいだけど、
ほんとで変えるつもりがあるのかが、気になります。
>>433
じぶんでループまわしてるとこはそれでいいんですけど、
テンプレートの中に書いてあるループがヤバ目のコードを吐いたりします。
0435デフォルトの名無しさん
NGNG両方入れておけば。ディスク食うけど。
様子を見ていらん方を消せばいい。
0436デフォルトの名無しさん
NGNG> C:\DOCUME~1\usrname\LOCALS~1\Temp\ccaQaaaa.o(.text+0x20):voice.c: undefined reference to `PlaySoundA@12'
厨ですが失礼します。
MinGWを最近いじり始めたのですが、こんなエラーが出て。
いちおー匿名にしました( 'usrname\ ')が、他はメッセージ通り。
スイッチは特に指定なし。
今まで他環境で日本語化されたGCCだったのでいまいちピンと来ないのだけど、
これってリンカエラーですか?
SorceForge.net で関係ありそうなバイナリは全て入れたつもり(教本掲載の窓だけ
表示するサンプルはコンパイル出来る)だけど、まだパッケージが必要なのかな〜。
0437デフォルトの名無しさん
NGNGライブラリがリンクされてないだけじゃないの?
リンク時のオプションの最後に、
-lwinmm
をつければ大丈夫じゃない?
0438デフォルトの名無しさん
NGNG0439436
NGNGこれで私のタイプミスだったら御笑いなんですけどね・・・(^^;
0440デフォルトの名無しさん
NGNGw32api いれてる?
コンパイル時のコマンドラインは?
gcc -o hoge.exe hoge1.o hoge2.o -lwinmm
みたいなのでは駄目?
0441デフォルトの名無しさん
NGNGマルチスレッドのプログラムが動きません。(;´д⊂)
情報を探していたら、GCC の non-bugs として下記の記述がありました。
Exceptions don't work in multithreaded applications.
You need to rebuild g++ and libstdc++ with --enable-threads
gcjも同じように --enable-threads を付けて自分でコンパイルすれば
マルチスレッドで動くのでしょうか。。 それとも
MinGWのgcj対応に期待して、とりあえず待っといたほうがいいかな。
0442デフォルトの名無しさん
NGNGこれを機にコンパイル方法を覚えてしまうとか
0443436
NGNGまずは、ごめんなさい。
>436 でスイッチ指定してないとか書きましたけど、んな訳ないですね。
バッチで処理しているからいちいち記述しないだけで、バッチ内ではこんな感じです。
> gcc -mwindows -owmp wmp.c
>>440
はい、入れられる物は全て・・・と思ったけど確認してみたら入れてないし。
w32api-2.0 を慌てて入れました。
でも、変わらないです(^^;
と言うか、重月程度しかまとまった日本語資料知らないのですが、
どこか御勧めのサイトってありますかねえ?
皆さん、原文直接読めるんですね・・・。
0444デフォルトの名無しさん
NGNGPlaySoundA をインポートするためのライブラリが libwinmm.a 。
それが見つからないっていってんだから、リンクさせてやればいい。
この場合だと、
gcc -mwindows -owmp wmp.c -lwinmm
これで駄目なら、インストールがうまくいってないか、ソースが間違ってる。
とりあえず、gcc のマニュアルと MSDN くらい読んどけ。
0445デフォルトの名無しさん
NGNG各関数の呼び出し回数はわかるのですが、かかった時間がようわかりません。
下にあるのが実際にgprofが出力したものの一部です。
mcountというのは計測用に自動で生成された関数だということですが、これが
実行時間の約90%も占めているという意味ですか?プロファイルしないで実行
しても実行時間が 1/10 には到底ならないのですが・・・。
> Flat profile:
>
> Each sample counts as 0.01 seconds.
> % cumulative self self total
> time seconds seconds calls s/call s/call name
> 63.14 10.04 10.04 _mcount
> 24.97 14.01 3.97 mcount
> 1.76 14.29 0.28 __get_eh_context
> 1.57 14.54 0.25 24791361 0.00 0.00 vector<LR_item, allocator<LR_item> >::~vector(void)
> 0.94 14.69 0.15 28433081 0.00 0.00 void vector<LR_item, allocator<LR_item> >::_M_assign_aux<LR_item *>(LR_item *, LR_item *, forward_iterator_tag)
> 0.94 14.84 0.15 eh_context_static
> 0.82 14.97 0.13 24791361 0.00 0.00 allocator<LR_item>::~allocator(void)
> 0.69 15.08 0.11 28433081 0.00 0.00 void vector<LR_item, allocator<LR_item> >::_M_assign_dispatch<LR_item *>(LR_item *, LR_item *, __false_type)
cygwinで
% g++ -pg ソース
% ./a
% gprof a.exe
としてます。
0446デフォルトの名無しさん
NGNG- libhoge.so
- 2ch.so(hoge.soの関数を利用する為に-lhogeしました)
monaから
2ch.soの関数呼ぶとエラーになるんすけど、これはリンクのさせ方が悪いのでしょうか?
-lしないとそんな関数ねーよって言うし。
0447デフォルトの名無しさん
NGNG0448デフォルトの名無しさん
NGNG↑実はpostgresでshared objectを動的にロードする形の話なんだけど、
postgresをmonaと見立てても同じことかな、思って。
ちなみにlddするとこんな感じ・・・
$ldd 2ch.so
libcrypt.so.1 => /lib/libcrypt.so.1 (0x40031000)
libxmlpgsql.so => /usr/local/lib/libmona.so (0x4007d000)
libc.so.6 => /lib/i686/libc.so.6 (0x42000000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
このスレで聞いたのは間違いかも^^;
0449デフォルトの名無しさん
NGNG>このスレで聞いたのは間違いかも^^;
何様?
0450448
NGNGいや、posgreスレの方かなと。
0451448
NGNGNOTICE: Message from PostgreSQL backend:
The Postmaster has informed me that some other backend
died abnormally and possibly corrupted shared memory.
なのが帰ってきますが^^;、激しくすれ違いでした。
0452デフォルトの名無しさん
NGNG--------------------------------------------
↓ ↓ ↓ ここから先はマターリとおながいします ↓ ↓ ↓
0453デフォルトの名無しさん
NGNG(゚Θ゚ ) <仕切り屋ウザイ Yo...!?
( U) \________
(__(_)))
荒れてる方が面白いだろうーがボケぇー
0454デフォルトの名無しさん
NGNG#include <vector>
↑の1行だけのソースでも、g++ -g ってやるとテンプレートがらみの部分
に対応したデバッグ情報がけっこうでてきます。
ソースファイルが数百あって、だいたいどんなファイルでも
vector くらいインクルードされてると、
最終バイナリーの80%くらいがこのデバッグ情報の重複分になってしまいます。
なにかまちがってるような気がするのですが、こういうもんですか?
0455デフォルトの名無しさん
NGNG変に省略されて、デバッガに嘘つかれるよりましです。
終わったらstripすればいいんだし。
0456454
NGNGvectorに関するコードが1ビットたりとも生成されてないのに、
嘘つくもなにもないと思うです。
> 終わったらstrip
デバッグ情報いるファイルのリストつくって、そいつらだけ -g とかしとこうと思いました。
0457勉強になりますた
NGNG重複するデバッグ情報って自動で削除されるんじゃなかったっけ…と思ったけど、
手元の資料見たらやっぱ手動でStripせにゃイカンらしい。
ちなみにその資料によると、stripしたバイナリは、他のstripされとらんバイナリの
デバッグ情報を利用できるそうだから、必要なモノだけ -g より、
不要なモノだけ strip の方が良いかも?
0458454
NGNG他のバイナリの情報を引っ張ってこれるなんて知らんかった。
0459454
NGNG> 不要なモノだけ strip の方が良いかも?
そっちも検討します。
情報ありがとうです。
ところでその資料ってやつがWebにあるもんなら、リンクいただけますかね?
>>458
騙りだー。
0460デフォルトの名無しさん
NGNGprogram | gcc -c -x c -o hoge.o
みたいに。
0461457
NGNGスマソ。情報ソースは「Linkers&Loaders」(John R.Levine著/オーム社)っつー「本」です。
一応巻末の参考文献から、参考になりそうなURLを1つ。
DWARF (ELF用デバッグ情報) 等についての解説がありまつ。
http://developer.intel.com/vtune/tis.htm
0462デフォルトの名無しさん
NGNG#include "/dev/stdin"
↑の1行だけを書いた temp.c を作って
$ cat program.c | gcc -o hoge temp.c
0463デフォルトの名無しさん
NGNG質問おかしいかな
Java1.2、Java1.3、とかあるじゃん
0464デフォルトの名無しさん
NGNGおお、こんな手があるとは!
ありがとうございました。
0465デフォルトの名無しさん
NGNGgcjはコンパイルするまで、実行環境はlibgcj。
文法仕様は1.4のassertも可能なのでコンパイルしてclassファイルを
作ることはできるけど、実行で使うlibgcjにあるクラスはJDKに無いものも多い。
http://gcc.gnu.org/java/
0467デフォルトの名無しさん
NGNGgcc -x c -でないの?
0469デフォルトの名無しさん
NGNG0470西安 ◆CYANh33g
NGNG0471デフォルトの名無しさん
NGNGgcc-3.2 based ですなー
2.95 の1.xから乗り換えるべきか...悩む..
0472デフォルトの名無しさん
NGNGhttp://members10.tsukaeru.net/bitwalk/download_mingw.html#mingw
0473デフォルトの名無しさん
NGNG3.2がこれから主に使われていくとか。
0474デフォルトの名無しさん
NGNG0475デフォルトの名無しさん
NGNGShiftJIS 対応 gcc & windres はどこかに無いのでしょうか?
あと、フリーのリソースエディタってどこかにあるでしょうか?
lcc についてるのやら、BCCForm というのやらは見つけたのですが、
ちょっと使いづらくて…
0476デフォルトの名無しさん
NGNG自己レスです。
http://homepage2.nifty.com/tenk/lib/doc/cpp_sj.htm
に Shift-JIS 問題を解決する cpp0.exe のラッパーを見つけました。
試してみたところ、かなり便利です。
0477デフォルトの名無しさん
NGNGgcc及びGNUの提供するソフトによって
同人ソフトをつくり、ミケでの公開は可?
0478デフォルトの名無しさん
NGNG可能だが制約がある。どういう制約か? まずはこれ読む事から始められよ。
http://www.gnu.org/licenses/gpl-faq.ja.html
スレ違いsage
0479デフォルトの名無しさん
NGNGgccで作ったバイナリだけは例外でGPLは及ばないんでは?
L/GPLライブラリを使えばL/GPLになるが。
0480デフォルトの名無しさん
NGNGそうでなかったら、mozillaとかどーすんの?
0481デフォルトの名無しさん
NGNGソースを含まない限り、GPLは及ばないと書いてあるように思ったから
gccだけが例外というわけではないんじゃないかな、多分。
0482デフォルトの名無しさん
NGNGgcc及びGNUの提供するソフトを使用してクローズドなソフトを
開発してもよい。ただし、その出力にGPLソフトのソース(及び
オブジェクト)コードを含まないこと。
GPLソフトウェアは静的・動的ともにクローズドなソフトにリンクできない。
LGPLソフトウェアは動的リンクなら可能。
printf等が含まれるライブラリglibcはLGPLソフトウェア。
glibcを使用する場合は静的リンクならソフトウェアを
GPLソフトウェアとして公開すること。
さもなければ動的リンクにしなければならない。
でもさらにスタートアップコードやシステムコールの
ライセンスも絡んできますよね。
0483デフォルトの名無しさん
NGNG0484デフォルトの名無しさん
NGNGGoogle使えばたくさん出てきます、自分で調べてください。
0485デフォルトの名無しさん
NGNGgcc の info (Node: Spec Files) 読めば詳細に解説してあるが。
0486デフォルトの名無しさん
NGNGつーか一見して分からんか。
0487デフォルトの名無しさん
NGNG他のブランチ使うほどgccに入れ込んでるひとはやっぱり少ないみたいですね。
0488デフォルトの名無しさん
NGNG0489デフォルトの名無しさん
NGNGですね。currentのソースコード読むだけでもかなり大変なので。。。
0490デフォルトの名無しさん
NGNGいらっしゃいますか?
directx 8.0 はあるんですが directx 8.1 library(.a) が
見つからないんですが…。まだ誰も porting してないのかな?
0491デフォルトの名無しさん
NGNGlib(.a)なら簡単に作れるじゃん
0492490
NGNGよろしければ方法を教えていただけませんか?
Microsoft の directx8.1 ライブラリ (.lib) から
gcc のライブラリ形式 (.a) に変換する方法なのですが…。
reimp で変換してみたのですがうまく動かなくて…。
0493デフォルトの名無しさん
NGNG0494デフォルトの名無しさん
NGNG変換しないで、自分で作れよ
0495490
NGNG0496デフォルトの名無しさん
NGNG目的のDLLと呼び出し規約、名前、序数を一致させた
何もしないダミーのdllを作っれば、互換のライブラリが作れる
0497デフォルトの名無しさん
NGNG最近の binutils 使うと、そのままリンクできると思うが。
0498490
NGNG呼び出し規則以外のものはどうしたらよいでしょうか?
クラス定数群とか C++ オブジェクトとか。
>>497
gcc3.2ですがリンクできないみたいなのですが…
すみません、Microsoft のライブラリ形式がそのままリンクできるのは
どちらの binutils か教えていただけませんか?
g++ -mwindows -Wall -O3 -s -o test.exe test.cpp d3dx8d
.lib d3d8.lib d3dxof.lib ddraw.lib dxguid.lib
そのままリンクとは、こんなことができるということですよね…?
0499デフォルトの名無しさん
NGNG-mms-bitfield は?
他には、C で書いたのを C++ でラップするとか。
0500デフォルトの名無しさん
NGNGC++オブジェクトって?
エキスポートされているのは普通のstdcallのAPIだと思うが。
0501デフォルトの名無しさん
NGNGd3dx8.lib じゃないの?
これは、インポートライブラリじゃないし。
0503490
NGNG>>499
gcc3.2@mingw では invalid option `ms-bitfield' です。
MinGW ではまだサポート外みたいです…。
cygwin などではそのままリンクできるのですか?
もしそうならかなりの優れもの…。すぐにでも乗り換えたいです。
>>500
http://www.bloodshed.net/dev/packages/index.html
こちらの DirectX8 library を参考にしているのですが
Microsoft配布の.libの中をみてみるとMS-C++の C++ メソッドっぽい
シンボルが大量にあるんですよね。これはたぶん lib 側に C++ メソッドも
含まれているわけで。これもなんとか変換したい…というのは
無理っぽいでしょうか。
他にも COM interface やら CLSID,IID 定義等が山盛りで…。
私ごときではかなり手に負えないです。
DLL 側から追いかけて最小限の API 互換にすべきなのかな…。
見た感じ 8.0 から変更になっている COM は D3DMesh インタフェースと
DirectPlay 関係のいくつかが削られているだけのようなので
8.1 に部分的には対応したのですが…うーん。
0505499
NGNG試さずに書きつづけるのも気が引けるけど、
DirectX って、C からでも使えるんじゃなかったっけ?
C++ だと ABI の問題があるんで、一度 C から試してはどうでしょう。
で、リンクできたら、それを使って C++ 向けのラッパクラスを書くと。
0506デフォルトの名無しさん
NGNG% objdump -H
(中略)
objdump: supported targets: pe-i386 pei-i386 elf32-i386 elf32-little elf32-big srec symbolsrec tekhex binary ihex
objdump: supported architectures: i386 x86_64 i8086 x86_64:intel i386:intel
Report bugs to [email protected].
binutils は cygwin でインストールしたヤツです。
0507490
NGNGありがとうございます。試行錯誤していて遅くなりました。
COMインタフェースの部分は手順に従って…何とかリンクできるようになりました。
でも、C から使える部分でも Microsoft のスタティックライブラリに
コードが入っているものがあるので、これがリンクできないので
制限されてしまいます。ライブラリのコードが DLL になっているか
ソースが公開されてれば、エクスポートできるんですが…。戦略なのかも。
いまのところ DX8.1 SDK D3D サンプルの簡単なもの Lighting と Text3D は
コンパイルできるんですが…。スタティックリンクできないので複雑なものは
なんだかダメっぽいです…。
0508490
NGNGあ、どうもありがとうございます。
試してみます。
0509デフォルトの名無しさん
NGNG0510デフォルトの名無しさん
NGNG0511デフォルトの名無しさん
NGNGそうできる状況にあれば大丈夫です.
0512名無しさん@Emacs
NGNG0513デフォルトの名無しさん
NGNG自分の彼女はシェアード・ソースです。つまり見るだけです。
0514あげ
NGNG0515デフォルトの名無しさん
NGNGあ,そうなんですか。ありがとうございます。
早速>>509の彼女探しに行ってきます
0516デフォルトの名無しさん
NGNG>>476 みろ
0517デフォルトの名無しさん
NGNG0518デフォルトの名無しさん
NGNG0519デフォルトの名無しさん
NGNG0520デフォルトの名無しさん
NGNG> tes.cpp:6: warning: `typename myit<Cont>::value_type' is implicitly a typename
> tes.cpp:6: warning: implicit typename is deprecated, please see the
> documentation for details
て文句つけてくるんですがなにがいけないの?implicit typename ってなに?
cygwin + gcc 3.2 20020818 (prerelease) です。
#include <iterator>
template<class Cont>
struct myit : public std::iterator<std::input_iterator_tag, const typename Cont::value_type>
{
value_type v;
myit() {};
};
template<class T>
struct mycont {
typedef T value_type;
mycont() {}
};
myit<mycont<int> > c;
0521デフォルトの名無しさん
NGNGmyit クラスのメンバ変数 v の型が特定できんのでは?
0522520
NGNGtemplate<class T>
struct vt {
typedef T value_type;
};
template<class Cont>
struct myit : public vt<typename Cont::value_type>
{
value_type v;
};
0524デフォルトの名無しさん
NGNGmyit<mycont<int> >::value_type が定義されてない。
0525520
NGNGでも下はOKなんですよ。
struct int_type {
typedef int value_type;
};
struct myit : public int_type {
value_type v;
};
0526520
NGNGstruct any_type {
typedef T value_type;
};
//これはOKで
struct myit : public any_type<int> {
value_type v;
};
//こっちはだめ
template<class T>
struct myit2 : public any_type<T> {
value_type v;
};
0527デフォルトの名無しさん
NGNGマザーボードのビープ音鳴らすコード書いて、そこに飛ばしても
実行されない。もしかして、どこまで行ってもリターンアドレスがないのか?
とにかく、まだバッファーオーバーフローが成功できない。
0528527
NGNG部屋の空気を入れ替えたら難なくできました。
0529デフォルトの名無しさん
NGNG板違いですがすいません
0530デフォルトの名無しさん
NGNG駄目じゃないです
0531デフォルトの名無しさん
NGNG> 板違いですがすいません
ってわかってるんなら、適切な板で聞きなよ。
まあ、make 使うのはプログラマが一番多いから、板違いとまでは言えない
と思う。
とりあえず、 make makes many problems
http://pc3.2ch.net/test/read.cgi/tech/1029599472/l50 あたりで
聞いてみれば ?
0532デフォルトの名無しさん
NGNGany_type<T>::value_type が型かどうかわからないから。
ひょっとしたら、後で
template<> class any_type<int> {
int value_type;
};
とか特殊化をされるかもしれないし。
0533デフォルトの名無しさん
NGNGT が未確定の時点では識別子 value_type の存在を認識できないので、value_type が型名であることを明示するために
typename value_type v;
とか書かないといけないんじゃないすか?
0534デフォルトの名無しさん
NGNGこういう書き方はない。
typename T::value_type v;
のように限定子が必要。ただ今回の場合は、
typename any_type<T>::value_type v;
だけどね。
0535520
NGNG//これでOK
template<class T>
struct myit2 : public any_type<T> {
typename any_type<T>::value_type v;
};
0537520
NGNGたとえば
value_type &operator*();
じゃなく
T &operator*();
と宣言するのが正しいのかな?
0538保
NGNG0539デフォルトの名無しさん
NGNG-arch=i686 としたバイナリは、AMD のどの CPU から動くんでしょうか?
0540デフォルトの名無しさん
NGNGDURON,ATHLONから間違いなく動く。手元で確認。
K6-2,3もたぶん大丈夫だったはず。手元に無いので味覚人。
0541539
NGNG情報サンクスコです。
ところで、もうすぐ K6-2 を触れそうなんですが、
どんなソースを使って確認したほうが良いんでしょうか?
今動いたとしても、変更後には当分確認できそうに無いので。
# -march=i686 ダッタ
0542デフォルトの名無しさん
NGNG例外を捕まえてコードエミュレートするでしょ
0543デフォルトの名無しさん
NGNGCMOV インストラクションとかも実装されてたっけ?
>>541
そりゃ
1. gcc のソースを読んで、使っているインストラクションを確認。
2. AMD からプロセッサの仕様書を入手して、実装されている命令を確認。
だろう。PentiumPro で新規追加された命令に関しては Intel が Web で配ってる
Intel Architecture Software Developer's Manual Vol.1 に書いてあるから、それ
を参考に。
0545デフォルトの名無しさん
NGNG参考になれば。
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=161700&repeatmerged=yes
0547デフォルトの名無しさん
NGNGgccはcc1がアセンブラを出力してasでコンパイルしますよね、
ということはgccにかぎってはインラインアセンブラを使っても
最適化には意味がないんでしょうか?
0548デフォルトの名無しさん
NGNG??よく意味がわからんが・・・・・・
インラインアセンブルしたらそのままの形で出力されるだろ。
当然最適化したかったら手で行わないと。
0549デフォルトの名無しさん
NGNGCやasmのソースコードがどうバイナリに変換されて実行されるかを勉強しませう。
0550デフォルトの名無しさん
NGNG最適化しやすい、というより、自由度が高い(プロテクトやセグメント、フラット
どうこうが絡んでいたらそれほど実感はできんが)
Cでは使えない機能を使う事が出来る。(CPU固有の命令やレジスタとかとか)
自由度が高いから、最適化しようと思えばCよりも最適化できる。
しかし、下手な最適化はむしろ逆効果。最近のはかなりややこしい。
最近のCPUはどれに合わせて最適化すれば良いのかさえ不明。
速度を稼ぐ意味もそれほど有るとも思えない。
自分が欲しい機能は既に誰かがライブラリ化しているかもしれない。
というわけであんまり触る必要はないだろう。それなりには楽しめるが。
勿論、CやC++やdel辺りがどのように実現されているかを学びたいのな
らその必要はあるかもしれん。
0551デフォルトの名無しさん
NGNG0552デフォルトの名無しさん
NGNGなにがどうすごいのか50文字ジャストでまとめろ
0553デフォルトの名無しさん
NGNG0554デフォルトの名無しさん
NGNG>
> Introduction
> ============
> You receive this message because you are subscribed to the MinGW
A time bomb waiting in the crontab for the first day of the month. It
should be fixed now.
Earnie.
0555デフォルトの名無しさん
NGNGにあるサンプルプログラムをコンパイルしたところ、
./example.c: 4: magick/api.h ???????????????????
というメッセージが出てコンパイルできません。
たぶんパスが設定されていないことが原因だとおもうんですが、
どうしたらいいのか教えてください。
api.hのフルパスは
/usr/X11R6/include/magick/api.h
です。
0556デフォルトの名無しさん
NGNG> ./example.c: 4: magick/api.h ???????????????????
> というメッセージが出てコンパイルできません。
その前に
bash: Magick-config: command not found
のようなメッセージはないですか?
0558デフォルトの名無しさん
NGNG入力コマンドは、
$ gcc `Magick-config --cflags --cppflags --ldflags --libs` example.c
で合ってますよね。
$ Magick-config --cflags
の結果はどうなります?
0559555
NGNGgcc example.c
でコンパイルしていました。
gcc `Magick-config --cflags --cppflags --ldflags --libs` example.c
を実行すると、エラーが山のように出てきます。
Magick-config --cflags
の結果は、
-g -02 -m486 -fno-strength-reduce
となります。
0560デフォルトの名無しさん
NGNG> gcc `Magick-config --cflags --cppflags --ldflags --libs` example.c
> を実行すると、エラーが山のように出てきます。
そのエラーを解析して、ソースを書き直していくしかないですね。
> Magick-config --cflags
すまんです。
$ Magick-config --cppflags
の方でした。そっちだと、ヘッダのインクルードパスを指定してくれます。
# エラーとは関係ないと思いますが ;-)
0561555
NGNGライブラリもサンプルプログラムも間違っているはずは
ないと思うんですが……
0562デフォルトの名無しさん
NGNGどうやらネタにマジレスしていたらしい。
欝山車能
0563555
NGNGネタだと思われたなら、申し訳ありません。
0564デフォルトの名無しさん
NGNGそれならLANG=C gccとすれば英語でエラーが出るから、その結果を見るべし。
0565562
NGNG> ぜんぜんネタじゃないんですが。
sage質問だったし、エラーメッセージもないし、
とImageMagicおよびGCCのバージョンも分からんし、
つーことでネタ判定してしまったが、そーじゃないのね。
これ以降すれ違いスマソ。エラーメッセージが
example.c:27: structure has no member named `message'
なら、ImageMagicのバージョンに問題有り。
とりあえず、ソース内の `message' を `reason' に
`qualifier' を `description' に変更してみてね。
詳細は、/usr/X11R6/include/X11/magick/image.h
を見てくれ。エラーメッセージが違えば、晒せ。
0566555
NGNGありがとうございました。バージョンが少し小さかったようです。
Vine2.5についてたのをそのまま使ってたんですが、このさいアップデートしようと
思います。
で、もう一つだけ質問なんですが、この手の画像作成ライブラリで一般的な
のは他にありますか?
0567デフォルトの名無しさん
NGNG0568デフォルトの名無しさん
NGNGあるんでしょうか?ディレクトリのトップは主にライブラリ用の
ディレクトリしかないのでコンパイラ自身はgccだろうという
ことでgcc/下を見てみると、以下のようになっていました。
$ cd gcc
$ find . -type d -maxdepth 1 | xargs du -sH
135MB .
30MB ./ada
41kB ./ch
22MB ./config
5.1MB ./cp
3.3MB ./doc
5.6MB ./f
1.5MB ./fixinc
66kB ./ginclude
345kB ./intl
3.5MB ./java
713kB ./objc
5.5MB ./po
37MB ./testsuite
201kB ./treelang
これのどのどこにあるのでしょうか?
testsuiteはテスト用プログラムだから関係なし。
adaは自身のコンパイラをadaで書かれているんでしょうか?
adb,adsというサフィックスのソースがずらり。
poはコンパイラの多言語版メッセージがずらり。
configはターゲットのマシン,OSに応じた処理をする部分と思われます。
ってことはCはどこで処理されてるの?
gccって謎です。
0569デフォルトの名無しさん
NGNGgccよりあなたの方が謎です。節穴系ですか?
gcc/*.[hc]です。
大まかに言って、
c-*.[ch]がC固有のもの。
他は他言語と共通のもの。
0570デフォルトの名無しさん
NGNGおおぼけ、でした。
c-がCのものだとするとcpp*はプリプロセッサかな。
共通のものと各言語のものが綺麗に分かれてると
思ったのですが、そうでもないんですね…
これを読むのは一苦労ですがメンテしてる人は
さらに凄いというか、なんというか
gcc/gcc/*.{[chy],def}からちょっとづつ読んで逝きたいです。
どうもでした
0571デフォルトの名無しさん
NGNG0572名無しさん@Emacs
NGNG>>571が言うように、ただ漠然と読むのは辛い。
何かプログラミングしているときに、「この標準関数はどう実装しているんだろう」って感じで
少しずつ把握しているソースを増やしていくのが良いと思われ。
0573デフォルトの名無しさん
NGNGそれって、ライブラリのソース見た方が...。
0574名無しさん@Emacs
NGNGglibcでなくてgccね…勘違いしてますた。逝ってきます…(´・ω・`)ショボーン
0575436
NGNG既に一ヶ月以上経過していて今更ではありますが・・・。
やっとですが、解決しました。 本当に有難う御座いました。
"-lwinmm" って、何のスイッチだろう・・・とかって調べていて、
-l を度忘れしておりました。
確かに、付けないとリンク出来る訳ないですよね。
0576デフォルトの名無しさん
NGNGhttp://members10.tsukaeru.net/bitwalk/download_mingw.html#mingw
0577デフォルトの名無しさん
NGNGK6(/2/3)では大抵動かないですです。
P55C互換cpuなので、P6命令(CMOVとか)で止まるのだと推測してます。
0578デフォルトの名無しさん
NGNG0579デフォルトの名無しさん
NGNG0580デフォルトの名無しさん
NGNGあの複雑怪奇なstandard C++への準拠度が素晴らしく素晴らしいのはどういった
理由からなんでしょう?
0581デフォルトの名無しさん
NGNGそりゃ、ユーザー数も開発者数も圧倒的に多いからだろ。
0582デフォルトの名無しさん
NGNG0583デフォルトの名無しさん
NGNGなぜあんなにもいい加減なのでしょう?
0584デフォルトの名無しさん
NGNG0585デフォルトの名無しさん
NGNG標準に準拠するよりも、最適化に掛けるコストを大きくした方がよく売れる
からじゃない?
0586デフォルトの名無しさん
NGNG開発者数なんて少ないです。
それにユーザー数なんてVC++の方が
何倍もいます。
0587デフォルトの名無しさん
NGNGまあそうだろうね。gccは一種の桃源郷のようなものかも。
0588580
NGNG同じく、あまり多くなさそうだというのが僕の印象。
ユーザ数も、gccなら組み込み関係でもベースにされてたりするけど、
g++はそうでもなさそうだし。
0589デフォルトの名無しさん
NGNG標準に準拠する能力が無いから
最適化だのは準拠率が改善しない弱点を
ユーザを洗脳して逸らしているだけ
0590デフォルトの名無しさん
NGNG必ずしもC++の仕様に準拠することがベストではないから。
市場を独占してしまえばソースの可搬性なんて意味のないものだし。
0591デフォルトの名無しさん
NGNGユーザー数はさすがにgccでしょう。
カーネル再コンパイルするだけで使うわけだから。
あ、でもg++だとどうなのかな。
0592デフォルトの名無しさん
NGNG0593デフォルトの名無しさん
NGNG糞というよりなんとかしてもらいたいというところでは?
VC++がなきゃ飯食えない人も多いんだし、好きだ嫌いだなんて
いってる場合ではないでしょ。
0594デフォルトの名無しさん
NGNG標準テンプレートライブラリもコンパイルできない糞VCのことを
言ってるならベストどうのよりもまずコンパイルが通るようにしろよ
0595デフォルトの名無しさん
NGNG0596デフォルトの名無しさん
NGNG0597デフォルトの名無しさん
NGNGところにあるからなぁ。MFCとか。
それを信奉する者なら、例えばSTLのアルゴリズムがコンパイラのせいでまともにつか
えなくとも関係ないだろうね。
#俺? 断固VC粉砕熱望。
0598デフォルトの名無しさん
NGNGが、このリスト中に元のプログラムの行をコメントとして付け加えること
はできますでしょうか?
0599デフォルトの名無しさん
NGNG出来ないと思う
0600デフォルトの名無しさん
NGNG0601580
NGNGを見ろ莫迦ども。
http://ton.2ch.net/test/read.cgi/gline/1028811653/
0602デフォルトの名無しさん
NGNGありがとう
0603デフォルトの名無しさん
NGNG0604デフォルトの名無しさん
NGNG0605デフォルトの名無しさん
NGNG元のソースを付け加えるのに何の意味があるのか
0606デフォルトの名無しさん
NGNG最適化されたアセンブリ出力を見て、元のソースと見比べて
秘かに自己満足のほほえみを浮かべたい。
0607デフォルトの名無しさん
NGNGやりかたおしえて
0608デフォルトの名無しさん
NGNGそれからスレ違いだよ
0609デフォルトの名無しさん
NGNG.stabnの3番目にソースの行番号が入ってるんで、突き合わせて想像汁。
0610デフォルトの名無しさん
NGNGそれ、>>182のやりかたで代用できないの?
0611デフォルトの名無しさん
NGNGだって、仕様が変ったら、
大勢いる質の低いプログラマがついてこられないじゃない。
g++でも「g++-2.95だと〜なのに〜g++-3だと〜」とあちこちで質問が出ている。
// まあ、仕様が変らない部分で遅れているところも多いけど。
>>585
最適化は優れていませんし、それを売りにもしてないです。
新しいのを出すにあたって、注意しているのは、
・プログラマたちを怒らせないこと、(仕様変更!)
・アップグレードしたくなるような機能を入れること
じゃあないですかね?
0612デフォルトの名無しさん
NGNGそうでもしない限り、ANSI対応する方向に向かうとは思えないんだけど・・・
それとももしかしてサードパーティーとの差別化戦略で社内じゃ別の
素敵なコンパイラを使ってるとか??何にしてももう少しなんとかなって
もらわないと困るべよ。
0613デフォルトの名無しさん
NGNGANSI対応することによって、未定義部分の動作が変ったら、大騒ぎだべさ。
「コンパイルできなくなった〜! バグだ〜!」って騒ぎだすべさ。
0614デフォルトの名無しさん
NGNG言語仕様をくまなく見てプログラムってるヤシは少ないだろうし。
0615デフォルトの名無しさん
NGNG0616デフォルトの名無しさん
NGNG0617デフォルトの名無しさん
NGNG最強っぽい
0618デフォルトの名無しさん
NGNG0619デフォルトの名無しさん
NGNG0620デフォルトの名無しさん
NGNG0621デフォルトの名無しさん
NGNG0622デフォルトの名無しさん
NGNG0623デフォルトの名無しさん
NGNGついにGNUもプライドを捨てたのか・・・
0624623
NGNGついにワタスにも春がcome meなのね。
0625デフォルトの名無しさん
NGNG0626デフォルトの名無しさん
NGNGGNUが極端なアンチMSになってはいけない。
0627デフォルトの名無しさん
NGNG0628デフォルトの名無しさん
NGNGただgcjを使っているという話をあまり聞かないし
どうなんでしょう?
0629デフォルトの名無しさん
NGNG0630名無しさん@Emacs
NGNG0631デフォルトの名無しさん
NGNGlibstdc++があたらしくなっていて、ヘッダファイル名の .h がきちんととれたり
したのがイイね。あとは XXX_iterator も完備された。std:: を書かないとコンパイル
エラーになるようになった。typename キーワードを書くべきところでを書かないと
警告されるようになった。このあたりか?
最後のは慣れない人には(俺とか)わかりにくいのでウレスイかどうかは微妙。
0632名無しさん@Emacs
NGNG素早いレス、さんくす。しょっぱい STL にウンザリしてたところだから、
インストールしてみるよ。
0634デフォルトの名無しさん
NGNG使ってみてもいいかもしれない。
0635デフォルトの名無しさん
NGNG3.2との、目に付きやすい差異があればキボンヌ
0636デフォルトの名無しさん
NGNGウム。
standard compliant && clean なコードを書きたい人向けのlintとしてはかなり使えると思う。
0637デフォルトの名無しさん
NGNGhttp://gcc.gnu.org/gcc-3.2/changes.html
http://gcc.gnu.org/gcc-3.3/changes.html
これらを見るとDFASchedulerが入ったことかなあ。
といってもそれ、よく分らないんだけどね(汗
0638デフォルトの名無しさん
NGNGgcc version 3.2 20020818 (prerelease)
なんだけど下のコードを
g++ -c -O2
すると、g++が落ちて「レポートしる!」って出るんだけど、どうだろう。
#include <vector>
using namespace std;
typedef int TT;//任意
void make_LR_item() {
struct inner {
static int go_to() {
struct innerinner {
static int byvec() {
vector<vector<TT>*> succ;
vector<TT>::iterator i, e;
for (int i=0; i<succ.size(); ++i) {
if (succ[i] == 0) continue;
}
return 0;
}
};
return innerinner::byvec();
}
};
inner::go_to();
return ;
}
0639デフォルトの名無しさん
NGNGgcc version 3.2 20020903 (Red Hat Linux 8.0 3.2-7)
では通りますYO.
ちなみに書き込むときにインデントいれるのどうやってるの?
上のって全角スペースじゃないよねえ?
0640639
NGNG0641デフォルトの名無しさん
NGNGレポートしる!
0642デフォルトの名無しさん
NGNGどうだろう?って何が知りたいの?
0643デフォルトの名無しさん
NGNG「がいしゅつ」って言葉を使うのがいやだったので…
0644デフォルトの名無しさん
NGNG0645デフォルトの名無しさん
NGNGトコロントチャリピカァ!
0646デフォルトの名無しさん
NGNG「既出」という言葉を知らんのかバーカ
0647デフォルトの名無しさん
NGNGいや、知ってても全くもってエラくもなんともないんだが。
0648デフォルトの名無しさん
NGNG0649デフォルトの名無しさん
NGNG0650デフォルトの名無しさん
NGNG0651デフォルトの名無しさん
NGNGどうしたらいいですか?
0652デフォルトの名無しさん
NGNGって、C言語か?
0653デフォルトの名無しさん
NGNG0654デフォルトの名無しさん
NGNG-Wall でコンパイルし直せ
0655646
NGNGということで馬鹿は日本語を知らない643。
スレ違いスマソ。
0656デフォルトの名無しさん
NGNG相手のせいにするのはプログラマーとしてまちがっとる!
エラーをコンパイラやOS、他人のせいにするタイプだろ>>646
スレチガイニテサゲ。
0657デフォルトの名無しさん
NGNG0658デフォルトの名無しさん
NGNG以下のコードが3.2では通りません。
std::vector<var*> container;
std::vector<var*>::pointer func(void) { return container.begin(); }
vectorのpointerとiteratorは同じように扱えると思ってたのが間違いなんでしょうか。
0659デフォルトの名無しさん
NGNGiteratorはデフォルトのアロケータを持っているから、ポインタに変換すると
エラーが出るのでは?
0660デフォルトの名無しさん
NGNGうん間違い。先頭要素をさすポインタがほしければ、
&container[0] をかえす。
0661デフォルトの名無しさん
NGNGそしたら std::vector<int*>::pointerとint**の間には違いがないと見て
いいのでしょうか?
0662658
NGNG両方ともstl_vector.hの中で
typedef value_type* pointer;
typedef value_type* iterator;
と定義されていたので同じように使えると思ってました。
にもかかわらず
stl::vector<var*>::pointer i;
stl::vector<const var*>::const_pointer j;
j=i; // これはOK
stl::vector<var*>::iterator i;
stl::vector<const var*>::const_iterator j;
j=i; // これはNG
というのが気になったもので。
# 2.95ではどちらも通るんですよね。
0663デフォルトの名無しさん
NGNGどこのファイル見てる?
/usr/include/c++/3.2/bits/
の下のファイル見てる?
0664658
NGNG違うところ(usr/include/g++/)見てました。3.2だとパスが違うんですね・・・。
確かに/usr/include/c++/3.2/bits/stl_vector.hではiteratorは
アロケータ込みで定義されてます。ありがとうございました。お恥ずかしい限り。
0665デフォルトの名無しさん
NGNG厳密に言えば std::vector<T>::pointer は T* でなくても
スマートポインタのようなものでも OK。
つまり、operator* と operator-> が定義されていて T* と同じように
振る舞えばよいということだね。
0667デフォルトの名無しさん
NGNG本にはそう書いてあったんだが、規格書を見たらそういう記述は
見あたらなかった。標準ではないかもしれんね。
0668デフォルトの名無しさん
NGNGgtkを使おうと思って#include <gtk/gtk.h> と書いたのですが、gtk/gtk.h
はない、というメッセージが出てエラーになります。
で、#include </gtk/gtk.h>とすると一応gtkディレクトリにあるgtk.hを
読みにいくのですが、gtk.h内のinclude文も #include <gtk/~~.h> と書かれて
いるため全てのincludeがエラーになります。(でも#include <stdio.h>は通り
ます。相対パスを指定するとエラーになります)
gccをバージョンアップしたりしましたが同じ結果でした。
どうなっているのでしょうか?設定がよく分からないので助けてください。
0669デフォルトの名無しさん
NGNG0670デフォルトの名無しさん
NGNG0671668
NGNGありがとうございます。指定してみたらできました。
しかし始めからgtkやglibのインストールがおかしかったみたいで
、煮詰まって来て疲れました。もう一度再インストールしてみます。
0672デフォルトの名無しさん
NGNG0673デフォルトの名無しさん
NGNGブーストスッドレより。どうなんこれ?
0674デフォルトの名無しさん
NGNGよく読んでないんだけど
Doxygenみたいなもんでしょ?
違うの?
0675デフォルトの名無しさん
NGNG0676デフォルトの名無しさん
NGNG0677デフォルトの名無しさん
NGNG説明も何も、概要ちゃんと書いてるべさ。あ、もしかして……
0678デフォルトの名無しさん
NGNG> The purpose of the GCC-XML extension is to generate an XML description
> of a C++ program from GCC's internal representation
C++ のソースコードを parse して、gcc の内部表現に対応する XML コードを
生成すると書いてあるが。
0679デフォルトの名無しさん
NGNG見た目は普通のソースだけど裏ではXMLになってるとか。
0680デフォルトの名無しさん
NGNG0681デフォルトの名無しさん
NGNGRTL木だと思う。
何に使うのか謎だが。
0682デフォルトの名無しさん
NGNGコードを実行せずに抽出する方法orツールはありますか? アドレスは適当な
ベースからのオフセットで可。
0683デフォルトの名無しさん
NGNG0684デフォルトの名無しさん
NGNG古レスすまんが、
「ゴルフ・チャーリー・チャーリー」ではないのか?
0687デフォルトの名無しさん
NGNGひとつの.oが多くの機能をもつライブラリをstaticにリンクした時に、使わな
いものまで入ってしまうので、これをみつけたいのです。
本当は削除したいのですが、それは手動でなんとか....
0688デフォルトの名無しさん
NGNG0689デフォルトの名無しさん
NGNG最適化 (-O4以上) で消えないか?
0690689
NGNG0691デフォルトの名無しさん
NGNG関数単位に分割してライブラリにするってのが常套手段、っつーかそのための
ライブラリだが、それはしたくないわけ?
0692デフォルトの名無しさん
NGNGうん、それが正しい。が、今あるものを分割するのが、大変なので、自動化で
きる方法ご存じないかしら、とおもって。
defineとコンフィギュレータ(構成変更のツールなの)が曲者。が、ここは、分
割を自動化する方法を考えてみますかね。ありがとう。
0693デフォルトの名無しさん
NGNG0694-W,l名無し
NGNGar xして*.aも*.oにして、
nmしてT,U,D,Cをpickupして、
U→T,C→Dという連鎖で依存関係のgraphを作成して、(nodeは.o)
自前の*.oから到達可能なnodeだけpick upすればよい。
GTL(Graph Template Library)その他グラフ系ツールを使えば
あっと言う間じゃないかな。
0695デフォルトの名無しさん
NGNGvtableを変更するか、意図しない結果か、何かしたいか、のどれかでしょう。
0696
NGNGgdbと通信するモニタープログラムがターゲット上に必要になるかと思いますが、
どうやって対応させるのでしょうか。なにか参考になるHPとかあったら教えて欲しいです。
0697デフォルトの名無しさん
NGNGとりあえず gdb の info
http://www.asahi-net.or.jp/~wg5k-ickw/html/online/gdb-4.18/gdb_14.html#SEC106
0698デフォルトの名無しさん
NGNG・eCosを動かす。
・infoにstubの仕様が書いてあるので、がんばって作る。
0699デフォルトの名無しさん
NGNGターゲットは何?
物によっては、メーカーのモニタを使えるぞ。
0700696
NGNGresありがとうございます。
本日からちょっとやってみます。eCosは自分の力では無理っぽいです。
>>699
業務関係上具体的にはお話できません。パチンコ向けのわけのわからんCPUですが。
オリジナルのモニタープログラムにデバック機能も組み込みたかったので。
0701デフォルトの名無しさん
NGNGおおーそれナイス。
0702デフォルトの名無しさん
NGNGキャッチされない例外があると、即segmentation fault出てcore dumpするの
何とかなら無いすかね?
try {
...
} catch (*) { // ワイルドカード(藁
}
とか出来れば、それでもいいけど。
デバッグ超大変なんですけど…
0703デフォルトの名無しさん
NGNGcatch (...)
0704デフォルトの名無しさん
NGNG0705デフォルトの名無しさん
NGNGおまえ、それはバグを潜在化させるだけじゃないかと、
0706702
NGNGお前らありがとうございました…
しかしsegmentation faultは勘弁して欲しい。
javaみたいにどこからどんな例外が投げられて、
そしてキャッチされませんでした、とか言ってくれるのが
ベストだろうけど。
0707デフォルトの名無しさん
NGNG0708デフォルトの名無しさん
NGNG1. モニタにgdb-stub の機能をいれる
2. gdbのほうで、モニタのコマンドにあわせる
の二つの方法がありまする。
1はinfoみればあったはず。2はgdbのソースの remote-xxx.c をみるよろし。
モニタを自分で触れるターゲットなら1のほうがおすすめ。
0709デフォルトの名無しさん
NGNG0710デフォルトの名無しさん
NGNG0711デフォルトの名無しさん
NGNGsegmentation faultが来るなら、例外をキャッチし損ねているんじゃ
なくて、単にメモリ壊したりNULL pointer dereferenceしたりしているだけ。
terminate()ならSIGSEGVじゃなくSIGABRTが来ないとおかしい。
0712デフォルトの名無しさん
NGNGmakeを実行したとき、コンパイルが正常に終了したなら、できたファイルを実行して、
エラーがあったときは実行しないようにしたいのですが、
そういう時はmakefileになんて書けばいいんでしょうか?
教えてください。
0713デフォルトの名無しさん
NGNG0714712
NGNGしかもcoreを吐いた時は勝手に削除してくれます。
0715デフォルトの名無しさん
NGNG(最適化機能付のプロフェッショナル版が高くて買えないので)
C++での内部シンボル名の規則が違ったり、いろいろ不具合あって出来ないとかでしたっけ?
0716デフォルトの名無しさん
NGNG昔DirectXのサンプルをBolandC++でもコンパイル出来るようにしたことがあったが・・・。
#pragmaあたりでwarningでまくったりしてかなり苦労したけどな。
Borandでもそのままじゃームリだったので、gccじゃなおさらじゃない?
0717デフォルトの名無しさん
NGNG特にGUIアプリに互換性は無いに等しいです。
これはC++の宿命です。C++がクソなのです。
0718デフォルトの名無しさん
NGNGcygwin入れるしか無いでしょうか?
0719デフォルトの名無しさん
NGNGMinGW・・・・・
http://members10.tsukaeru.net/bitwalk/download_mingw.html#mingw
0720718
NGNGありがとうございます。
そのリンク先のは
http://prdownloads.sourceforge.net/mingw/MinGW-2.0.0-3.exe
と何か違うのでしょうか?
0721デフォルトの名無しさん
NGNGいくつかのユーティリティが付加されている。そのため、サイズがかなり大きい。
多分どちらでもいいと思うけど、Bitwalkのリビルド版を使っている人は多い
と思う。
0722718
NGNGありがとうございます。
インストールしました。
で、度々すいません、
windowsアプリ(WinMainを使う)をコンパイルしたいんですが、
試しに七行スレのラスタスクロールをコンパイルすると、
gcc -O2 raster.cpp -lgdi32
c:\windows\TEMP/ccaHn6fb.o(.eh_frame+0x11):raster.cpp: undefined reference to `__
gxx_personality_v0
というリンカのエラーが出るんですが、
gccの引数に何を足せば良いんでしょうか?
(最初BitBltでもエラーになったが-lgdi32を追加したので出なくなった)
0723デフォルトの名無しさん
NGNGフルパスでいれたらどうなりますか?
-l"c:\windows\gdi32" とか。
0724デフォルトの名無しさん
NGNG0725718
NGNGいや、gdi32の方は-lgdi32で解決済みだと思います。
多分>>722のエラーはスタートアップだと思うんですが
参考までに-lgdi32を省いたときのエラー出力です。
>gcc -O2 rast0.cpp
c:\windows\TEMP/ccaHn6fb.o(.text+0x198):raster.cpp: undefined reference to `BitBl
t@36'
c:\windows\TEMP/ccaHn6fb.o(.eh_frame+0x11):raster.cpp: undefined reference to `__
gxx_personality_v0'
0726718
NGNGなんとかすればいいのはわかるんですが、何なんでしょうねこれ。
↓gccに掛けてるraster.cppのソースです。
#include <windows.h>
#include <math.h>
int a=GetSystemMetrics(0),b=GetSystemMetrics(1),n,f,o=SRCCOPY,s;MSG m;HINSTANCE
i;main(){ HWND g;HDC d; i=GetModuleHandle(0);
WNDCLASS w={67,DefWindowProc,0,0,i,0,0,0,0,"R"};
RegisterClass(&w);g=CreateWindow("R",0,9<<28,0,0,a,b,0,0,i,0);d=GetDC(
g);while(IsWindow(g)){if(PeekMessage(&m,0,0,0,1))DispatchMessage(&m);else{for(n
=0;n<b;n++)BitBlt(d, s=sin((f+n+1)/40.0)*60,n,a,1,d,s,n,o);f++;}}return 0;}
0727デフォルトの名無しさん
NGNGこれで通りましたよ。
g++.exe "C:\MinGW\Learn\raster.cpp" -o "C:\MinGW\Learn\raster.exe" -Wall -mwindows -O3 -s -I"C:\MinGW\include" -I"C:\MinGW\include\c++" -I"C:\MinGW\include" -L"C:\MinGW\lib"
0728718
NGNG-mwindowsを付けても変わりませんでした。
0729718
NGNGc++のライブラリの問題の様です。困った・・
>gcc -O2 rast0.c -lgdi32
a
↓直したソース
#include <windows.h>
#include <math.h>
int a,b,n,f,o=SRCCOPY,s;MSG m;HINSTANCE i;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpszCmdLine,int nCmdShow) {
/*int main(){*/
HWND g;HDC d;
WNDCLASS w={67,0,0,0,i,0,0,0,0,"R"};
a=GetSystemMetrics(0);
b=GetSystemMetrics(1);
i=GetModuleHandle(0);
w.lpfnWndProc = DefWindowProc;
RegisterClass(&w);g=CreateWindow("R",0,9<<28,0,0,a,b,0,0,i,0);d=GetDC(
g);while(IsWindow(g)){if(PeekMessage(&m,0,0,0,1))DispatchMessage(&m);else{for(n
=0;n<b;n++)BitBlt(d, s=sin((f+n+1)/40.0)*60,n,a,1,d,s,n,o);f++;}}return 0;}
0730718
NGNGあ、見落としていました。
g++ですか。
0731デフォルトの名無しさん
NGNGc++でもそのまま通りますが・・・・・
0732718
NGNG無事実行ファイルが出来あがりました。
0733デフォルトの名無しさん
NGNG__asm__のオペランド記述の後ろに"=r"とか,"r"(tmp)
みたいなのが付いてる時がありますが、これは何なんでしょうか?
r以外にもSとかありました。
↓みたいなやつです。
__asm__ volatile ("call %0\n"
:"=r" (tmp) );
__asm__ volatile ("movl %%eax,%0\n"
:
:"r" (tmp) );
0734733
NGNG0735デフォルトの名無しさん
NGNGそうか? MFC みたいなライブラリや、Unicode, SJIS, それと #pragma が絡む
と話は別だが Win32 API だけ使う分には gcc でも問題ないぞ。特に gcc だと
bcc と違って MS の提供するスタティックリンクライブラリもリンクできるし。
>730
gcc はファイルの拡張子によってコンパイル、リンク時の動作が変わるんだが、
標準だと *.cpp は C++ だと認識してくれない。gcc で C++ のソースコードを
書くときには、
1. ソースの拡張子を *.cc など、gcc が C++ ソースと認識するものに変更。
2. gcc ではなく g++ を使う。
3. gcc にコマンドラインオプション -x c++ を指定する
のどれかで対処して下さい。個人的には 2 を使うことが多いです。
0736デフォルトの名無しさん
NGNGmingwマンセー、と言っておく。
ところで、インラインアセンブラをAT&Tやめてインテル形式で記述できる
パッチ無い?NASMとか使いたいんだけど。
0737デフォルトの名無しさん
NGNGgccの拡張記述で、「戻らない関数」をコンパイラに教えて
コードを最適化する、関数修飾子ってなかったっけ。
今日別のプログラマと話してて、どうしても思い出せなかったっす。
知ってる人教えて〜
0738デフォルトの名無しさん
NGNG0739737
NGNGお、そんなのもあるのか。さんきゅう
でも、volatile と同様に、
hogehoge void quit()
みたいに関数の「前」につけるのなかったっけ・・・?
0740デフォルトの名無しさん
NGNGextern void exit (int __status) __THROW __attribute__ ((__noreturn__));
0742デフォルトの名無しさん
NGNG0743デフォルトの名無しさん
NGNGvoid f(){throw 0;}
これをコンパイルして、外部参照してるアンダースコアつきの
シンボルにブレークポイントを仕掛ける。
・・・ってな感じでいけるんじゃないかと思った。
0744デフォルトの名無しさん
NGNGもっとマシなIDEを使う。
0745デフォルトの名無しさん
NGNG_f に?
_throw ?
0746デフォルトの名無しさん
NGNGつーかそれが volatile だよ。
volatile void foobar(); で帰ってこない関数 foobar() になる。
gcc2.5 から attribute noreturn が出来たのでそっちを使うようになった。
(volatileも使えるけど)
0749デフォルトの名無しさん
NGNG←速い
VC6(-O2)>>>mingw(gcc3.2 -O2)>>>bcc5.5(-O2)
いつもこの3つで通るプログラム書いてますが、
だいたいこんな感じです。
「このコードはこんだけ差が出る」っての出せる人いませんか?
0750デフォルトの名無しさん
NGNGそもそもの話cc1はともかくg++はclに比べて糞重いだろうが、
gccはアセンブラを吐いてas.ldでコンパイルするっていう手順くんでるので
理屈からいっても無駄がでてくる。
0751デフォルトの名無しさん
NGNG0752デフォルトの名無しさん
NGNGコンパイル時間の話なのか、生成されるコードの話なのか…
0753749
NGNGコンパイル速度で言ったらgcc最下位でしょ。
0754デフォルトの名無しさん
NGNG同意。それがあれば最高なのに、、、
0755デフォルトの名無しさん
NGNG0756デフォルトの名無しさん
NGNG0757デフォルトの名無しさん
NGNGGNU びぬてぃるすの蜜柑…
0758デフォルトの名無しさん
NGNG?
0759デフォルトの名無しさん
NGNGgccでpthread.hを使おうとしたところ、そんなファイルは無いと言われます。
unixのようなマルチスレッドのプログラムは作れないのでしょうか・・・(;´Д`)
また、パスをきちんと通しているのですが、
gccでコンパイルしようとすると、
stdio.hが見つからない・・・といった類のエラーが出ます。
仕方がないので、gcc.exeが置いてあるディレクトリにファイルを置いて
コンパイルしている現状です・・・
何が悪いのか全然分からないので、
どうか助けてください。よろしくお願いいたします。
0760デフォルトの名無しさん
NGNG> cygwin-b20 fullをインスコしたのですが、(無論、windowsです)
どっからそんな化石を発掘して来た。
0761デフォルトの名無しさん
NGNGgccのパスが通ってないだけだと思うけど、
cygwinの質問ならunix板の方がいいよ。
ちなみにb20ってすごく古いよ。
0762759
NGNGcygwin gccでググッて、
http://www.palmos-japan.com/dev/tools/gcc/
のページから落としたのですが・・・
最新版の所在は分かりますか・・・?(;´Д`)
0765デフォルトの名無しさん
NGNGちゃんとレポートしましょう。
0766デフォルトの名無しさん
NGNG2.95.3ですまそ。これ通らないといけないと思ったが通らん。
Borland-C++5.6では通る。
class record {
std::string key;
std::string value;
public:
friend bool operator< (const record &l, const record &r);
record(const std::string &k, const std::string &v)
: key(k), value(v) {}
};
bool operator< (const record &l, const record &r)
{ return l.key < r.key; }
s.cc: In function `int main()':
s.cc:6: `class string record::key' is private
s.cc:28: within this context
s.cc:7: `class string record::value' is private
s.cc:28: within this context
0767デフォルトの名無しさん
NGNGmain()がないのでこんなのをくっつけて2.96で試したら問題ないようだけど。
int main()
{
record r1("hoge", "asdfsd"), r2("hage", "dasfdase");
cout << (r1 < r2);
return 0;
}
0768デフォルトの名無しさん
NGNG0769デフォルトの名無しさん
NGNG0770デフォルトの名無しさん
NGNGpublic static void main (String [] args) {
System.out.println ("Hellow world");
}
}
こんなプログラム書いてgcjでコンパイルしたら、
/usr/lib/crt1.o: In function `_start':
/usr/lib/crt1.o(.text+0x18): undefined reference to `main'
collect2: ld はステータス 1 で終了しました
とか言われます。
何がいけないんだ?
0771770
NGNGgcj --main=teste teste.java
ってオプション付ければいいだけだった。
0772デフォルトの名無しさん
NGNGjavaはスレ違い
0773デフォルトの名無しさん
NGNG0774デフォルトの名無しさん
NGNGint main ()
{
std::cout << "あはんはん" << endl;
return 0;
}
文字コードEUCの、このファイルをコンパイルすると、
ahan.cc: function 内の `int main()':
ahan.cc:5: プログラムとして逸脱した文字 '\33'
ahan.cc:5: 構文解析エラー が `(' トークンの前にあります
ahan.cc:5:39: 警告: 複数行文字列リテラルは推奨されません
ahan.cc:5:39: " 文字での終端を欠いています
ahan.cc:5:39: 終端のない文字列リテラルの推定開始位置
とか言われます。
日本語ってどうすりゃいいの?
0775デフォルトの名無しさん
NGNG微妙にワラタ
0776774
NGNGEUCじゃなくてJISになっていやがった。
ついでに std::endl にしないとダメだし。
微妙に鬱
0777デフォルトの名無しさん
NGNGてめeらこそ微妙
0778デフォルトの名無しさん
NGNG0779デフォルトの名無しさん
NGNGゾロ番getおめ
0780デフォルトの名無しさん
NGNG微妙におめでとー。
0781デフォルトの名無しさん
NGNG0782デフォルトの名無しさん
NGNG微妙に微妙なヴァカですね。
0783デフォルトの名無しさん
NGNG0784デフォルトの名無しさん
NGNGtypedef float MATRIX[4][4];
inline void foo(MATRIX& mat) {
asm volatile("ここで mat に書き込む" :: "r"(&mat));
// ここで mat 読み出す
}
こういうコードを書くと、gcc がインラインアセンブラで mat を書き換えたことに気づ
かず、レジスタに残ってる mat[4][4] の要素を再利用することがある。明示的に
mat 書き換えたよ、と宣言したいんだけどどうしたらいい?
いちおう解決方法は見つけたんだが、どっちもイマイチなんで。
1. clobbered registeres に "memory" と書く
これだと mat に限らず、すべてのレジスタをいったん破棄してしまうから、効率が
イマイチ…。
2. inline にしない
これも効率の面から避けたい
0785デフォルトの名無しさん
NGNGマクロにする
0786デフォルトの名無しさん
NGNGとして、
asm volatile("ここで mat に書き込む" :: "r"(&mat));
以降では vmat を使うとどうなる?
0787デフォルトの名無しさん
NGNGmatにvolatileつける…最適化効かないから悲しい事になるか。
やっぱりmemoryをclobberするのが正攻法では?
0788デフォルトの名無しさん
NGNG0789デフォルトの名無しさん
NGNGメモリ領域に出力なんだから "m" constrain を使って
asm volatile("ここで mat に書き出す" : : "=m" (mat));
でどうよ。%0 がアドレスになるからアセンブリはちと変わるかも。
0790デフォルトの名無しさん
NGNGできるみたいですが、Windows版はあるのでしょうか?
また、swingなどのGUIコンポーネントには対応しているのでしょうか?
0791デフォルトの名無しさん
NGNG0793デフォルトの名無しさん
NGNGなんとなーく動く。少なくともhello worldは動いた(w
# もちろんAWTやSwingなんてのは無い
0794784
NGNGvolatile はどれもダメだった。元々の変数を非 volatile で宣言してあると、後で
volatile 参照変数に入れても「元の方は影響受けない」ってことみたい。(それ
だと今回はキツいんで)
>>789
これで対応しました。ただ
0x00(%0) -> %0
0x10(%0) -> 0x10 + %0
とか書くと %0 が %lo(xxxxx)(%fp) みたいに展開された時にアセンブラが文句を
言うので
"=m"(mat[0]), "=m"(mat[1]), "=m"(mat[2]), "=m"(mat[3])
と並べて対応しました。
あと 128bit データ型なら "=&j" で書き出すのもアリみたい。
0795デフォルトの名無しさん
NGNG単独実行ファイルになるのはいいけど、
速度面では Sun JVM と変わらないか遅いくらいじゃない?
0796795
NGNGベンチマークはこれで。
http://www.asahi-net.or.jp/~AN4J-UEHR/homepage.en/jp/.NETplaf/bench.htm
Win2KSP3/AthlonXP1700+。gcc は cygwin 版。
┌──────┬──────┬───┬───┬───┐
│ 実行環境│コンパイラ │最適化│rev40 │fib20 │
├──────┼──────┼───┼───┼───┤
│j2se1.4.1_01│j2se1.4.1_01│ - │ 214│ 1146│
├──────┼──────┼───┼───┼───┤
│j2se1.4.1_01│gcc-3.2-3 │ - │ 217│ 1151│
├──────┼──────┼───┼───┼───┤
│w32 native │gcc-3.2-3 │ - │ 300│ 2010│
├──────┼──────┼───┼───┼───┤
│w32 native │gcc-3.2-3 │ -O │ 199│ 1423│
├──────┼──────┼───┼───┼───┤
│w32 native │gcc-3.2-3 │ -O2 │ 139│ 1091│
└──────┴──────┴───┴───┴───┘
gcj は gas に落としているので最適化が効くみたい。
JIT や Hotspot が有効なプログラムでは JVM の方が速いかも。
0797795
NGNGちなみに生成されるファイルのサイズは以下の通りでちた。
j2se1.4.1_01 class files 105303bytes
gcc-3.2-3 class files 91806bytes
gcc-3.2-3 native exe(-O2) 2204515bytes
upx -9 して 1244515 bytes
0798デフォルトの名無しさん
NGNG0799795
NGNGgcc-3.2-3 native exe(-O2) striped 1436672bytes
upx -9 して 476672bytes
お、1MB 割った。
GUI は AWT/Swing 待つよりも SWT 使うのが良いと思った。
0800鯣@暇暇團No.52 ◆F52DmOxJlc
NGNG0801デフォルトの名無しさん
NGNG0802デフォルトの名無しさん
NGNG0803デフォルトの名無しさん
NGNG何に使われているのでしょうか?
0804デフォルトの名無しさん
NGNG0805デフォルトの名無しさん
NGNG0806805
NGNGお前らの助けを借りずに済んだぜ。ヘヘ
>>806
バーカバーカバーカバーカーバ!!
お前はHTAでもやってろ! プッ
http://www.microsoft.com/japan/msdn/columns/dude/dude070599.asp
0807デフォルトの名無しさん
NGNGどうしたんだよw
0808805
NGNGMinGWを、gcc Developer Station 2000で、使おうと、した。
上手く、ビルド、出来なかっ た。
DS2kを、使うのを、やめた。
やっぱ、グッシッシ使うならDev-C++だねぁー
>>231に感謝。
>>807
うるせーバカッ!!
0809デフォルトの名無しさん
NGNGDev-C++に含まれるg++のバージョンは3.2だから、最新版の3.2.1を使うには
http://www63.tok2.com/home/bitwalk/download.html#mingw
からダウンロードして、上書きしなせえ。
08101001
NGNGハァ?
氏ねや
0811デフォルトの名無しさん
NGNGおまえこそ氏ねよ
0812デフォルトの名無しさん
NGNG0813デフォルトの名無しさん
NGNG0814デフォルトの名無しさん
NGNG0815仕様書無しさん
NGNGと ) | |
Y /ノ 人
/ ) < >__Λ∩
_/し' //. V`∀´)/
(_フ彡 / ←>>814
0816デフォルトの名無しさん
NGNG0817デフォルトの名無しさん
NGNGimpressから出てる 「できる!GCC」 シリーズがおすすめ
今日からはじめてすぐにコンパイル!
Hello,worldから詳しく解説。
0818デフォルトの名無しさん
NGNG0819デフォルトの名無しさん
NGNG聞き方が悪かった。
C言語の解説書じゃなくて、GCCでプログラムするための解説書だ。
オライリー辺りで出てないかなと思った次第だが。
0820名無しさん@xyzzy
NGNGman gcc
もしくは、これじゃだめなのか?
http://www.sra.co.jp/wingnut/gcc/
0821デフォルトの名無しさん
NGNGところで@xyzzyってのは初めて見たかも。
動くのか、、、
0822IP記録実験
NGNGhttp://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0823デフォルトの名無しさん
NGNG文書が古いね
0824デフォルトの名無しさん
NGNG0825デフォルトの名無しさん
NGNG0826デフォルトの名無しさん
NGNG0827デフォルトの名無しさん
NGNG0828デフォルトの名無しさん
NGNG0829デフォルトの名無しさん
NGNG漏れも「今から危険な領域に突入しようと(以下略」みたいなとこまでは
いったんだが…。気になるけど見たくない…。
0830デフォルトの名無しさん
NGNG現状の2ちゃんねるにあっては、名誉毀損かどうかをひろゆきが判断をしなさい。
削除しない場合は、法廷で、「レスの真実性・相当性」をひろゆきが立証しなさい。
と言っているわけ。
0831デフォルトの名無しさん
NGNG現状の2ちゃんねるにあっては、名誉毀損かどうかをひろゆきが判断をしなさい。
削除しない場合は、法廷で、「レスの真実性・相当性」をひろゆきが立証しなさい。
と言っているわけ。
0832デフォルトの名無しさん
NGNG0833デフォルトの名無しさん
NGNG一言で言うと、チミも構ってクンw
0834832
NGNGこれじゃ俺の書き込みの方がウザく思われるな。逝ってきまつ。
0835デフォルトの名無しさん
NGNGヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者
ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者
ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者
ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者ヤブ医者
連呼でも?
常に自分とこの病院が話題にされていると勝手に考えるのは
単に自意識過剰ではないの?
0836デフォルトの名無しさん
NGNG何事にもむかついてたまらないっ!
生理前って、ブルーになったり、いらいらしたり。。。
ほんと勘弁してって感じ。
0837デフォルトの名無しさん
NGNG0838デフォルトの名無しさん
NGNG0839デフォルトの名無しさん
NGNG2ちゃんも、31日23時〜1日正午ごろまで、
全板のcgi止めといたほうがいいんじゃないか……?
「かまわん」というのなら巨大なお世話でスマソ
0840デフォルトの名無しさん
NGNGで結局IP記録に賛成なの?
0841デフォルトの名無しさん
NGNG0842デフォルトの名無しさん
NGNGそれはトマトとかいうものらしい?
設定?してあるwebのアドレスを書き込むとリモホとIPが晒される
随分前からやってるらしい
0843デフォルトの名無しさん
NGNG0844デフォルトの名無しさん
NGNGつか、それで公開仕様のIDを募集したのだな(^_^;)
0845デフォルトの名無しさん
NGNG掲示板の書き込みは文字として残りますよ
0846デフォルトの名無しさん
NGNGこれで困るのはごく一部の愚者と小心で正直な市民だ。
つまり現実世界と同じ。面白いか、そんなの。
0847デフォルトの名無しさん
NGNG0848デフォルトの名無しさん
NGNG「双方向目安箱」だと思うよ。
小泉が一般人の振りして2chで議論
これも匿名だから可能だろ?
実際に小泉がやったか知らないが…
0849デフォルトの名無しさん
NGNGじゃなかったかすら
0850デフォルトの名無しさん
NGNGやめろ。
0851デフォルトの名無しさん
NGNG0852デフォルトの名無しさん
NGNG発信元がわかるんで、告発された側が「よーし金でねじ伏せちゃうぞー」
とか言って裁判でも起こしまくって。
そんな状況はガクブルだから、面白そうな(真実である事が前提の)投稿は、減る?のかな?
考え過ぎ?って言うか見当違い?どうだ?どうなんだ?
0853デフォルトの名無しさん
NGNGIPが記録されるような掲示板は匿名掲示板とはいえませんが、
スレッドが立てられないような掲示板はもはや掲示板ですらありません。
0854デフォルトの名無しさん
NGNGでもね・・・
そ ん な こ と は 一 秒 あ れ ば 思 い 付 く こ と
だと思いませんか?(^_^;)
つまり、今の手法ってのが選ばれたってことから
そのやり方は選択されなかったことは自明かと・・・・。
0855デフォルトの名無しさん
NGNGJanuary 10, 2003
Geoffrey Keating of Apple Computer, Inc., with support from Red Hat, Inc., has contributed a precompiled header
implementation that can dramatically speed up compilation of some projects.
0856デフォルトの名無しさん
NGNG0857デフォルトの名無しさん
NGNG0858デフォルトの名無しさん
NGNG0859デフォルトの名無しさん
NGNG| |[‖★‖] ( ★ )
| |<丶`∀´> <丶・∀・>
| | )::::::::( )::::::::(
\::::::::::::;\ /::::::::::::;\
|:::::::::::: l | //´|:::::::::::: l |
|:::::::::::: | | | | |:::::::::::: | |
/::::::::::::/| | // /::::::::::::/| |
|::::::::::/ U U ..|::::::::::/ | |
|::::||:::| | |∧_∧| | |::::||:::| U
|::::||::| |( ;´Д`)/ |::::||::|
| / | | / | | /.| |
// | | | / // | |
// | | | /| | // | |
// | | // | | // | |
U U U U U U
0861デフォルトの名無しさん
NGNG0862デフォルトの名無しさん
NGNGローカルルールに従った要請は受け付けてるんだから(^_^;)そうすればいいよ
列に並ばないで権利を主張する奴は許されない
0863デフォルトの名無しさん
NGNG0864山崎渉
NGNG0865デフォルトの名無しさん
NGNG0866山崎渉
NGNG0867デフォルトの名無しさん
NGNGMark Mitchell of CodeSourcery has contributed a new,
hand-crafted recursive-descent C++ parser sponsored
by the Los Alamos National Laboratory. The new parser
is more standard conforming and fixes many bugs
(about 100 in our bug database alone) from the old
YACC-derived parser.
これってcp-parser-branchのことだけど、C++マニアの人試してみた?
0868デフォルトの名無しさん
NGNGLinux + gccで、
初めて クラスライブラリを構築する事になったのですが、
参考になる 良い書籍やWebページ等ありましたら教えていただけませんか
0869デフォルトの名無しさん
NGNG主に「何に対して」不安を感じてるんだ? 今まで Visual C++ 使ってて
gcc ははじめてなのか、それとも C++ 自体はじめてなのか。
0870デフォルトの名無しさん
NGNG人生に対してでふ
0871デフォルトの名無しさん
NGNG0872868
NGNGgccも本格的に使用するのは初めて
0873hnhjfcldsa
NGNG儲かる出会い系ビジネス
月収100万円オーバー!!
HP作成できない初心者でも安心して運営
出会いサイトシステムをサーバーごとレンタルします
運営者様には無料で宣伝ソフトもお付けします
http://giko.2ch.net/129/yamada894jp.html
0874デフォルトの名無しさん
NGNGおじさんは君の童貞がどうしても欲しい
0875山崎渉
NGNG0876デフォルトの名無しさん
NGNGというわけでネタなしのから揚げスマソ。
0877デフォルトの名無しさん
NGNG0878デフォルトの名無しさん
NGNG論理ゲートまで合成するツールも出来てきているようですよ.
ところでVerilog vs. VHDLでgoogleと結構感情的な意見の言い合い
のページとかが引っかかって英語圏の人に親近感もったりする。
0879878
NGNG0880デフォルトの名無しさん
NGNGクラスのコンストラクタを非インラインで定義すると、
[not-in-charge]と[in-charge]っていうふうに2つ実体が出てきます。
コードサイズがまるまる2倍になって困ってるんですが、
なんでこんなふうに2つ実体がいるのでしょうか?
0881880
NGNGに載ってた。
でも、なっとくいかんぞーぅ。
0882デフォルトの名無しさん
NGNG0883デフォルトの名無しさん
NGNGhttp://s-nakani.hp.infoseek.co.jp/eota/gcc-eota.html
0884デフォルトの名無しさん
NGNGリンカオプションのようなものはありませんか?
0885デフォルトの名無しさん
NGNGないと思う。
0886884
NGNGやっぱアーカイブに詰めるしかないのか。
0887名無しさん@Meadow
NGNGだけど…gccって何かフラグあるのかなぁ?
# eucなら上手く行くのは解ってる
0888デフォルトの名無しさん
NGNG0889デフォルトの名無しさん
NGNG2.95,3.0,3.1の話になるけど、SJISやEUCを素直に食わせるには、
gccを日本語対応でコンパイルする必要がある。
そこらのコンパイル済みバイナリはもれなく対応してない。
0890名無しさん@Meadow
NGNGそーか…cygwinのgcc使ってるんだけど、compileし直すしか無いのか;_;
0891デフォルトの名無しさん
NGNGなんだ?ここは
0892デフォルトの名無しさん
NGNG(SSE2オプションとかじゃなく)
Northwood買ったのでi686-gccじゃなんか気持ち悪いんで
0893デフォルトの名無しさん
NGNGこれは役に立ちますか?
0894892
NGNGサンクス。
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
CXXFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer"
でいいみたね
0895デフォルトの名無しさん
NGNGあと、 -march=pentium4 はgcc2.x では無い(?)
0896デフォルトの名無しさん
NGNG0897デフォルトの名無しさん
NGNGgccのmanとinfoはあんまり信用できないぞ。経験的に。
source見たらぜんぜん違うことがあった。
0898デフォルトの名無しさん
NGNGソースの中のSJIS文字列を、\225\266\216\232\227\361 みたいに
変換するフィルタを噛ませばよい。
0899デフォルトの名無しさん
NGNG0900デフォルトの名無しさん
NGNG他の言語を使っている中の人など900getしない
0901デフォルトの名無しさん
NGNG何を使ってるの?
0902デフォルトの名無しさん
NGNGgccってpascalもコンパイルできるの!?
初めて知ったよ!
しかし,pascalって今でも使ってる人っているの?
昔DOSの頃にターボパスカルか何かを大学で使ってたので懐かしい.
しかし,pascalは言語的には結構良く出来てると当時は感じたけど
絶滅させるには惜しい言語だな.
そう言えばTexか何かがpascalが何処かに使われてるとかって話を
聞いたことがあった.
0903デフォルトの名無しさん
NGNG0904デフォルトの名無しさん
NGNG昔書いた Java プログラムを gcj に通して遊んだりしてます。
あーちょっと速くなったーとかいって。
0905デフォルトの名無しさん
NGNGDelphiは現役で使われまくってるだろ
厳密には独自拡張したものだが、ターパスのころからunitとかいろいろ拡張されてたし。
BASICって今でも使ってる人っているの? と同じ話
0906デフォルトの名無しさん
NGNG> ターパスのころからunitとかいろいろ拡張されてたし。
俺が使ってたころにはunitはなかった。
0907デフォルトの名無しさん
NGNGデフォではgccには含まれてないや。
gccのフロントエンドっぽい。
>>906
教科書Pascalみたいな実用的なのは、使いたくないでつ。
0908デフォルトの名無しさん
NGNG○実用的でないのは
0909デフォルトの名無しさん
NGNG久しぶりに見てみると、なにやらブランチが倍増しています。
gomp-01-branch
new-regalloc-branch
rtlopt-branch
bnw-simple-branch
condexec-branch
cxx-reflection-branch
cygwin-mingw-v2-branch
fixincl-branch
itanium-sched-branch
meissner-ppc-branch
merged-arm-thumb-backend-branch
new-abi-branch
pchgc-branch
pchmerge-branch
subreg-byte-branch
tree-serialize-branch
x86-64-branch
新しいC++パーザとプリコンパイルヘッダに関するものはメインラインに
統合されたとな。
0910デフォルトの名無しさん
NGNG> cxx-reflection-branch
これ気になるな。
0911デフォルトの名無しさん
NGNG0912デフォルトの名無しさん
NGNG気ままにリフレクションするんだろうな。
日清焼きそばUFOってところか。
0913デフォルトの名無しさん
NGNGメインラインとはどのライン?
latestにはそんなもの入ってないっぽいけど
0914デフォルトの名無しさん
NGNG消したら(名前変えたりしても)エラーが出るようになっちゃうんだけど、
そういうもんなの?
0915デフォルトの名無しさん
NGNGファイル単位だったら、アーカイブして、それリンクすれば普通にはじかれると思うが。
関数単位だったら、コンパイルオプションで -ffunction-secionts -fdata-sections 指定して
関数、データ単位にセクション切らせて、リンカオプションで --gc-sections。
コンパイルドライバ(gcc)コマンドラインからの指定なら
-ffunction-sections -Wl,--gc-sections かな?
0916915
NGNGあ、アーカイブすればいいのはわかってたのか。すまん。
0917デフォルトの名無しさん
NGNGそういうもん
0918デフォルトの名無しさん
NGNGgcc-3_4-basic-improvements-branch
http://gcc.gnu.org/gcc-3.4/changes.html
0919デフォルトの名無しさん
NGNGそしたらなんかmake installが通らないんです。
で、よく見たらなんかエラーが出てて、
./chew.exe -f ../../../bfd/doc/doc.str <../../../bfd/doc/../aoutx.h >aoutx.tmp
make[2]: *** [s-aoutx] Error 128
とか書いてあるんです。
もうね、アホかと。馬鹿かと。
お前らな、-O2 -fomit-frame-pointer如きで普段見つけにくいwrong code出してんじゃねーよ、ボケが。
-O2 -fomit-frame-pointerだよ、-O2 -fomit-frame-pointer。
(中略)
で、やっとgcc 3.2.2コンパイル終わったかと思ったら、またbinutilsで、
./chew.exe -f ../../../bfd/doc/doc.str <../../../bfd/doc/../aoutx.h >aoutx.tmp
make[2]: *** [s-aoutx] Error 128
とか言ってるんです。
そこでまたぶち切れですよ。
(後略)
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=9647
0920デフォルトの名無しさん
NGNG微妙に使いにくいな。
0922デフォルトの名無しさん
NGNG落ちにヤヤウケ
0923デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/tech/1029599472/235-260n
あたりを参考に汁
0924914
NGNGgcc -MM とそのリンク先の関係がまるでつかめない。
リンク先は
「ソースファイルの一覧に変更があったときに自動的にアクションを起こす方法」
みたいだけど、、、
まさか、ヘッダファイルが消えた(名前が変わった)のを検知して、
全オブジェクト作り直しとか?
0925デフォルトの名無しさん
NGNGgcc-3.4を入れてみました。C++のパーサーテストしてますが
なかなかよさげです。ありがとうございました。
0926デフォルトの名無しさん
NGNG速いのっ?
0927デフォルトの名無しさん
NGNG本当ですか!?
0928デフォルトの名無しさん
NGNG> まさか、ヘッダファイルが消えた(名前が変わった)のを検知して、
Makefile(またはincludeされるファイル)を作り直し。
0929914
NGNGヘッダが消えた(名前が変わった)のを検知して、
gcc -MM ソース全部 するの?
そりゃひどい。
で、最新のgccマニュアル見てたら、-MPなんてオプションがついてる。
コレだコレ。
あ、でも使ってるgccには無いみたい。
アァァ
0930デフォルトの名無しさん
NGNG%.d: %.c
$(CC) $(CPPFLAGS) -MMD $<
include $(SRCS:.c=.d)
0931デフォルトの名無しさん
NGNGoptionは何を使えばよいのでしょうか?
please help me.
0932デフォルトの名無しさん
NGNG話はそれからだ。
0933931
NGNGそんなぁ(w
でも解決しました。(-wで
0934デフォルトの名無しさん
NGNG開発ってできますかねぇ?
0935デフォルトの名無しさん
NGNG0936デフォルトの名無しさん
NGNG0937デフォルトの名無しさん
NGNGとりあえずエディタで書いてコマンドでmakeして開発してます。
一般的な開発統合環境みたいな感じでbreakかけたりしながら
デバッグする方法はないのでしょうか
0938デフォルトの名無しさん
NGNG♪gccを知ってても〜 それだけ〜じゃコマリマス〜
gdb
0939934
NGNGQt ってやつを使ってみたいな、と。
エミュレータもあれば便利だろうな、と。
その辺りの必要なツールやらまとめたページってどこかにありませんかねぇ?
# ダウンロード先が現在も生きているページで。
0940デフォルトの名無しさん
NGNG指示を出す方法はありませんか?
0941デフォルトの名無しさん
NGNG0942デフォルトの名無しさん
NGNGlibstdc++.soがリンクされてもよけりゃ。
0943デフォルトの名無しさん
NGNG{
const char c[]="圭";
}
とすると
missing terminating " character
possible start of unterminated string literal
parse error at end of input
とでるのですが、G++のバグ?
0944デフォルトの名無しさん
NGNG"圭\"としる。日本語に対応してないからだね。
0945943
NGNGなるほど!
Thanks.
GCCのUNICODE化がもう少し進んでくれるといいなぁ。
0946デフォルトの名無しさん
NGNG0947デフォルトの名無しさん
NGNG943のエディタが腐ってるだけだろ
何でもGCCのせいにすんな
0948デフォルトの名無しさん
NGNG(゚д゚)ハァ?
0949デフォルトの名無しさん
NGNG全部2バイト文字になるからサイズが大きくなりそうだし。
0950デフォルトの名無しさん
NGNG0951デフォルトの名無しさん
NGNG(cygwinのG++3.2)
メモ帳で保存。
UNICODE
UTF-8
でやったけど、通ったのはANSIで保存して圭\としたときだけだった。
0952デフォルトの名無しさん
NGNG0953デフォルトの名無しさん
NGNG(STL PORTは入れてない状態で)
undefined reference to std::basic_string<wchar_t,std::char_traits<wchar_t>,
std::allocator<wchar_t> >::basic_string[in-charge](whchar_t const*,std::allocator<wchar_t? const&)
...
collect2: ldreturned 1 exit status
と出てファイルが生成されない。
0954デフォルトの名無しさん
NGNG0955デフォルトの名無しさん
NGNGBOMの存在さえしらないんだと思われ
それでUNICODE化がどーのとよく言えたもんだ
0956デフォルトの名無しさん
NGNGすべてこの見えない存在に悩まされ続けていたのだった.
なぜ、L""が通らなかったのか.
すべての原因がここにあった.(完)
>>952-955
Thanx.
0957デフォルトの名無しさん
NGNG0958デフォルトの名無しさん
NGNG不要にLDLIBS長くしなくていいし。
0959デフォルトの名無しさん
NGNGにつくようになる罠
0960デフォルトの名無しさん
NGNGO次郎の唱える呪文
0961デフォルトの名無しさん
NGNGBegin Of …なんだっけ。
マンセー?
0962961
NGNGByte Order … だったね。
0963デフォルトの名無しさん
NGNG0964デフォルトの名無しさん
NGNGByte Order Mark
0965-W,l名無し
NGNGモバイル板に"Linuxザウルス開発スレッド"つーのがあって、そこに情報あり。
http://pc3.2ch.net/mobile/kako/1030/10300/1030091920.html
http://pc3.2ch.net/test/read.cgi/mobile/1041161974/
0966-W,l名無し
NGNG何これ?
0967デフォルトの名無しさん
NGNG0968デフォルトの名無しさん
NGNGオブジェクトファイルが別ならな。
0969デフォルトの名無しさん
NGNGunixについてもう少し勉強しよう。
0970デフォルトの名無しさん
NGNGだっせー実装だな(藁
さすが前時代のコンパイラ
0971デフォルトの名無しさん
NGNG0972デフォルトの名無しさん
NGNGできるのか?
0973デフォルトの名無しさん
NGNG0974デフォルトの名無しさん
NGNGインクリメンタルリンクは、それに近い事やってるんじゃないか?
0975デフォルトの名無しさん
NGNGたしかに、インクリメンタルリンクができれば、関数ごとのリンクもできそう
な気がするな。
0976デフォルトの名無しさん
NGNGついておりません。
0977デフォルトの名無しさん
NGNGgcc3.4ではプリコンパイル済みヘッダ機能が取り込まれる予定。
0978デフォルトの名無しさん
NGNG一個のオブジェクトファイルにまとめてあるんだろう。
Cのライブラリみたいに関数ごとくらいで分ければいいとおもうんだけどなー。
0979デフォルトの名無しさん
NGNG2Mbyte超でちょっと鬱。 しかも変なワーニングも出るし。
0980デフォルトの名無しさん
NGNGコンパイラの仕事ではなくリンカの仕事です。
0981915
NGNG結果的には出来る様になってる。
>>915 参照の事
>>980
コンパイラ&アセンブラが部分的に抽出使用出来ないコードを吐いたら、
リンカだけではどうにもならない。オブジェクトレベルで同一オブジェクト内の別関数、
データの配置参照を解決しちゃうとか。で、gccの動作はまさにそれのはず。
0982デフォルトの名無しさん
NGNGTurbo Pascal/Delphiは十年前からスマートリンクしてたけどな。
0983-W,l名無し
NGNGインクリメンタルリンクって何?
0984デフォルトの名無しさん
NGNGMac OS XだとHelloWorldは7MB超ですた。とほほ…
これってlibgcjとかboehm-gcを静的リンクしてるんでしょうか?
一応configureで--enable-sharedを付けたのですが。
0985デフォルトの名無しさん
NGNG> Also, we don't seem to support shared libraries on
> Darwin - we need to get a newwer version of libtool
> in order for this to work, I think.
http://gcc.gnu.org/ml/java/2002-05/msg00200.html
こりゃ駄目だ… 新しいlibtoolを当たってみます。
0986デフォルトの名無しさん
NGNGccache 使え
0987デフォルトの名無しさん
NGNG無学にしてccacheというものを知らなかったのですが、いま CXX = ccache g++としてみて
その速さにちょっと感動しています。976ではないですが、教えてくれてありがとうございます。
このccacheってなんか副作用とか使っていく上で気をつけたほうがいい点とかありますか?
0988デフォルトの名無しさん
NGNGっていうスレ誰か立ててよ
0989簡素なテンプレ案
NGNGhttp://www.gnu.org/software/gcc/gcc.html
前スレ
GCCについて
http://pc2.2ch.net/test/read.cgi/tech/1007731543/
関連スレ
祝・GCC 3.0リリース
http://pc.2ch.net/test/read.cgi/unix/992942337/
0990デフォルトの名無しさん
NGNGそれでいいんでおながいします。
スレタイトルはあくまで
「GCCについて 2」
という方向で
0991デフォルトの名無しさん
NGNGCC
C C
グシシ
GCC
CC
C C
0992デフォルトの名無しさん
NGNGCC
C
グシシ
GCC
CC
C
0993デフォルトの名無しさん
NGNGC
C
グシシ
GCC
C
C
0994デフォルトの名無しさん
NGNGC
グシシ
GC
C
C
0995デフォルトの名無しさん
NGNGC
グシシ
GC
C
0996デフォルトの名無しさん
NGNGC
グシシ
GC
0997デフォルトの名無しさん
NGNGグシシ
G
0998デフォルトの名無しさん
NGNGグシシ
0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNGGCCについて Part2
ttp://pc2.2ch.net/test/read.cgi/tech/1007731543/
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。