ネットワークを介したC言語開発環境

このQ&Aのポイント
  • ネットワークを介したC言語開発環境の構築方法は可能か
  • コンパイラはgccを使用し、Eclipseを開発環境として利用
  • WindowsマシンとLinuxマシンでネットワーク経由でコンパイル
回答を見る
  • ベストアンサー

ネットワークを介したC言語開発環境

可能であれば、教えていただきたく思います。 不可能であれば、不可能と回答いただければ幸いです。 <要求事項> (1)コンパイラはgccを使用する。 (2)Eclipseを開発環境として使用する。 (3)コンパイラはLinuxマシン、EclipseはWindowsマシンで使用とし、ネットワーク経由でコンパイルする。 (4)ソースファイルは、Linuxマシン側に保存する。 注)LinuxはFedora14を想定。 以上、4点を満たす環境を構築することは可能なのでしょうか。 <心配事> 文字のエンコードがWindowsとLinuxで異なるので、文字のエンコード関係の作業が必要なのではと思っています。その辺についても触れていただければ幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.4

えぇと.... つまり, 「Linux で動かすプログラムを Windows で開発したい」 ってこと? なんというか, 突っ込む労力に見合うかどうか疑問だなぁ.... とりあえず ・全部 Linux で作業する ことを勧める. これでいけるなら何ら問題なし. でも, 意外と調べてみたりするもんだなぁ.

参考URL:
http://monoist.atmarkit.co.jp/mn/articles/0710/30/news138.html
nao-221
質問者

お礼

これは試してみる価値がありそうです。 ありがとうございます。

その他の回答 (3)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

現在の「要求事項」は棚上げしておくとして.... とりあえず 「開発したプログラムは最終的にどのような環境で実行するのか」 が問題になると思うんだけど, これはどう考えているのでしょうか? 最終的に Windows で実行するなら Windows でコンパイルした方がいいだろうし, Linux で実行するつもりなら Linux でコンパイルすべきだと思う. あと, 1人で開発するならともかく複数人で開発するなら Subversion や Git, あるいは Mercurial などといった「ソースコードを管理するシステム」を使うことを検討した方がいいんじゃないかな (もちろん「1人で開発する」場合にも使える). これらはいずれも Eclipse に対するプラグインがあるので, 「Eclipse 経由で使う」ことが可能です. さらに, 「Windows 用の gcc」もあるので, これを使えば「Linux マシンでコンパイルする」という面倒なことも避けられる. まとめると ・Windows 上の Eclipse を開発環境として使う. ・ソースファイルは Subversion なり Git なり Mercurial なりを使って Linux マシンで管理する. ・「ソースファイルの編集~コンパイル~テスト」は Windows マシンで行う. ... 普通の開発環境だ....

nao-221
質問者

補足

言葉足らずなところがあったかもしれません。 LinuxとWindowsどちらでファイルを実行するのかどうかまでは考えていませんでした。あくまでも、まだ勉強をするための開発環境ですので、そこまで考えていませんでした。 ただ、以下のことを考えるとLinuxでのコンパイルが良いかと思います。 2つのロケーションでそれぞれ閉じたネットワーク上に同じような環境を作って作業をしたいということを想定して、自分なりに考えた結果⇒ノートPCにLinuxを入れて移動可能なサーバーとして、それぞれのロケーションにあるWindowsをクライアントとして使用するという考えに至った次第です。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

こんなことを誰がいったいどんな理由で要求するのか想像できない. 何をしたいんだ!? ちなみに「Linuxのgccで作った実行ファイルをWindows上のEclipseで動かす」のは不可能ではなかったりします. よくやるよ....

参考URL:
http://stackoverflow.com/questions/1474673/building-gcc-cross-compiler-from-linux-to-windows
nao-221
質問者

お礼

回答ありがとうございます。 Eclipseで実行出来るのですね。 >何をしたいんだ!? ローカルネットワークでPCを選ばず開発できる環境と考えたときに、今の私の知りうる情報で組み立てるとこうなったのです。

noname#140082
noname#140082
回答No.1

ファイル共用は、Sambaを使用し文字コードはUnicode使用すれば、いいかと思うけど、そもそもLinuxのgccで作った実行ファイルをWindows上のEclipseで動かすことはできないでしょう。 認識が間違っていたら、ごめんなさい。

nao-221
質問者

お礼

