記事検索
逆アクセスランキング
ブログランキング

スポンサードリンク
アーカイブ

スポンサード リンク

【開発環境】Linuxでプログラミングを勉強するスレ【入門】


1:2015/03/03(火)05:31:04 ID:
プログラミング入門者のための
Linuxでの開発環境、IDE、エディタ、ディストリごとのインストール方法の情報交換スレッドです。
各種シェル、スクリプト言語も対象です。
おすすめの言語、IDE、エディタがあったら紹介してください。

上級者はいろいろと教えてください。
お願いします。
10:2015/03/03(火)22:16:48 ID:
>>1
どの言語で何を作るの?
11:2015/03/03(火)22:41:13 ID:
>>10
とりあえずプログラミングの勉強です。
プログラミングの勉強環境をつくりたいです。
言語はbookoffで入門書が安くなっているものを勉強したいです。

またはネットで情報が多い言語で、学びやすい言語がいいと思います。
2:2015/03/03(火)05:36:50 ID:
Debian GNU/Linux 7.8

入門者オススメは、以下のインストールです。
apt-get install geany
apt-get install build-essential
apt-get install default-jdk

C言語(gcc)、C++(g++)、Javaの環境がこれで完成です。
エディタはgeditが使いやすいです。

viとemacsは苦手です。
6:2015/03/03(火)20:25:14 ID:
>>2
> エディタはgeditが使いやすいです。



> apt-get install geany

なのか?
8:2015/03/03(火)21:26:14 ID:
>>6
両方とも文字に色がついて、変数とかわかりやくすなっているのが好きです。

コンパイル通るかどうかを確認するのに
いちいちターミナルでコマンド入力するのはめんどくさいので、
geanyでボタンでポチッと確認できるのが好きです。

エクリプスとかネットビーンズは使い方が難しくて理解できません。
オブジェクト指向なら大型のIDEがいいのはわかりますが、
入門にはgeanyいいと思って使ってます。
3:2015/03/03(火)15:54:54 ID:
我輩もviは苦手。
編集モードで↑↓→←を使ってしまうくせがあるから。
vimならけっこう行けるかも。

いま学んでいるのはScalaとOcaml。いわゆる関数型っぽいの。
Debian GNU/Linux (wheezy)
# aptitude update
# aptitude install ocaml scala

それではお決まりのHello, world!
$ ocaml
Objective Caml version 3.12.1

# print_string "Hello, world!\n";;
Hello, world!
- : unit = ()
# exit 0;;
$
$ scala
Welcome to Scala version 2.9.2 (OpenJDK Client VM, Java 1.6.0_34).
Type in expressions to have them evaluated.
Type :help for more information.

scala> print("Hello, world!")
Hello, world!
scala> :q

scalaの対話型インタプリターの終わり方はviっぽいね。
Ocaml http://ocaml.jp/ ここにチュートリアルとマニュアルがあります。
Scala http://www.atmarkit.co.jp/fjava/index/index_scala.html
5:2015/03/03(火)19:33:10 ID:
>>3
Ocaml聞いたことのない言語です。
Scalaは大きな本屋に書籍があったと思います。
7:2015/03/03(火)21:04:58 ID:
>>5
私と同じくDebian GNU/Linuxを使っていらっしゃるようで。
で、そのDebianの公式サイトでパッケージ一覧のページを見ると、
https://packages.debian.org/stable/
Lisp, Perl, Python, Ruby, PHP, JavaとともにOCamlの項目も設けられています。
私はこのページで最初にOCamlを知って興味を持ちました。

Scalaの書籍は、インプレスジャパンから出ている
『Scala スケーラブルプログラミング』を私は持っています。
9:2015/03/03(火)21:36:45 ID:
>>3
インストールして、
示されたとおりハローワールド実行してみました。
初体験でした。
4:2015/03/03(火)19:29:47 ID:
私はXないときのファイルの編集は、
nanoとかeeです。
vimは全くわかりません。
12:2015/03/03(火)22:54:18 ID:
プログラミングの勉強ならC++いっとけ。
何か作りたいならpythonやっとけ。
計算機いじるならFortran。
ここでは板違いかもしれないがWindowsもいじるならC#らくちん。
25:2015/03/04(水)19:23:01 ID:
>>12
C++は今勉強中です。
Pythonは試したことがないです。
28:2015/03/04(水)19:52:51 ID:
>>25
勉強だけならC++で完璧だ。でも実務用にpython, ruby, perl は最低一つ使えた方がよろしい。マジで
29:2015/03/04(水)22:53:29 ID:
>>25
C++はそんなに簡単に書ける言語じゃないのでまずCをしっかりやるべし。
30:2015/03/04(水)23:39:52 ID:
>>25
とりあえずC++出来ればPythonとか2~3日で使えるようになるよw

