GCCについて part7
..
243:デフォルトの名無しさん
06/07/24 00:30:00
まさか-fshort-wcharでlibstdc++ビルドするのか?
勘弁してくれよ・・・
はぁ・・・
244:デフォルトの名無しさん
06/07/24 00:42:31
一人言だな
245:デフォルトの名無しさん
06/07/24 00:45:46
まぁ勝手に使えないと思っとけばいいんじゃないか。
困るのは俺らじゃないし。
246:デフォルトの名無しさん
06/07/24 00:57:54
こりゃ参った、誰も使ってねえなこれは
そうそういに手を引いたほうがよさそう
しかしタチわるいなあ
247:デフォルトの名無しさん
06/07/24 00:59:14
ここはお前の日記帳じゃねぇぞw
248:デフォルトの名無しさん
06/07/24 01:30:00
逆に言えば英米人のプログラマだって、
初めてUTC-2やらUTF-16やらを使う羽目になったときの感想はそんなだったと思うよ。
そこは慣れるしかない。
249:デフォルトの名無しさん
06/07/24 01:42:32
象形文字のせいでやたら文字がいっぱいある言語だと思われてるからなぁ
250:デフォルトの名無しさん
06/07/24 03:11:37
まともに多言語やろうとすると、4Byteは必要なんじゃないかな。
2Byteじゃ可変か、モード切替になる。
251:デフォルトの名無しさん
06/07/24 03:37:35
流石に UCS4 くらいは知っていると思いたいけど…
252:デフォルトの名無しさん
06/07/24 07:42:36
>>251
ちげーよ
ある仮定を1つ言ってないだけさ
253:デフォルトの名無しさん
06/07/24 08:41:29
聞きたくない
254:デフォルトの名無しさん
06/07/24 09:30:07
聞く価値も無い
255:デフォルトの名無しさん
06/07/24 20:27:40
このwchar_tへのこだわり・・・cannaの作者?
なわけないよな
256:デフォルトの名無しさん
06/07/25 07:17:21
wchar_tなんぞ使うかボケ
257:デフォルトの名無しさん
06/07/27 16:08:40
初心者でかつ、少しスレッドが違うかも知れないですが、
Windows XPのcygwinにてgdbでデバッグを行っています。
(GNU gdb 6.3.50_2004-12-28)
watchコマンドでグローバル変数のwatchはできたのですが、
watchコマンドにより関数内の変数(ちなみにstatic変数です)を
watchする方法が分かりません。
これはそもそも、できないことなのでしょうか?
もし方法があるなら教えていただきたいです。
258:デフォルトの名無しさん
06/07/27 16:39:07
関数のあるところまで実行する
ヒント:スコープ
259:デフォルトの名無しさん
06/07/27 16:58:32
>> 258
watch 関数名::変数名
でwatchすることができました。
どうもありがとうございました。
260:デフォルトの名無しさん
06/08/09 02:21:09
全く初心者でわからないので教えてください。
Cygwinで
$ gcc test.c
と入れたら a.exe というファイルができました。
$a.exeと入力してもノットコマンドで実行できません。
実行の仕方教えてくださいお願いします。
261:デフォルトの名無しさん
06/08/09 02:21:35
./a
262:デフォルトの名無しさん
06/08/09 02:22:31
>>261
超迅速にありがとう。
マジで感謝です。
263:デフォルトの名無しさん
06/08/09 03:34:00
ノットコマンドて……
264:デフォルトの名無しさん
06/08/09 03:48:45
最近&foo[2]と書くひとが増えていますが、
なにかfoo+2で困ることがあるのでしょうか?
265:デフォルトの名無しさん
06/08/09 04:38:21
>>264
std::vector と互換しない。
266:デフォルトの名無しさん
06/08/09 07:28:49
std::fill(&foo[0][0], &foo[2 - 1][3 - 1] + 1, 0)
267:デフォルトの名無しさん
06/08/09 12:30:55
ありがとうございます。
>>265 つまり日頃から&foo[n]と書く癖をつけるという事ですね
>>266 2つめの引数の+1は問題にはならないのですか?
268:デフォルトの名無しさん
06/08/09 12:46:08
iterator + 1
269:デフォルトの名無しさん
06/08/09 13:27:45
>>268 std::fill()の最初2つの引数はイテレータなんですね。
だからp1=p2の時++p1==p2+1は1だからこそ成り立つってことかし?
うーん、もっと勉強してきます。ありがとうございました。
270:デフォルトの名無しさん
06/08/09 13:32:26
>>269
全然違う
271:デフォルトの名無しさん
06/08/09 22:35:28
「全然違う」書くだけなら小学生でも(略
272:デフォルトの名無しさん
06/08/09 22:36:07
あげとこう
273:デフォルトの名無しさん
06/08/09 23:18:15
小学生ですが何か?
274:デフォルトの名無しさん
06/08/10 00:00:01
付き合ってください
275:デフォルトの名無しさん
06/08/10 14:12:44
ごめんなさい
276:デフォルトの名無しさん
06/08/10 16:00:39
intel core microarchitecture 用の最適化の開発ってはじまってる?
277:デフォルトの名無しさん
06/08/14 09:03:09
gccの内部構造に関して解説した文章ってありますか?
278:デフォルトの名無しさん
06/08/14 09:55:12
info
279:デフォルトの名無しさん
06/08/14 10:04:29
>>277
URLリンク(wikiwiki.jp)
280:デフォルトの名無しさん
06/08/15 21:18:02
>>277 URLリンク(gcc.gnu.org)
281:デフォルトの名無しさん
06/08/17 21:45:35
Javaで書いたルーチンをgcjでコンパイルしてライブラリ作って
C,C++から呼び出すってたぶん可能ですよね
どっかいい解説はないでしょうか?
それとも無理なんかな
282:デフォルトの名無しさん
06/08/17 21:51:35
キーわかってんならググレ このカスが!
専用スレもあるってのに。
283:デフォルトの名無しさん
06/08/18 08:54:11
>>281
JVMの初期化APIあたりについてはマニュアルを読みましょう.
* URLリンク(gcc.gnu.org)
* URLリンク(www.asahi-net.or.jp)
ライブラリをどう作っていいかわからんとかのレベルならgcjとか諦めた方が無難…
284:デフォルトの名無しさん
06/08/18 09:39:05
>>283
レスをどうもありがとうございます.
C++側からJavaクラスのメッソドを呼び出すのに成功しました.
ライブラリはいくつか作ってるので大丈夫ですが
Javaの方がサッパリなので,これから学んでみようと思います.
どうもありがとうございました.
285:デフォルトの名無しさん
06/08/18 16:37:24
一応あげておくか。
286:デフォルトの名無しさん
06/08/18 17:51:47
>>282
最近の子は切れやすいね〜
287:デフォルトの名無しさん
06/08/18 18:24:50
切れてないですよ
俺切れさせたら大したもんだよ
288:デフォルトの名無しさん
06/08/18 19:17:47
>>287
hage
289:デフォルトの名無しさん
06/08/19 12:25:27
シグナルハンドラの中で使用する大域変数の型は
volatile sig_atomic_t でなければいけないと書いてあるですが
率直に言って何故なんでしょうか?
volatile は最適化の影響を避けるためというのは理解できますが、
volatile int でも良いと思うのですが。
sig_atomic_t は一つの機械語命令で実行できるとなっていますが
そうでなければいけない理由って何でしょうか?
290:デフォルトの名無しさん
06/08/19 13:16:17
その変数をセットする命令列の途中でシグナルが発生する可能性があるから。
たとえば変数が64ビット整数だとして、上位32ビットをセットする命令と
下位32ビットをセットする命令の2つでアクセスが構成される場合、
シグナルハンドラの中で有効な値がとれる保証がない。
291:デフォルトの名無しさん
06/08/19 14:06:54
>>290
レスありがとうございます。
挙げていただいた例に従うと、
上位32ビットをセットする命令の実行後、下位32ビットをセットする命令の
実行前にシグナルが発生したら問題になるということですね?
かなりきわどい条件ですが、発生したらデバッグできなそうです。
292:デフォルトの名無しさん
06/08/29 01:46:24
SSEとかってみんなインラインアセンブラで書いてるの?
それとも組み込み?内臓?
293:デフォルトの名無しさん
06/08/29 07:59:44
ヒント SIMD最適化
294:デフォルトの名無しさん
06/08/29 13:19:44
自分でも書くだろ。
295:デフォルトの名無しさん
06/08/29 21:05:00
asm文
296:デフォルトの名無しさん
06/08/29 22:32:03
int main(viod){
_asm{
〜
}
return 0;
}
297:デフォルトの名無しさん
06/08/29 23:33:46
memalignとか__mm_mallocとか使えるならそれでもよさげなんですが
298:デフォルトの名無しさん
06/08/30 00:30:58
最適化微妙だけど、gcc4.1使ってSIMD最適化して
それを見ながらasmするってのが趣がありそうなのでやってみることにします
299:デフォルトの名無しさん
06/09/03 14:02:23
URLリンク(gcc.gnu.org)
300:デフォルトの名無しさん
06/09/03 17:52:11
300
301:デフォルトの名無しさん
06/09/06 00:37:34
gcc3 とgcc4 を SPECint で比較した資料ありますか?
302:デフォルトの名無しさん
06/09/13 02:52:36
for(int i=0;i<10;i++){
:
:
}
このコードでエラーを吐かれたときからGCCが嫌いになった。それだけ
303:デフォルトの名無しさん
06/09/13 05:13:50
ばかキタ-
304:デフォルトの名無しさん
06/09/13 06:14:15
>>303
ちげーよ
ある仮定を1つ言ってないだけさ
305:デフォルトの名無しさん
06/09/13 06:57:55
やっぱり>>303であってるじゃないかー
306:デフォルトの名無しさん
06/09/13 07:44:31
>>304
バカがキタことになってるよ
詳しく
307:デフォルトの名無しさん
06/09/13 12:18:56
[919]デフォルトの名無しさん 2006/03/19(日) 08:52:45
>>918
ちげーよ
ある仮定を1つ言ってないだけさ
これ何か流行ってるの?
それともやっぱり >>303 なの?
308:デフォルトの名無しさん
06/09/13 13:45:06
暇なので。
>>302
自分のミスに気づかないだけならまだしも、それが他人のミスであることを前提に話をすすめるのは典型的なできないプログラマだ。
infoも読めない自分を嫌いになれ。
`-std='
Determine the language standard. This option is currently only
supported when compiling C or C++. A value for this option must be
provided; possible values are
(略)
`c99'
`c9x'
`iso9899:1999'
`iso9899:199x'
ISO C99. (ばっさり略)
`gnu89'
Default, ISO C90 plus GNU extensions (ばっさり略)
309:デフォルトの名無しさん
06/09/13 14:18:54
error: 'for' loop initial declaration used outside C99 mode
310:デフォルトの名無しさん
06/09/14 15:05:04
manは読むけどinfoは読まないな
インターフェイスが嫌い
311:デフォルトの名無しさん
06/09/14 15:27:38
禿げて同意
312:デフォルトの名無しさん
06/09/14 17:23:09
infoのほうが、大抵詳しく書いてあるのですき。
interfaceも好き。
313:デフォルトの名無しさん
06/09/15 01:20:20
俺も info は嫌いだな。
インターフェイスが嫌なのもあるけど、既に man があるのに別の仕組みを
押し付けられる感じが嫌だ。
314:デフォルトの名無しさん
06/09/15 01:31:20
楽して調べたいわけですよ
infoは操作がメンドイ
315:デフォルトの名無しさん
06/09/15 01:47:31
つかinfoならhtmlでいいじゃねぇかと思うことしきりなんだけどなぁ。
316:デフォルトの名無しさん
06/09/15 01:53:03
htmlでいいなら、info2htmlでいいじゃん。
infoがperlのmanみたいにできるといいな。
perl(1)より
Overview
perl Perl overview (this section)
perlintro Perl introduction for beginners
perltoc Perl documentation table of contents
Tutorials
perlreftut Perl references short introduction
perldsc Perl data structures intro
perllol Perl data structures: arrays of arrays
perlrequick Perl regular expressions quick start
perlretut Perl regular expressions tutorial
(ry
317:デフォルトの名無しさん
06/09/17 20:58:34
共有ライブラリのsonameをバイナリの状態で書き換える方法ってないものでしょうか?
ソースコードからmakeして、ldのオプションで設定するっていうのは無しの方向で考えているんですけど...。
318:デフォルトの名無しさん
06/09/17 23:33:24
>>317
つ LD_PRELOAD
319:デフォルトの名無しさん
06/09/25 02:46:40
>>292
xmmintrin.h これ定説。
320:デフォルトの名無しさん
06/10/04 21:38:37
すみません。質問です。
C#で、メモリが開放されるタイミングってどんなときでしょうか?
プログラム内で今開放してって指定できないでしょうか?
321:デフォルトの名無しさん
06/10/04 22:42:48
>>320
誤爆?
322:デフォルトの名無しさん
06/10/05 02:19:06
GCの質問なんだが。
323:デフォルトの名無しさん
06/10/05 02:23:08
>35-37
324:デフォルトの名無しさん
06/10/09 02:42:55
gccでC#ってコンパイルできたっけ?
325:デフォルトの名無しさん
06/10/09 08:12:41
>>324
ちげーよ
ある仮定を1つ言ってないだけさ
326:デフォルトの名無しさん
06/10/09 09:42:50
>>324
つ URLリンク(www.dcl.hpi.uni-potsdam.de)
327:デフォルトの名無しさん
06/10/09 13:09:28
gccではgetche();の関数は使用できませんか?
328:デフォルトの名無しさん
06/10/09 13:15:28
>>327
なんでそんなこと聞くんだ。
やってみりゃいいじゃないか。
あと、includeディレクトリをgrep
329:デフォルトの名無しさん
06/10/09 13:28:38
>>328
当方Win XPにCygwinの環でございます。
#include <conio.h>
を入れたソースをコンパイルしようとするとconio.hがみつから無いようなことが返されます。
当方の環境では
C:\cygwin\usr\include\mingw
の位置にconio.hは確認することが出来たんですが。
C:\cygwin\usr以下に
conio.hとにコピーしたら_mingw.hが無い、_mingw.hをコピーしたら_getcheが無いようなことを言われました。
確かにconio.hの中には_getche (void)の記述はあったんですがどうにも動いてくれません。
当方Cygwin+gccの環境初心者の為すみません。
330:デフォルトの名無しさん
06/10/09 17:59:36
つまり、mingwを使いたいと言いながらgccを使っているわけだ。
331:デフォルトの名無しさん
06/10/09 18:35:45
>>329 -mno-cygwin
332:デフォルトの名無しさん
06/10/13 15:33:30
gcc-3.3とgcc-4.1.1がインストールされてて今は普通にgccって実行したらgcc-4.1.1が起動するんだけど、
これをgcc-3.3にする方法ないですか?-V 3.3付けるとかじゃない方法で。
333:デフォルトの名無しさん
06/10/13 16:40:38
つgcc-config
334:デフォルトの名無しさん
06/10/13 16:42:44
つgcc-config
335:デフォルトの名無しさん
06/10/13 17:17:55
>>333
>>334
ない。
336:デフォルトの名無しさん
06/10/13 18:14:31
ないものは作れ。
337:デフォルトの名無しさん
06/10/13 18:28:26
ちょ、おま
338:デフォルトの名無しさん
06/10/13 18:43:01
パス
339:デフォルトの名無しさん
06/10/14 20:32:52
cygwinにgcc3.4.6が
340:デフォルトの名無しさん
06/10/15 20:08:00
軽い気持ちでgcc 3.4.6をビルドしようとしたら半日経っても終わらない。
そらcygwinの中の人の腰が重いわけだ。
341:デフォルトの名無しさん
06/10/15 20:14:50
逆にGCC 4.1.1をCygwin上でビルドしたが、数時間で終わった。
342:デフォルトの名無しさん
06/10/15 20:29:42
GCC4.1.1をMinGWにインストールする方法を教えてください。
343:デフォルトの名無しさん
06/10/15 20:31:51
とりあえずセルフビルドなら特に問題は生じない。
344:デフォルトの名無しさん
06/10/15 20:33:25
Cygwin GCC 3.4.6作るには
fURLリンク(ftp.dti.ad.jp)
とGDCとGPCを落として解凍して
./configure --verbose --prefix=/usr --exec-prefix=/usr
--sysconfdir=/etc --libdir=/usr/lib --libexecdir=/usr/lib
--mandir=/usr/share/man --infodir=/usr/share/info
--enable-languages=c,ada,c++,d,f77,pascal,java,objc
--enable-nls --without-included-gettext --enable-version-specific-runtime-libs
--without-x --enable-libgcj --disable-java-awt --with-system-zlib
--enable-interpreter --disable-libgcj-debug --enable-threads=posix
--enable-java-gc=boehm --disable-win32-registry --enable-sjlj-exceptions
--enable-hash-synchronization --enable-libstdcxx-debug
の後
make CFLAGS='-O' LIBCFLAGS='-g -O2' LIBCXXFLAGS='-g -O2 -fno-implicit-templates' bootstrap
…でいいんだよね?
345:デフォルトの名無しさん
06/10/15 20:44:04
>>344
成功したら配布きぼん。
346:デフォルトの名無しさん
06/10/15 21:00:11
>>342
URLリンク(gcc.gnu.org)
URLリンク(gcc.gnu.org)
URLリンク(gcc.gnu.org)
347:340
06/10/15 22:36:40
いい加減キレそうだ…もう寝る。
で、起きた頃にはエラーで止まってるんだろ。
俺の人生そんなもんよ。
348:デフォルトの名無しさん
06/10/15 22:38:05
がんばれ。とにかくがんばれ。人生がんばるしかない。
349:デフォルトの名無しさん
06/10/15 22:44:58
bootstrapだと、自分を三回コンパイルするんだっけ
350:デフォルトの名無しさん
06/10/15 23:04:49
古いgccでコンパイルした新しいgccでコンパイルしたgccで更にコンパイルするんだっけ?
351:デフォルトの名無しさん
06/10/15 23:28:20
こうかな?
・まず3.4.5とかで3.4.6を作る
・作った3.4.6でもう一回作る。これが「3.4.6で作った3.4.6その1」となる。
・更に「3.4.6その1」で「3.4.6その1で作った3.4.6その2」を作る。
・「3.4.6その1」と「3.4.6その2」のオブジェクトを比較して同じならOK。
何か一つでも違っていたら3.4.6は3.4.6でも
場合によって違うものを作り上げるイケてない3.4.6ということだからエラーで止まる。
だからGCC作者自身がbootstrapはやるべきだと言ってるのか。
352:デフォルトの名無しさん
06/10/15 23:45:45
最初に使う3.4.5はどうやって作ったの?
353:デフォルトの名無しさん
06/10/15 23:51:00
あーもう。
だれかバイナリ上げれば済むこったろ。
待っとけ。
俺はやらないけどな。
354:デフォルトの名無しさん
06/10/15 23:56:58
>>352
3.4.4で作るに決まってるん
355:デフォルトの名無しさん
06/10/15 23:58:19
決まってるん
356:デフォルトの名無しさん
06/10/16 00:46:43
>>354
じゃあその3.4.4はどうやってくつったのよ?
357:デフォルトの名無しさん
06/10/16 00:54:33
3.4.3で(以下略
358:デフォルトの名無しさん
06/10/16 01:10:58
くつった
359:デフォルトの名無しさん
06/10/16 01:12:37
じゃあその3.4.3を作った3.4.2を作った3.4.1
(中略)
一番最初はどうやって作ったのよ?
360:デフォルトの名無しさん
06/10/16 01:15:49
別のCコンパイラ
361:デフォルトの名無しさん
06/10/16 01:18:30
>>351ほか
理想論では、Cコンパイラがあればstage1をビルドできる。
stage2以降は先行stageなgccでビルドするから問題なし。
現実的には、3.4.xは3.3.x以降ならだいたいビルド可能な感じかな。
3.0.xあたりだと微妙かも。2.95とかはトラップがあったような。
gccのソースコード内にgcc依存な記述がどのぐらい入っているのかはよく知らん。
完全に標準C準拠な記述だけなら使う側は幸せだけど、きっとそんなことはないな。
Q. このCコンパイラはどうやってビルドしたの?
A. 別のCコンパイラを使ってコンパイルした
Q. その別のCコンパイラは(ry
…最初だけは適当なバイナリ使え。
362:デフォルトの名無しさん
06/10/16 01:23:39
一番最初までさかのぼると機械語で直にコーディングした強者にたどり着くのだろう
363:デフォルトの名無しさん
06/10/16 01:39:10
>>362
つクロスコンパイラ
Q. このクロスコンパイラはどうやってビルドしたの?
A. 別の(ry
まあほんとの最初はやっぱり機械語なはずだな。
Cが生まれた頃には別の高級言語やアセンブリ言語があったから、
機械語から直接Cに来たってことはないだろうけど。
URLリンク(en.wikipedia.org)
364:デフォルトの名無しさん
06/10/16 02:47:05
GCCの起源をさかのぼると紙テープになるってか?
365:デフォルトの名無しさん
06/10/16 03:09:31
∧ ∧
<丶`∀´>
ウリナラがこのスレに興味を持ったようです。
366:デフォルトの名無しさん
06/10/16 12:41:55
俺も今朝出るときビルド仕掛けた。
帰る頃には終わってるだろう。
367:デフォルトの名無しさん
06/10/16 14:03:15
>>362
つ BASICインタプリタ
368:デフォルトの名無しさん
06/10/16 15:18:52
>>367
そのBASICインタプリタはアセンブラで書かれていなかったかい?
369:デフォルトの名無しさん
06/10/16 16:39:25
>>361
Wikipedia日本語版に、GCCはK&R Cで書かれているとあるが、実際のところどうなんだろう?
370:デフォルトの名無しさん
06/10/16 17:25:14
ソース見ればわかるじゃん。
371:デフォルトの名無しさん
06/10/16 17:33:10
どう見てもANSI Cです。(関数宣言のあたり)
ってGREPすると__attribute__も少しは見かけるな。
372:デフォルトの名無しさん
06/10/16 17:51:02
環境:cygwin+3.4.4-2シリーズ
fURLリンク(ftp.dti.ad.jp)
URLリンク(www.gnu-pascal.de)
解凍後
./configure --verbose --prefix=/usr --exec-prefix=/usr
--sysconfdir=/etc --libdir=/usr/lib --libexecdir=/usr/lib
--mandir=/usr/share/man --infodir=/usr/share/info
--enable-languages=c,ada,c++,f77,pascal,java,objc
--enable-nls --without-included-gettext --enable-version-specific-runtime-libs
--without-x --enable-libgcj --disable-java-awt --with-system-zlib
--enable-interpreter --disable-libgcj-debug --enable-threads=posix
--enable-java-gc=boehm --disable-win32-registry --enable-sjlj-exceptions
--enable-hash-synchronization --enable-libstdcxx-debug
make CFLAGS='-O' LIBCFLAGS='-g -O2' LIBCXXFLAGS='-g -O2 -fno-implicit-templates' bootstrap
make install
できた。
373:デフォルトの名無しさん
06/10/16 21:19:40
>>372
乙彼サマですっ(゚Д゚)>ビシッ
374:デフォルトの名無しさん
06/10/17 02:55:16
俺もできることはできたんだけど何故かディレクトリ設定がしっちゃかめっちゃかになっていて
Cygwinのインストーラーで入れるgccバイナリのように何も考えずに使うことはできない状態。
やっぱりCygwinによくなじむgccはCygwinの中のおっさんにしか作れないのかもしれない。
けどおっさんは例え3.4.4に不具合報告されていようと自分自身がその不具合に遭遇しない限り
ビルドする気なさげっぽいんだよな。
375:デフォルトの名無しさん
06/10/17 08:34:07
説得する側の説得力と貢献が足りないのでは?
376:デフォルトの名無しさん
06/10/18 18:42:18
というわけでCygwinからMinGWに鞍替えします。
377:デフォルトの名無しさん
06/10/18 22:52:49
URLリンク(xxx.upken.jp)
”MinGW用”GCC 3.4.6バイナリ
Pass:mingw
有効期限は3日、ダウンロードは5回までです。
378:デフォルトの名無しさん
06/10/18 23:18:35
転載要る?
379:デフォルトの名無しさん
06/10/18 23:37:12
( ^ω^)
380:デフォルトの名無しさん
06/10/19 02:19:58
スレの住人数的に5人で十分つーか普通は自分で作れるっしょ。
381:デフォルトの名無しさん
06/10/19 18:10:19
自分で作れない奴は使えなくていいんだよ
382:デフォルトの名無しさん
06/10/19 18:53:15
gccのコンパイルは自分でやったこと無いけど、
某g*cはコンパイルに丸一日かかると聞いたので
時間が惜しい人もいるかなあ、と。
383:デフォルトの名無しさん
06/10/19 20:39:49
そんなに時間が惜しければ、寝ていたり出かけていたりする間にやらせれば良いだけ。
384:デフォルトの名無しさん
06/10/19 21:33:05
自分でやりたくなければ、バイナリが配布されるのを待てばいいじゃない
385:デフォルトの名無しさん
06/10/19 21:41:31
半年以上待ってます。
386:デフォルトの名無しさん
06/10/19 21:47:36
--enable-languages=c,c++
だったらすぐじゃん。
java→SUN使え
pascal→でるふぃ使っとけ
ada→知らん
f77→知らん
objc→知らん
387:デフォルトの名無しさん
06/10/20 00:59:57
c++を友好にするだけでけっこうかかるぞ。
それにやっぱ今はjavaを有効にしてネイティブコンパイルするのがトレンドじゃないか。
388:デフォルトの名無しさん
06/10/20 01:06:15
>>387
どうせ不安定
389:デフォルトの名無しさん
06/10/20 17:36:58
>>388
そこが萌える
390:デフォルトの名無しさん
06/10/20 18:22:23
>>389
ツンデレ?
391:389
06/10/20 18:41:30
>>390
今のgcjはツンデレどころかツンツン
#とくにWin32環境では…
392:デフォルトの名無しさん
06/10/23 00:41:56
スレリンク(tech板)l50
停止しました
393:デフォルトの名無しさん
06/10/23 07:53:02
gccとはちと離れますが、
gasでのIA32のニーモニックやオペランドの表記方法について解説した文書ないですか?
394:デフォルトの名無しさん
06/10/23 08:11:31
本でいいならCQ出版のx86アセンブラ入門
Webならググレ
395:デフォルトの名無しさん
06/10/23 18:32:24
ぐぐってもちゃんとしたのは出てこないな。サワリだけのページならあるけど。
396:デフォルトの名無しさん
06/10/23 21:48:43
>>393
URLリンク(mysearch.intel.com)
URLリンク(www.linux.or.jp)
> gasの欠点はgasがAT&T-syntaxを使っていることです。これは
> Intel-syntaxと大きく違っています。 DOSユーザーはほとん
> どがIntel-syntaxを使っています。
AT&T Assembly Syntax | Sig9
URLリンク(sig9.com)
がんがれ>>393
397:デフォルトの名無しさん
06/10/24 00:52:06
>>393
URLリンク(homepage1.nifty.com)
URLリンク(www.mars.sannet.ne.jp)
398:デフォルトの名無しさん
06/10/24 02:04:20
>>393
gas付属のinfoは?
399:393
06/10/24 04:46:38
>>396-397
ありがとうございます。
教えていただいたページを参考になんとかなりそうです。
>>398
私は英語がダメで……というわけでもないんですが
一遍見たのですがgasの文法しか書いてないと思ってしまってました。
ご指摘を受けてもう一度よく見直したらMachine Dependent Features
という節があってそこになんか書いてありますね(アセ
やっぱ英語ダメなのか。
400:デフォルトの名無しさん
06/10/25 14:48:44
401:デフォルトの名無しさん
06/10/25 14:54:58
>>400
ageてまでする話じゃないな
402:デフォルトの名無しさん
06/10/26 00:30:48
fURLリンク(gcc.gnu.org) に 4.3 ができてた。
よく知らないが、そろそろ 4.2 がリリースされるんかな。
403:デフォルトの名無しさん
06/10/26 00:34:07
へぇ、branch切ったんだ。
URLリンク(gcc.gnu.org)
魅力的な要素があまり無いなぁ。
404:デフォルトの名無しさん
06/10/26 03:15:11
>>401
405:デフォルトの名無しさん
06/10/26 03:59:43
えぇっ、フリーのOpenMPはでかいんじゃないのかいな。
ていうかなんでfastjar消されるの?
406:デフォルトの名無しさん
06/10/26 04:44:29
所詮ただのZIPだから。
407:デフォルトの名無しさん
06/10/26 15:14:53
やっぱそうだったんだorz
408:デフォルトの名無しさん
06/10/28 13:28:01
>>405
はげどう。
>>403 はこのままだとマルチコア時代を生き抜けないぞ。
409:デフォルトの名無しさん
06/10/28 19:20:42
ただでさえ4.*はバージョンが古くないと問題ないはずのソースがコンパイルできなかったり
まさに発展途上だからなぁ。
410:デフォルトの名無しさん
06/10/29 02:50:55
安定してるバージョンはなに?
411:デフォルトの名無しさん
06/10/29 07:50:12
3.4.4
412:デフォルトの名無しさん
06/10/29 18:15:19
3.4.6が3.*の最終版だがffdshowの改良版がコンパイルできないそうだ。
ffdshowの改良版がまともにコンパイルできるのは4.0.2”だけ”で
4.0.1でも4.0.3以降でもダメらしい。
つまり4.*はもちろん、もう更新されない3.4.6ですら未完成な部分がある。
修正するガッツを持っている人間はネットをググった程度じゃ出てこない。
413:デフォルトの名無しさん
06/10/29 18:20:42
>>412
ffdshowの改良版とやらの方の不備ではないのか?
414:デフォルトの名無しさん
06/10/29 18:21:00
>>412
そもそもGCCのコードを弄れる奴が世界に何人いるかだ。
415:デフォルトの名無しさん
06/10/29 19:20:10
gccのコードほど複雑怪奇なものはないと思うんだが。
416:デフォルトの名無しさん
06/10/30 00:59:12
>>414
CygwinとMingwの中の人なら平気で弄ってるよな。いや、平気じゃなくて根性かもしれんけど。
417:デフォルトの名無しさん
06/10/30 12:45:43
コンジョだコンジョ
418:デフォルトの名無しさん
06/10/30 22:05:16
カスミン懐かしい…
って板違いだな
419:デフォルトの名無しさん
06/10/31 21:18:28
参考までにffdshowの改良版
svn co URLリンク(svn.sourceforge.net) ffdshow-tryout
作ってる人たち自身がGCCなら4.0.2じゃないとダメと言ってるからソースに問題はないと思うんだが。
ちなみに3.4.6ではInternal Compiler Errorが出てコンパイルできなかった。(/src で make)
420:デフォルトの名無しさん
06/11/01 07:39:23
>>412
>つまり4.*はもちろん、もう更新されない3.4.6ですら未完成な部分がある。
この結論がおかしい。最後の数パーセントを完璧にするには数百倍の努力を必要とする。
421:デフォルトの名無しさん
06/11/01 08:13:53
別にその結論自体はおかしくないと思うけど
422:デフォルトの名無しさん
06/11/01 09:07:53
そっか、ならよかった
423:デフォルトの名無しさん
06/11/01 14:50:50
>>420の文の意味がよく分からん。
残り数%の未完成が判明しても最終版は完成とみなすの?
424:デフォルトの名無しさん
06/11/01 14:58:50
>>423
たぶん、「ですら」ってとこに違和感感じてるんじゃないの?
完璧にするのは長時間かかるんだから、もちろんあるだろうということで。
425:デフォルトの名無しさん
06/11/01 18:23:24
俺は普通に読んで「ですら」ってのは「完璧じゃないんですよということを強調」する意味で
特に違和感ないと思ったんだが。
「結論がおかしい(=間違ってる)」というのが何を意味するのか俺も分からん。
「もちろんあるだろう」ならそのまま「そりゃそうだろ」で済むからそれは違う気がする。
文系じゃないので深読みはしなかった。国語苦手だよ。
426:デフォルトの名無しさん
06/11/01 22:19:12
coutで文字列を出力した後にwcoutでワイド文字を出力すると文字化けする。
逆もそう。gcc4.0.2(vine3.2)。
うちの環境だけ?
427:デフォルトの名無しさん
06/11/01 23:32:21
具体的なコードでくれ
428:デフォルトの名無しさん
06/11/02 01:28:42
>>423
gccくらいのサイズのソフトウェアは完成することはない。
429:デフォルトの名無しさん
06/11/02 02:00:49
どれくらいのサイズのソフトウェアなら完成しますか?
430:デフォルトの名無しさん
06/11/02 02:18:52
>>425
「ですら」は「容易であるのにも関わらず」というニュアンスを持っているけど、
>>423 は「本当は容易じゃないんだぜ」って事を言いたいんじゃないかな。
>>412 は、機能追加が無いから 4.* よりは「容易であるのにも関わらず」
という話だから、用法を間違ってる訳じゃないんだけどね。
>>429
「完成したソフトウェア」を定義出来ないから、サイズに関わらず無理という
結論が返って来るに 100 ルピー。
431:デフォルトの名無しさん
06/11/02 03:39:32
>「ですら」は「容易であるのにも関わらず」というニュアンス
どこの国のニュアンスだよ
URLリンク(dictionary.goo.ne.jp)
板違いだからよそでやれ
432:デフォルトの名無しさん
06/11/02 06:43:05
ですらー総統万歳
433:デフォルトの名無しさん
06/11/02 08:23:34
Wikipediaの記事酷いな
悪意を持った半可通ほどタチの悪いもんはない
434:デフォルトの名無しさん
06/11/02 16:36:54
質問します
ある統計データのグラフを画像として出力するプログラムを作りたいのですが、
GCCで利用可能な良いライブラリがありましたら教えて下さい。
形式はjpeg、gif、pngの何れかに対応しており、文字列を画像に出力可能なものを探しています。
よろしくお願い致します。
435:デフォルトの名無しさん
06/11/02 17:52:30
gnuplot使えばいいんじゃ
436:デフォルトの名無しさん
06/11/03 06:32:23
gnuplotのコマンド出力してくれるライブラリが欲しいです
437:デフォルトの名無しさん
06/11/03 08:16:04
というか、スレ違いなんだが、
gnuplotは、デバイス非依存にするために、term抽象化をしているから、
*.trmで定義されているtermモジュールを、切り替えて使うようにすればOK。
$(GNUPLOT)/term/README読め。
話の続きがしたければ、くだ質スレ行け。
438:デフォルトの名無しさん
06/11/03 16:32:30
popenで十分じゃない?
439:デフォルトの名無しさん
06/11/05 10:56:17
>>433
むしろ、このスレの住人には神が何人もいるわけで、
このスレで少し議論して書き直してもいいと思う。
440:デフォルトの名無しさん
06/11/05 16:30:46
ada使ってる猛者いる?
441:デフォルトの名無しさん
06/11/05 18:10:03
指先が擦り減るから止めた
442:デフォルトの名無しさん
06/11/05 19:34:09
>>440
スレリンク(tech板)
443:デフォルトの名無しさん
06/11/05 19:57:43
歴史あるスレですね
書き込んでスレを進めるのがもったいなく思います
444:デフォルトの名無しさん
06/11/06 11:28:46
gcc(g++)で特殊化されてないテンプレートに特殊化されたテンプレートを
定義する方法はありませんか?
VCやBCBでは非標準の機能も使えてしまうわけで、g++でもそういう機能を
有効にするようなオプションなりなんらかの方法を探してます。
バージョンはgcc4系を目標にしてます。
445:434
06/11/06 15:06:33
>>435,437,438
返信遅くなりましたが、有難うございます
gnuplotでの作成を検討したいと思います
446:デフォルトの名無しさん
06/11/10 02:49:15
質問です
linux上で静的リンクでコンパイルしたつもりなのですが、
glibcに依存(?)しており、sharedな状態となっているためか、
プログラムが変なところで終了するようになりました。
glibcに依存しない、完全に独立したバイナリを作成するには
どうしたらよいでしょうか?
ポインタなど頂けると嬉しいです
lddで対象プログラムを参照するとstaticだと言われるんですが、
コンパイル時に以下のようなワーニングが出ます。
warning: Using 'gethostbyname' in statically linked applications requires
at runtime the shared libraries from the glibc version used for linking
/usr/lib/libc.aは確かにgethostbynameのシンボルを保持しているのですが、
libc.aをldするとglibcに依存するので完全に独立させたいです
447:デフォルトの名無しさん
06/11/10 11:01:20
libcにはexit(2)など、
プログラムの実行に必須の関数(およびシステムコールインターフェース)が入っているので、
なしでプログラムを実行することは不可能です。
あなたがlibcの代わりのシステムコール、main()スタブを書けば問題ないですが、
質問内容から言ってもそれは到底無理でしょう。
448:デフォルトの名無しさん
06/11/10 11:01:58
gethostbyname()を他から持ってくる。
449:デフォルトの名無しさん
06/11/10 23:02:02
libc,libgcc抜きの環境でやってたときは結構面白かった。
車輪の再開発はやっぱり楽しい。
450:デフォルトの名無しさん
06/11/11 10:38:09
>>449
libgcc抜きは相当キツいだろうな・・・
451:デフォルトの名無しさん
06/11/11 17:43:33
ちょいと質問ですよ。
手元のgcc(for cygwin)は-m64がないのだけれど、-m64オプションを指定したときsizeof(int)はいくつになるの?
LinuxとSolarisのそれぞれについて、教えてくれると助かります。
452:デフォルトの名無しさん
06/11/13 18:25:13
int main() {
static int foo();
return foo();
}
static int foo() {
return 0;
}
上記コードはgcc 3.4.4ではコンパイルできますがgcc 4.0.3ではできません。
以下はgcc 4.0.3のエラーログです。
test.c: In function ‘main’:
test.c:2: error: invalid storage class for function ‘foo’
test.c: At top level:
test.c:5: error: static declaration of ‘foo’ follows non-static declaration
test.c:3: error: previous implicit declaration of ‘foo’ was here
これはgcc 4.0.3での仕様変更でしょうか?
サンプルソースの記述方法は標準仕様(ANSI CないしC99等)に違反していますか?
453:デフォルトの名無しさん
06/11/13 21:05:25
こういうの萎えるけどまぁしゃーない。漏れも暇だ。
> これはgcc 4.0.3での仕様変更でしょうか?
だろうね、望ましい(厳しい)方向の。
> サンプルソースの記述方法は標準仕様(ANSI CないしC99等)に違反していますか?
厳密に違反(?)かは分からんが、
> static int foo();
この位置じゃmain()の中だけでしか宣言が有効じゃない。
しかも引数にvoidがないからPost-ANSIスタイルじゃない(==K&R)。
-pedantic -std=c89 -W{all,strict-prototype}
とかとりあえずやっとけ。
454:デフォルトの名無しさん
06/11/13 22:15:02
int型で扱える整数の最大値はいくつですか?
PC-9801時代のC言語入門しか持ってないんですが
printf ("%d\n",123456789);
としても普通に表示されるようです。
この本だとエラーになる。
455:デフォルトの名無しさん
06/11/13 22:35:09
処理系による。limits.hでもお読みなさい。
456:454
06/11/13 22:35:36
原始的に一桁ずつ変更してみたら
2147483647でWarningが出なくなったけど、これで合ってるのかな…
457:デフォルトの名無しさん
06/11/13 22:36:36
>>454
sizeof(int)の値をnとして、(2^n)/2-1だよ。
intのサイズが4バイトなら2147483647ね。
458:デフォルトの名無しさん
06/11/13 22:39:35
俺のところでは、
/* limits.h */
#define __INT_MAX__ 2147483647
459:454
06/11/13 22:40:58
ありました!
# define INT_MAX 2147483647
460:457
06/11/13 22:45:37
間違えたwww
nは8をかけてビット単位にしてね。
461:454
06/11/13 22:59:30
>>457>>460
ありがとうございます。
しかし私が理解できる数学は中学校2年レベルまでです…orz
462:デフォルトの名無しさん
06/11/13 23:25:09
>>457 そんな決め付けはよくないな。
463:デフォルトの名無しさん
06/11/13 23:43:11
>>461
457はそれくらいの数学がわかれば十分理解できるはず。
(Cではxorだが)ここでは^が冪乗の意味。2 ^ nは2のn乗ということ。
464:デフォルトの名無しさん
06/11/14 01:18:45
m桁のn進数の数値が表せる最大の数は(n^m)-1だろ?
465:デフォルトの名無しさん
06/11/14 01:23:07
>>464
しかしここでは2の補数による符号付き整数型を考えているので457。
ただ2^(n-1) - 1と書いたほうがいいのではと思うがな。
466:デフォルトの名無しさん
06/11/14 01:23:53
>>464
int の有効桁数は sizeof(int) では確定しない。
467:デフォルトの名無しさん
06/11/14 07:39:54
intを格納するのにパディングが必要になる処理系というのも
考えづらいけどね。
468:デフォルトの名無しさん
06/11/14 13:08:35
そりゃただの想像力不足だろ。
ILP64のように、intがマシンにとって最も自然なワードという仮定は
もはやプラットフォームによっては崩れてる。
469:デフォルトの名無しさん
06/11/14 13:25:10
>プラットフォームによっては
>プラットフォームによっては
>プラットフォームによっては
470:デフォルトの名無しさん
06/11/14 23:29:39
int はそのプラットフォームにおいてもっとも高速であること見込めるサイズと定義されているのに(w
471:デフォルトの名無しさん
06/11/15 00:19:27
>>470
はつみみです。
何のどこに定義されているのですか?
472:デフォルトの名無しさん
06/11/15 01:20:42
どっちにしろ、C99からはint8_tとかつかえばおk
473:デフォルトの名無しさん
06/11/15 20:34:20
>>470
とするのが理想だが 定義じゃねーYO!
474:デフォルトの名無しさん
06/11/15 23:23:11
>>472
int_fast8_tのことかぇ?
475:デフォルトの名無しさん
06/11/16 11:21:19
stdint.h
476:デフォルトの名無しさん
06/11/19 20:42:26
; Linux 板から引っ越してきました。
質問です。
/lib/ld.so の様に,実行も出来る共有ライブラリを作るには GCC に対してど
ういうコマンドを発行すれば良いのでしょうか?
% file /lib/ld-2.4.so
/lib/ld-2.4.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), not stripped
% /lib/ld-2.4.so
Usage: ld.so [OPTION]... EXECUTABLE-FILE [ARGS-FOR-PROGRAM...]
You have invoked `ld.so', the helper program for shared library executables.
...
477:デフォルトの名無しさん
06/11/20 09:15:42
つ ld-*.soのソースとMakefile
478:gcc4
06/11/23 17:18:39
みんな -fpmath は sse にしてる?
479:デフォルトの名無しさん
06/11/23 22:01:05
ええ
480:デフォルトの名無しさん
06/11/25 10:16:27
はやくgcc-4.2こい〜こい〜
481:デフォルトの名無しさん
06/11/25 13:50:55
>>480
4.2のウリはなに?
482:デフォルトの名無しさん
06/11/25 13:52:01
ニダ!
483:デフォルトの名無しさん
06/11/25 14:56:18
>>481
openMPのサポートじゃないの?
484:デフォルトの名無しさん
06/11/25 15:48:58
>>481
ここ読め、カス!
URLリンク(gcc.gnu.org)
forward propagation passが入るよー。
485:デフォルトの名無しさん
06/11/25 17:10:34
OpenMPは庶民にはあまり関係なさそうだな。
>>481を見ると、他の変更はあまりなさそうですね。
486:デフォルトの名無しさん
06/11/25 20:47:01
RTL での forward propagation は 4.3 からじゃない?
487:デフォルトの名無しさん
06/11/26 01:09:36
GCCのソースを読むのは疲れるぞい。
488:デフォルトの名無しさん
06/11/26 08:42:21
ETFは少し下げてっるぽい。
489:デフォルトの名無しさん
06/11/26 10:22:49
forward propagationってコピー伝播のこと?
490:デフォルトの名無しさん
06/11/26 11:02:19
>>489
URLリンク(gcc.gnu.org)
491:デフォルトの名無しさん
06/11/26 15:15:20
>>490
さんきゅ。あってるみたいだね。
しかし、今まで入ってないのが不思議なくらい基本的な最適化だが…
492:デフォルトの名無しさん
06/11/26 16:10:16
伝搬の方向と、解析の方向の違い。
493:デフォルトの名無しさん
06/11/26 18:08:20
ObjC2.0っていつサポートされる予定なの?
494:デフォルトの名無しさん
06/11/26 18:16:54
>>491
その辺はopen sourceの限界だろうな。
商用コンパイラなら常識だが、フリーのものは思わぬところで手が抜かれている
495:デフォルトの名無しさん
06/11/26 19:13:26
>>489
違う。
496:デフォルトの名無しさん
06/12/10 23:09:58
質問なんですが、gccで、
動的ライブラリのSOファイルにiostreamをインクルードすると、実行時に、
undefined symbol: __dso_handle
ってエラーがでるんですけど、なんか対処法ないですか?
$ g++ -Wall -g3 -c test.cc
$ g++ -shared -nostartfiles -o test.so test.o
こんな感じでコンパイルしてます。
497:デフォルトの名無しさん
06/12/11 00:30:11
ぐぐると出てくるぞ
URLリンク(d.hatena.ne.jp)
498:デフォルトの名無しさん
06/12/11 00:59:42
>>497
ありがとうございます。
extern void* __dso_handle;
って宣言するってことですかね?ちょっと試してみます!
499:デフォルトの名無しさん
06/12/17 13:20:01
gdb でマクロ参照したい時 gcc -g3 しますが、
enum hoge {
HOGE_A = 123,
#define HOGE_A HOGE_A
...
というコードのデバッグで HOGE_A を参照できず困ってます。
macro expand HOGE_A すると 123 ではなく HOGE_A になる上、
実コードで enum hoge i = ... のように使われてないので、
この enum/macro 値の実値がデバッグセッション中からまったく
取れないのです。
いまはやむなくヘッダ grep して毎回探し回ってるんですが、
実は gcc/gdb 的にちゃんと参照する方法があったりしないでしょうか?
500:デフォルトの名無しさん
06/12/17 13:56:20
print出来ないの?
501:デフォルトの名無しさん
06/12/17 14:01:27
あ、出来ないわ。
debug情報に含まれてないね。> hoge, HOGE_A
リテラルになってる。
502:デフォルトの名無しさん
06/12/17 14:05:16
そうなんですよ。
#define HOGE_A 123
ならコード中で使ってなくても gdb から見えるのに、
enum { HOGE_A = 123 }
だと何と見えなくなってしまって。gcc/gdb に手を入れないと対応不能?
503:デフォルトの名無しさん
06/12/17 17:38:34
Symbol tableにないから無理だね。
504:デフォルトの名無しさん
06/12/17 17:44:58
やぱりそうですか。
マニュアル見てると -feliminate-unused-debug-symbols とか -gfull とか
ちょっと関係してそうなものがあるので、定義を見ただけで突っ込むように
できないかもう少し見てみます。
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5389日前に更新/201 KB
担当:undef