回答ありがとうございます。 そうか、sambaを使えば、非常に楽になりそうですね。 sambaの存在をすっかり忘れていました。 Eclipseでのコンパイルはなんとか頑張ってみます。

関連するQ&A

  • 開発環境の複製方法 (Docker ?)

    お世話になります。 仕事で、LinuxマシンでC++のプログラムを開発しております。 今、別の複数のLinuxマシンにも同じ開発環境を構築したいと考えています。 具体的には、コンパイラ(gcc)のバージョン、Eclipseのバージョンと設定、 依存するライブラリなどを同じものに揃えたいです。 そのときに、できれば1つ1つのマシンでインストール、設定する手間を 減らしたいのですが、例えばDockerなどを使えば簡単にできるのでしょうか? Dockerについて少し調べてみたのですが、私のケースに当てはめると、 どうやってEclipseを起動してデバッグ実行するのか、などの方法がよくわかりませんでした。 お手数をお掛けしますがよろしくお願いします。 (事情があって、なるべく早くご回答いただけると嬉しいです)

  • 開発環境について

    CおよびC++などの勉強を考えているんですが、 よく企業の求人でC C++ができる方募集ってのを見かけます。 そこで質問なんですが、 一概にC C++って言っても、linuxでのgccや windowsでのcygwin環境に おけるgccだったり、無償のwindows用のbccだったり、VC++だったり どのプラットホームでどのコンパイラを使えばいいか、分かりません。 実際に会社などではフリーのコンパイラで製作してる場合もあるよ! とかいった具合なのでしょうか? 自分は個人的にvine linux3.2とwindows xp professionalを使用しているんですが、linuxのgcc環境でいくら勉強しても、それでwindows用のアプリケーションは作れないよ?とかあるんでしょうか? それとも、普通は最初に作りたいものが先きに決まっていて、それを 作るためには、このOSでこのコンパイラの組み合わせの環境じゃないといけないとかあるんでしょうか? 作りたいものと、コンパイラや環境選びの基準がいまいち分からないので、現場で製作をしておられる方や、プログラミングに詳しい方が いましたら是非、ご教授よろしくお願い致します。

  • LinuxでのC言語開発に便利な統合開発環境

    Linux OS上で、C言語の開発をすることになりました。 そこで、質問なのですが、使い勝手のよい便利な統合開発環境はありますでしょうか?また、その際に使われているLinuxのディストリビューションは何でしょうか? 私自身、以下の開発環境を実装してみましたが、非常に動作が重く、とても開発環境として使っていけるとは思えませんでした。 統合開発環境 Eclipse3.3 JAVA実行環境 jre1.6 Linuxのディストリビューションは Vine Linux3.2 です。 現状、試行錯誤しながら、どのディストリビューションとどの開発環境の組み合わせがいいかをあれこれ検証しているだけの時間があまりない状況です。そこで、できればみなさんの構築実績のある組み合わせをお教えいただければと思っております。(また、それに伴う構築手順のHPなどがあれば幸いです。) 大変恐縮ではありますが、何卒宜しくお願いいたします。

  • 【C言語】配列の中に配列を入れたい

    const double A[2] = {1.0, 2.0}; double B[2][3] = { { A[0], A[1], 0.0 }, { 0.0, 0.0, 0.0 }}; このようなプログラムをコンパイルしようとすると、 初期化子の要素が定数ではありません というエラーが出てしまい困っています。どのように解決したらいいでしょうか。 OSはlinux、コンパイラgccです。

  • H8の開発環境について

    秋月のH8の開発キットを使っています。 開発環境としてgccとHEWのうち、私はHEWを採用しましたが、gccとHEWの違いって一体何なのでしょうか。また、gccを使用している人が書いたソースをHEWでコンパイルしたり、といった事は可能なのでしょうか?

  • C++11について

    C++11は、Windows,Linux,Macともに使えるものなのでしょうか? (1)結局、コンパイラが対応してるかしてないか? (2)C++11は、まだ完成していない? (3)gccのバージョンで使える、使えないが決まるの? (4)コンパイルする場合、どんなオプションをつける必要がある? (その他になにかしないといけないことがある?) といろいろわからないことだらけなので、C++11について詳しい方や、使用したことある方解答お願いします。 よろしくお願いします。

  • ターゲットがUNIXなんですが、Windowsで開発をするには?

    UNIXでC言語を使用してXwindowアプリを開発しているのですが、 効率があまり良くないので、Windowsの統合環境で開発できないかと考えています。 実現するヒントとか、すでに構築済みという方がいらっしゃいましたらご教授願えますでしょうか? UNIXマシンのスペックがそんなに高くなく(Pentium3 600MHz/RAM256MB)、 またOSがEclipseなどもサポートしていないので仕方がなく、viとEmacsで開発しています。 コンパイラはgcc、デバッガはgdbを使用しています。 作成しているのはコンソールアプリではなく、Xwindowのアプリです。 理想はWindows上で、Eclipseのような統合環境上でソースを編集し(ソースはUNIXマシンからSambaで参照)、 リモートでビルドを行い、Windows側でブレークを貼りデバッグできればとても快適です。 ちなみにWindowsマシンのスペックは悪くないです。 Pentium4 2.4GHz/RAM512MB です。

  • PHP開発環境 にJava開発環境を統合

    Eclipseを使用して、PHPの開発環境を構築しています。アンインストールせずに、Javaの開発環境を統合して構築することは可能でしょうか?そもそもEclipseはJava開発用であったためか、Java開発環境にPHP開発環境をプラグインしていることが多いようです。Windowsであるため、インストーラでインストールしたいと考えています。

    • ベストアンサー
    • Java
  • クロス環境の構築

    i686マシンにi586用のバイナリを作成できるようクロスコンパイル環境を構築中なのですが、gccのコンパイルエラーで躓いています。 http://0x100.com/Gentoo/PPC64/kernel_crosscompile.html を参考に (binutils のインストール) $ tar zxf binutils-2.14.tar.gz $ mkdir binutils-2.14/work $ cd binutils-2.14/work $ ../configure --target=i586-linux --prefix=/usr/local $ make # make install (gcc のインストール) $ tar zxf gcc-3.3.2.tar.gz $ mkdir gcc-3.3.2/work $ cd gcc-3.3.2/work $ ../configure --target=i586-linux --prefix=/usr/local --enable-languages=c,c++ $ make 【 「../../gcc/config/i386/linux.h:232:20: signal.h: そのようなファイルやディレクトリはありません」というエラー。そこで、gcc-3.3.2/work/gcc/Makefile の LIBGCC2_INCLUDES に -I/usr/include を追加 】 $ make 【 今度は 「/usr/local/i586-linux/bin/ld: cannot find -lc」というリンカオプションエラー。gcc-3.3.2/work/gcc/Makefileの SHLIB_LC = -lc をコメントアウトすることで応急処置】 $ make (略) checking whether the C compiler ( /home/****/gcc-3.3.2/work/gcc/xgcc -B/home/****/gcc-3.3.2/work/gcc/ -B/usr/local/i586-linux/bin/ -B/usr/local/i586-linux/lib/ -isystem /usr/local/i586-linux/include -O2 -g -O2 ) works... no configure: error: installation or configuration problem: C compiler cannot create executables. make: *** [configure-target-libiberty] エラー 1 で止まってしまいました。 何か分かる方がいましたら、アドバイスをお願いします。 文字数制限のためにあまり詳しくかけなかったので、何か足りない点があればご指摘下さい。 [ホスト環境] CPU : Pen3 OS : Fedora core 3 gcc : バージョン 3.4.2 20041017

  • Cコンパイラ(gcc)について

    はじめまして。 C言語のコンパイラについてお尋ねしても宜しいでしょうか。 以下のファイルが存在します。 ・test.c(C言語のソースファイル) ・test.exe(上記ソースをコンパイルしたもの。Windows環境で現在稼動してます) test.cの中身を一部変更し、コンパイルする必要があるのですが、 (恥ずかしながら、コンパイルした人間はもう居ないので) 何のコンパイラを使ったか、判りません。 コンパイルするときに使用したであろうコマンドがあります。 gcc test.c -WALL -03 -o test.exe 察するに、gccというコンパイラを使用したと思い MiniGW (http://yanchde.gozaru.jp/mingw/wingw_start.html) を使用してコンパイルをしてみました。 コンパイルは通るのですが、出来上がるexeファイルのサイズが 非常に小さいです。 (オリジナルのtest.exeは500KB以上ありますが、今回コンパイルで出来たものは40kbほどです) この場合、、オリジナルのtest.exeと今回コンパイルしたexeは 異なる挙動をする可能性はありますでしょうか。。 初歩的な質問で恐縮ですが、どうかご教授頂けると、幸いです。