>>26
Visual Studioが難しいのか・・・そっか・・・

>>27
そういう話はこれから勉強しようという人に対して辛くない?
結局ELFの構造とか知りなさいってところからでしょ?
それを使ってなにかしたいという目標があるならまだしも、
よくわからないけど、とりあえずってノリでは絶対習得できないぜw

>>28
それはよく分かる!

>>29
そうだね、ただcppファイルに書くCって感じでいいと思うけどw
35:2015/03/05(木)13:47:18 ID:
>>30

> そうだね、ただcppファイルに書くCって感じでいいと思うけどw
「Cをしっかり」といってるところにcppに、とか言っちゃうあたり、CもC++もよく分かってない人?w
マルチレスまでして……w
こういうのが出てきちゃうから、>>23みたいな意見もやっぱり厳しすぎるとはいっても、かなり首肯せざるを
得ないんだよなあ。
13:2015/03/03(火)23:26:32 ID:
JAVAは?下火なの?
14:2015/03/03(火)23:39:45 ID:
JavaなんてC++で勉強してれば苦にならん。
15:2015/03/03(火)23:41:32 ID:
IDEはEclipseでいいんじゃない?
なんだかんだ使っている人多いから、調べた時の情報が多いし。
26:2015/03/04(水)19:24:23 ID:
>>15
Eclipseは操作を覚えるのに苦労しそうです。
Visual Stadio並に難しそうです。
16:2015/03/03(火)23:45:18 ID:
プログラミングの勉強にIDEわ、そもそもどーなん?
面倒でも手打ちでコンパイルから初めてほしいぞ。
19:2015/03/04(水)01:16:03 ID:
>>16
まあ、Cとかならそうだね。
でも、今どきはCから入るわけじゃねーだろうからなー。
で、PHPとかPerlやPython、Rubyとかだったら、まずはコマンドラインでやるだろうから、
あんまりがたがたいう必要もないかなーと思う。
20:2015/03/04(水)01:18:50 ID:
>>16
そうするとコンパイラに何を渡すかっていう勉強から始まるじゃん?
言語を勉強したいってだけだったら、とりあえず書いてメニューバーから実行をクリックしたら動くっていう環境がいいと思うよ?
俺も専門学校入った時はいきなりVisualStudioでコード書く授業だったし。

結局コンパイラやリンカがどういう動きをするのかはその次のステップでいいんじゃない?
21:2015/03/04(水)01:27:49 ID:
>>20
いや、LinuxでC、なら、gcc一択でしょうよ、それはw
22:2015/03/04(水)02:03:49 ID:
>>21
うん、そうだよね・・・あれ?なんか伝わってなかった?
gcc使うにしろ、IDEで色々やってもらった方が
これからはじめる人にとってはハードルが低くていいんじゃないかって話なんだけど・・・
17:2015/03/04(水)00:07:00 ID:
Rubyはどうなんですかね…
日本製だから日本語情報ありそうだしいいと思うんだけど
とか言いながらC++勉強してる自分
18:2015/03/04(水)01:02:19 ID:
GUI作らないのでエディタはgeanyだな。これ一本で実行もdebugもできるし。
anjutaとか使ってみたけどやっぱりgeanyがいい。
たぶんgeditでも同じことはできるのだろうけどこっちは一般的なテキスト編集専用にしてる。

Code::blocksとかどうなんだろう・・・とは思うけどたぶん使うことはなさそう。

23:2015/03/04(水)07:35:21 ID:
古い人間なもので、ソースコードをコンパイルするまでのおまじないは、はじめに知っておくべきだと思ってる。
何でこんな作業が必要なのかも同時に教える。
そこで吐き出されたマシン語を、直接編集する作業も教えておきたい。

まあ、しかし、こんな授業だと、クリエイターでなくてハッカー量産しちゃいそうだが。
24:2015/03/04(水)07:51:12 ID:
>>23
そのマシン語ってLinuxで?Windowsで?
27:2015/03/04(水)19:46:27 ID:
>>24
どっちでもおk
バイナリエディタでちょいちょいと
31:2015/03/05(木)05:58:42 ID:
>>27
そのちょいちょいとするやり方
ちょいちょいと教えてもらえたら
ありがたいのだけど。
32:2015/03/05(木)08:48:42 ID:
>>31
出来る人にとってはちょいちょいかもしれんが、
これからはじめる人にとっては茨の道。正直オススメしない。
とりあえずここにある内容を理解して、ようやくスタートラインだと思われ。
http://softwaretechnique.jp/OS_Development/Tips/elf.html

