質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

Q&A

解決済

1回答

739閲覧

EclipseのC言語環境構築

kuyan

総合スコア6

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Eclipse

Eclipseは、IBM社で開発された統合開発環境のひとつです。2001年11月にオープンソース化されました。 たくさんのプラグインがあり自由に機能を追加をすることができるため、開発ツールにおける共通プラットフォームとして位置づけられています。 Eclipse自体は、Javaで実装されています。

0グッド

0クリップ

投稿2022/05/13 04:05

編集2022/05/13 04:06

前提

mainというプロジェクト下のsrc下のmain.cとmain2.cの実行
プログラムはEclipse内のテンプレートのHello World ANSI C プロジェクトを使用
イメージ説明

実現したいこと

ソースファイルの実行(main.c, main2.cのそれぞれ実行)

発生している問題・エラーメッセージ

mainというプロジェクト下のsrc下のmain.cを単体での実行は出来るのですが、main2.cを作成し、実行すると以下のエラーが出力され、デバッグファイルからmain.exeが消えてしまっていて実行が出来ない状況です。

Info: Internal Builder is used for build gcc -o main.exe "src\\main.o" "src\\main2.o" src\main2.o: In function `main': C:\Users\1821038\Desktop\pleiades-e4.5-ultimate-jre_20160312\pleiades\workspace\main\Debug/../src/main2.c:10: multiple definition of `main' src\main.o:C:\Users\1821038\Desktop\pleiades-e4.5-ultimate-jre_20160312\pleiades\workspace\main\Debug/../src/main.c:14: first defined here collect2.exe: error: ld returned 1 exit status

該当のソースコード

c

1#include <stdio.h> 2#include <stdlib.h> 3 4int main(void) { 5 puts("!!!Hello World!!!"); /* prints !!!Hello World!!! */ 6 return EXIT_SUCCESS; 7}

試したこと

再起動, タスクマネージャーでのexeファイルの終了, プロジェクトファイルの再作成

補足情報(FW/ツールのバージョンなど)

Eclipse 4.5 Mars Ultimate 64bit Full Edition
Cプロジェクト

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

"main.o と main2.o の両方に関数 main() があるもんだから実行モジュールが作れない"
と言うてます。

投稿2022/05/13 04:48

episteme

総合スコア16614

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kuyan

2022/05/13 04:53

ご回答ありがとうございます。プログラムの書き方が悪いということでしょうか?main,main2のソースコードの違いとしてput内のみ変えているのですが。
dodox86

2022/05/13 05:10

@質問者kuyanさん "main"と言うEclipseのプロジェクトの中に、main.cとmain2.cの2つが含まれていて、それぞれにmain()関数があり、リンク時に競合している、ということです。 1つのプロジェクトの中には"main"関数が1つだけあるようにするのが一般的です。ファイルmain2.cをプロジェクトから削除し、別のプロジェクトに含まれるようにするのが簡単です。
episteme

2022/05/13 06:36

要は「mainとmain2 それぞれプロジェクトを(個別にふたつ)作れ」ってことになるかと。
kuyan

2022/05/19 04:46

遅れてしまって申し訳ございません。 プロジェクト2つ作ったら解決できました。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問