

お世話になります。下のような初歩的なCプログラムですが、"XPhome"2機種、"Win2K"2機種でそれぞれ、Dev-C++4.9.9.0でコンパイルできる機種とできない機種(すべてノートPC)がありました。機種によってコンパイラーソフトの相性などあるのでしょうか?
当方一応パスカル初歩程度の実力です。Cを本格的に勉強し、C++にも手を伸ばしたいと考えています。よろしくお願いいたします。機種が多いのは、場所移動で使い分けているためです。
コンパイル成功機種
1)XP(SP3): (CereronM 800Mhz, RAM768M)
2)Win2K(SP4) : (VIA C7-M ULV 1GHz, RAM 1G )
コンパイル失敗機種
3)XP(SP3): (CereronM 800Mhz)
エラーメッセージ:
[Linker error] undefined reference to `__cpu_features_init'
ld returned 1 exit status
4)Win2K(SP4) : (Transmeta Crusoe TM5800, RAM512M )
エラーメッセージ:
cpp[switches] input output
gnu89, gnu9x, c89, c9x, iso9899:1990,
Too many aruguments
***************
#include <stdio.h>
int main()
{
char c;
c=getchar();
putchar(c);
printf("\n");
system("PAUSE");
}
****************
No.3ベストアンサー
- 回答日時:
>正常コンパイルできなければできる機種をうまく移動して使う予定ですが、このように機種(CPU)またはマザーボードなどによってうまくいかないことはあるのでしょうか?過去パスカル勉強中でも機種によっては、動かないこともあり、学習の挫折にいたったことが度々あります。
CPUに依存したプログラムを書けないこともないですが、質問内容に書かれているプログラムにはそのような点はないです。
エラーメッセージからすると3,4で動作しているCコンパイラやリンカーが1,2とは異なるような気がします(エラーメッセージ的にはリンクするライブラリの指定間違いやCプリプロセッサのオプション指定間違いなのでCPU依存などとは関係ありません)。
1~4それぞれ色々なCコンパイラを入れていたりしませんか?
1~4のそれぞれでコンパイル開始時から終了するまでに出力されるメッセージを見比べる事で何かわかるかも。
エラーメッセージの判断ありがとうございます。インストールしなおしたり、バージョンを落としたりしましたが、だめな機種ややはりだめでした。またよろしくお願いいたします。
No.2
- 回答日時:
記憶が正しければ、getcharの戻り値はint型の筈です。
又、system関数は環境依存が激しかったはずです。
ノートPCではコンパイルできないとの事ですので、その周りを調べてみてはどうでしょう?
ノートPCではコンパイル無理ですか?できるのもありますし、そうでないのもあります。デスクトップで試してみます。一般的なPCというものは存在しないようですね。またよろしくお願いいたします。
No.1
- 回答日時:
C言語の文法というよりは、コンパイラオプションやリンクオプションの失敗のような。
どのようにコンパイル・リンクされているのでしょうか?
この回答への補足
ありがとうございます。
フリーコンパイラーですが、「Dev-C++」IDE環境と呼ばれ、最近のGUIのような統合環境で動いています。「Dev-C++」をインストールすると自動的に、MinGWというunix系の「gcc」や「gcc++」などその他のコンパイラーなどがインストールされます。
簡単なプログラムの練習のような気持ちで"Excute"メニューの"compile & run"などでコンパイルしております。4機種にはすべて同じ形で、「Dev-C++」をインストールしたつもりです。path設定などは統合環境なので自動的になされているとは思いますが。
他のフリーコンパイラー「LSIC86」や「Borland C++55」でもコンパイル動作はできます(エラーメッセージは出てきません)。コマンドプロンプト画面は静止しますが、プログラムが実行された結果にはなっていません。これはコンパイル失敗機種で起こります。
正常コンパイルできなければできる機種をうまく移動して使う予定ですが、このように機種(CPU)またはマザーボードなどによってうまくいかないことはあるのでしょうか?過去パスカル勉強中でも機種によっては、動かないこともあり、学習の挫折にいたったことが度々あります。
たびたびお答えいただきありがとうございます。どうもうまくいかないようで、動くノートPCでやることに決めました。他のコンパイラーも試してみたいと思います。またよろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<unistd.h>をVisualStudioでつ...
-
シリアル通信の受信待ちについて
-
C言語で、配列を使ったsinカー...
-
return (0)の括弧は何故付ける
-
C言語のグローバル変数の初期...
-
Delphiでクラスをオブジェクト...
-
OpenGLがコンパイルできません。
-
コンパイル時のスイッチについて
-
C#のサンプルソースのコンパイ...
-
すべてのリビルド: 0 正常、 0 ...
-
#If True Then の # って何??
-
ビープ音が鳴りません・・・
-
C++プログラム実行時エラー
-
アプリケーションのDLLファイル...
-
C#で char型とstring型の比較で...
-
32bitでコンパイルするには
-
Windowsで使える簡単なC言語
-
exe書き込み時のエラーについて。
-
ANSIエスケープシーケンスの色表示
-
strcpyが古い形式として宣言さ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<unistd.h>をVisualStudioでつ...
-
アプリケーションのDLLファイル...
-
実行後にコンパイルに失敗しま...
-
math.hに含まれる関数が使えない
-
c言語です コンパイルした時に...
-
共有ライブラリの内容確認について
-
すべてのリビルド: 0 正常、 0 ...
-
ビープ音が鳴りません・・・
-
C#で char型とstring型の比較で...
-
[COBOL] ソースの復帰
-
ヘッダーファイル『windows.h』...
-
シリアル通信の受信待ちについて
-
自作DLLの中身を暗号化
-
64ビットのlinuxで32ビットメモ...
-
gcc バージョン違いによるコン...
-
Cのコンパイルでコメントアウト...
-
プレコンパイルの意味を教えて...
-
gccでc++プログラムをコンパイ...
-
VBで作成したOCXでバージョンが...
-
VS2010環境で2点ほど質問
おすすめ情報