こんなん初心者に要求するとか無理ゲーw
>>27は技術自慢したいだけか冗談を言ってるんだと思うよ?
33:2015/03/05(木)09:01:32 ID:
>>32
まぁ使えるようになるには茨の道だろうけど
ちょっと隙間から覗いてみるくらいはいいかなと。

そのスタートライン勉強してみる
43:2015/03/07(土)12:49:15 ID:
>>32
helloをhalloにすることをはじめに教えてもらったんだが。
無論雑談混じりのネタとしてだけれども。

プログラムのソースがなんでコンパイルなんて必要なのか、完全に理解できて、変なところでつまづくことが無かったけどな。
34:2015/03/05(木)09:03:16 ID:
Geanyのメッセージウィンドウの文字サイズ
小さくて見づらい
大きくする方法を知りませんか?
36:2015/03/05(木)14:37:31 ID:
>>34
[編集]-[設定]の[インターフェイス]-[フォント][メッセージウィンドウ]で
フォントを選ぶ
38:2015/03/05(木)16:51:32 ID:
>>36
できました!
助かりました。
37:2015/03/05(木)14:41:32 ID:
ちなみにメッセージウィンドウの[端末]のフォントは
[編集]-[設定]の
[端末]-[端末][フォント]
で設定した後にGeanyを起動し直さないと反映されないようだ
39:2015/03/05(木)20:02:58 ID:
>>37>>36
勉強になりました。
40:2015/03/05(木)23:06:12 ID:
ターミナルで実行。
python -c 'print "Hello World!"'
41:2015/03/05(木)23:07:22 ID:
ファイルにして実行するとき。

#!/usr/bin/python
print "Hello World!"
42:2015/03/05(木)23:12:52 ID:
geanyでpythonのファイルを保存したら、文字に色分けがされてました。
ポチッとボタンを押したら実行結果も表示されました。
PerlとかRubyもできそうですね。
44:2015/03/07(土)19:24:04 ID:
NINJA-IDE is a cross-platform integrated development environment (IDE).
integrated development environment (IDE) for Python
はどうなんだろ。
45:2015/03/07(土)21:24:40 ID:
http://anjuta.org/
Debian で入れてみました。
46:2015/03/08(日)18:38:02 ID:
http://www.codelite.org/
Debianで入れてみました。
47:2015/03/08(日)18:47:47 ID:
48:2015/03/08(日)19:07:03 ID:
みなさん、Androidアプリの開発環境は何を使っていらっしゃいますか?
Android Studioが正式リリースされたのでそちらのほうを入れようか、
それとも、これまでとおりEclipse + Android SDKにしようか、どうしようかな。

Andoridの開発者向けの公式ページを覗くと、Android Studioへ移行すべきだ
ってことが書かれてありますね。
49:2015/03/10(火)10:43:01 ID:
geanyはgcc?
gccでアセンブラできる?
アセンブラでhello world?
cをディスアセンブル?
50:2015/03/10(火)14:14:36 ID:
1. t.c を以下の内容で作成
#include<stdio.h>
int main() { printf("Hello world.\n"); return 0; }

2. -S でコンパイルするとアセンブルコード t.s が出来る
gcc -S t.c

3. t.s をアセンブルする
gcc t.s
 すると ./a.out が出来る。それを実行すると普通に Hello world.

4. t.s 内の上の方にある
.string "Hello world."
 を
.string "Hello work."
 に書き換え
gcc t.s && ./a.out
するとあら不思議、でもないが
51:2015/03/10(火)21:02:35 ID:
>>50
そんなオプションがあったのね
これは面白い
53:2015/03/11(水)01:08:57 ID:
面白いな
nasmとか超懐かしい

>>50
gdbやobjdumpでdisassembleは良く使ってたがgccで出来るのは知らんかった
52:2015/03/10(火)22:13:36 ID:
アセンブリ言語でHello world!

このドキュメントを読んでやってみました。
Linux Assembly HOWTO
http://www.tldp.org/HOWTO/Assembly-HOWTO/

LinuxのX86アセンブラnasmとgasのそれぞれで"Hello, world!"
http://www.tldp.org/HOWTO/Assembly-HOWTO/hello.html
にある二つのコードをエディタで入力して、
nasmのほうがhello.asmというファイル名で、
gasのほうがhello.Sというファイル名で保存。
ビルドの仕方はここ↓
http://www.tldp.org/HOWTO/Assembly-HOWTO/build.html
nasmのほうは:
$ nasm -f elf hello.asm
gasのほうは:
$ as -o hello.o hello.S
両者共通:
$ ld -s -o hello hello.o
実行:
$ ./hello

nasmとgasについてはIBMのサイトに日本語による詳しい説明が。
http://www.ibm.com/developerworks/jp/linux/library/l-gas-nasm.html
54:2015/03/13(金)23:38:26 ID:
vimさえあれば何もいらない
55:2015/03/14(土)03:39:07 ID:
ubuntu, debian, centos,,,
どれも最初に vim を明示的にインスコした方がいいな。
56:2015/03/14(土)08:05:08 ID:
Cで九九の表を出力したった
http://toro.open2ch.net/test/read.cgi/tech/1399242969/
57:2015/03/14(土)18:38:32 ID:
public class prog441{
public static void main(String arg[]){

int a;

a=10;
a+=5;
System.out.println("a+=5 :"+a);

a=10;
a-=5;
System.out.println("a-=5 :"+a);

a=10;
a*=5;
System.out.println("a*=5 :"+a);

a=10;
a/=5;
System.out.println("a/=5 :"+a);
}
}
58: :2015/03/20(金)17:11:27 ID:
//program 4-5-1

public class prog451{
public static void main(String args[]){

String movieStar=new String("ELIZABETH");
System.out.println(movieStar + " TAYLOR");
}
59:2015/03/20(金)17:17:13 ID:
>>57 >>58
Javaですか?
60:2015/03/20(金)18:47:32 ID:
>>59
Javaです。独学です。レベルが低くてすいません。
//今日は文字列の出力を勉強しています。+で結合できます。
61:2015/03/25(水)22:45:54 ID:
java、c#ならテキストエディタを使うよりIDEを使うべき。

定義先にジャンプできる、docをポップアップで表示できる、
呼び出し元やクラス構造が見える、コード補完がちゃんと動く、
エラーを随時表示してくれる、自動でimport文追加してくれる等。

そういった環境だから、長ったらしい変数/メソッド/クラスが苦にならない。
ゲロのようなクラス階層も大丈夫。printfデバッグなくても複数のファイルをたどりながらデバッグできる。
じゃなきゃやってられんよあんな化物。
62:2015/04/14(火)23:01:08 ID:
こないだスクールに通いました。
HTML5の講座です。
geanyで入力しました。
始まりのタグを入力すると対応する終わりのタグが表示されるので便利でした。
画像が動いたので感動的でした。
PHPとかJavascriptも勉強して見たくなりました。
64:2015/04/15(水)19:17:26 ID:
JavaScript勉強中。なかなか難しい。
65:2015/05/28(木)11:28:47 ID:
私もGeanyを導入しました。
プログラミングだけでなく、HTML文書やテキスト文書などの
作成に利用しています。タブ式なので便利ですね。
66:2015/05/28(木)19:06:00 ID:
geanyでプログラミングの基礎が身についたら、
次はエクリプスとかでオブジェクト指向を勉強したいです。
67:2015/05/29(金)12:07:35 ID:
Javaでプログラミングといえば今はAndroidアプリ。
Androidアプリの開発環境といえばAndroid SDKが出てきたんで、
Eclipseの存在価値は....
69:2015/05/31(日)19:33:46 ID:
>>67
情報サンクス。
Windowsも持っているので探してみます。
68:2015/05/29(金)12:08:54 ID:
ごめん。Android SDKじゃなくてAndroid Studioね。
SDKのほうはEclipseのほうだった。
70:2015/06/01(月)06:08:44 ID:
Android StudioはLinux版もあるよ。
71:2015/06/15(月)19:02:02 ID:
TIS-100
http://store.steampowered.com/app/370360
本物のプログラミング言語ではないけど
おもろいぞ
72:2015/06/16(火)16:36:29 ID:
>>71
なにーそれ? 解説きぼんぬ
73:2015/06/29(月)11:40:15 ID:
Androidアプリは比較的実用性があるという意味ではいいんだが、
オブジェクト指向を学ぶためには向いてないかもしれない。
サンプルのソースを理解するだけでも継承とかの概念必要だし。
最初は普通にJavaやった方がいいと思う。
74:2015/06/30(火)18:57:49 ID:
C言語のプログラムの入門書に触れて、
簡単なプログラムのソースコードなら読めるかなと
思ってソースコードを実際にみてまず最初にぶつかるのが、
マクロとかいうの。

#define
#error
#if
#ifdef
#ifndef
#else
#elif
#endif

これなに? #defineあたりは入門書で見たような気がするけど、
他は見たことがない。
75:2015/06/30(火)19:25:41 ID:
Debian(Ubuntu)系でリポジトリにある
パッケージのソースコードを入手するには:

apt-get install dpkg-dev
apt-get source パッケージ名
これで作業中のディレクトリにダウンロードされますね。

Redhat(Fedora)系では:

yum install yum-utils
yumdownloader --source パッケージ名
とすればどうやらよいらしいのですが、
私の環境ではないので確認できません。
誤っていたらごめんなさい。
76:2015/06/30(火)22:18:42 ID:
何を質問してるのかよくわからん
質問してるのかどうかさえよくわからん
77:2015/09/16(水)05:16:31 ID:
gFortran実行環境が整いました。
Fortranスーパーコンピューターではいまだに現役と聞いています。
78:2015/09/18(金)20:39:00 ID:
まあ、Fortranなんかだとね、あんまり複雑な計算で他の言語に移植したくても誰もできない、みたいなライブラリなどあったりするから。

だから現役とはいっても、そういうライブラリを使わなきゃなんない、とかそういう理由だし、そもそもスーパーコンピュータで動かすようなプログラム書く機会なんてありそうなの?
79:2015/09/19(土)06:47:04 ID:
普通の並列化プログラミングでいいんじゃない?
最近はPCでも30年前に世界最速だったCRAY-2より処理能力高いし
80:2015/09/24(木)14:04:23 ID:
Geany 1.22をDebian GNU/Linux 7で使っていますが、
Geanyの挙動がおかしいです。
半角データを入力していると、カーソルや文字の配置が重なったり
離れすぎたり、その両方にゆれたりして変になります。
Leafpadではこのような異常が起こったことはありませんでした。

そろそろDebianを8.0にグレードアップしようと思っているので
そうすれば改善するかもしれませんが。
81:2015/09/26(土)01:46:57 ID:
Linuxでプログラミングするなら素直にemacsかvimを使えよw
82:2015/10/06(火)10:56:29 ID:
マジレスすると、EmacsはGeanyよりも重たすぎて、
Vimは日本語名をつけてあるファイルを扱うのにすごく不自由で。
フォントも変だし。
83:2015/10/08(木)19:48:01 ID:
マジレスとか言いながら、物凄い的外れなこと言うのなw
まー、知らないんだろうから、どうしようもないのだろけど、
だから、「素直に」って言ってんのに
もちょっと謙虚になんな。お前より頭のいいやつは世の中には山程いるよ?
84:2015/10/11(日)23:57:30 ID:
Emacsは重たくて使い物にならない。
Vimは操作性が悪くてアンチユーザフレンドリー。
85:2015/10/12(月)22:19:13 ID:
>>84

まだわからないのかw
なんて無能なんだw

なあ、やめとけ。
お前にはLinuxは向かないと思う。
っていうか、お前じゃ絶対使えるようにならないと思うw
86:2015/10/12(月)22:43:45 ID:
別なの使えばいいじゃん
無理にEmacsだのVimだの使わなくていいよ
87:2015/10/12(月)23:26:24 ID:
よせ
こういうバカは次にはきっと「Linuxは使い物にならない」とか言い出すんだからよけいなことを言うな。

はっきりいって初心者は情報の多いemacsやvimを使うのが一番いいんだよ。
そしてLinux上の多くのツールがemacsやvimを基本に置いているんだからな。
88:2015/10/13(火)00:12:22 ID:
そしたら「Linux使わなきゃいいじゃん」と言うだけ
使いにくい道具を貶めるのに時間つかうより
自分に合う道具を探した方がいいと思うんよ
94:2015/11/21(土)07:55:40 ID:
Linuxディストリでプログラミングをする利点は無料で
基本的なツールを手早く揃えられる点に尽きそうだなぁ。
環境はデフォルトでインスコされてるのを最初に触ったら
それを使い続けたらいいんでない。
96:2015/11/24(火)22:37:17 ID:
ここにはコボラーはいないのか…
97:2015/11/25(水)10:33:00 ID:
http://toro.open2ch.net/tech/
↑にCOBOLスレ立てればいいんじゃね
98:2015/11/28(土)07:01:54 ID:
あいかわらずタコへの誹謗中傷が好きだなあ。
99:2015/11/28(土)14:07:16 ID:
emacsやvimはタコじゃないと思うがなあw





Linuxが関わると一気にコアな話題も出て来ておもしろいですね。
私は開発はWindowsとMacで行っているのでLinux上のviやemacsでガリガリに開発出来る方は憧れます。
 

コメントする

名前
 
  絵文字
 
 

スポンサード リンク

スポンサード リンク