リンカについて?

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
紫苑

リンカについて?

#1

投稿記事 by 紫苑 » 16年前

Cについて勉強し始めた ド 初心者です。
リンカってなんですが?
まったくわからなくて。。。
詰まってます・・。
どんなものか簡単におねがいしますm(. . )m

dic

Re:リンカについて?

#2

投稿記事 by dic » 16年前

まだまだ初心者の私が言うのもなんですが、初心者にはこの本がお勧めです

http://www.amazon.co.jp/%E3%83%97%E3%83 ... 071&sr=8-1

値段的にもやさしいのではないでしょうか

たいちう

Re:リンカについて?

#3

投稿記事 by たいちう » 16年前

"リンカ"でググればいろいろ見つかるでしょう。
http://e-words.jp/w/E383AAE383B3E382AB.html

簡単に書くと、、、

C言語のプログラムから、マシン語のプログラムの断片を作るのがコンパイラ。
作業の名前はコンパイル。
他の断片やライブラリと組み合わせて、実行ファイルを作るのがリンカ。
作業の名前はリンク。

文脈によっては、リンクがコンパイルに含まれることもあります。
「プログラムをコンパイルして実行ファイルを作る」とか。


あと、dicさんのお薦めのK&Rは、良い本だとは思いますが、
かなり気合の入った初心者向けだと思います。
一般の初心者さんにとっては、もっと易しめの本の後の方が良いのではないかと。

lbfuvab

Re:リンカについて?

#4

投稿記事 by lbfuvab » 16年前

ソースをそのまま機械語に直したのがオブジェクトファイル(*.obj)で
それらのオブジェクトファイルとライブラリを合体させて実行ファイル(*.exe)にするのがリンカです。

・・・・と私は理解しています。

ムンバ

Re:リンカについて?

#5

投稿記事 by ムンバ » 16年前

こんばんは。
C言語の勉強を始めて3ヶ月弱という初心者です。(汗

・プログラムを実行するまでの過程

ソースファイルの作成→コンパイル→リンク→実行

ソースファイル→コンパイラ→オブジェクトファイル

オブジェクトファイル
   + (←リンカ)  →  実行可能ファイル
ライブラリ

実行可能ファイル→デバッガ→プログラム

ソースファイル:自分で作るプログラムファイル。

ライブラリ:予め用意されているプログラムファイル。

オブジェクトファイル:ソースファイルをコンパイルしたファイル。

コンパイル:人間語を機械語に変換する作業。変換するツールは、コンパイラ。

リンク:オブジェクトファイルとライブラリを結合する作業。結合するツールは、リンカ。

デバッガ:実行可能ファイルを実行させて、正しく動作するかを確認するツール。


http://www.bk1.jp/product/02916069?partnerid=02goo03
 ↑
この本に、こんな感じで解説されてます。
宣伝するつもりは無いです。(笑
私はこの本で、実行ファイルができる仕組みを知りました。

(修正 lbfuvabさんと、書き込みかぶってしまいました。申し訳御座いません。<謝)

たかぎ

Re:リンカについて?

#6

投稿記事 by たかぎ » 16年前

現状どこまで理解できているのか不明なので、とりあえず厳密な話をします。
分からなければ、自分で調べるなり、改めて具体的な質問をするなりしてください。

http://www.kijineko.co.jp/tech/creintro ... hases.html

↑でも書きましたが、翻訳フェーズの8.のことを普通は「リンク」と呼びます。そして、「リンク(link)」を行うプログラムのことを「リンカ(linker)」といいます。

ムンバ

Re:リンカについて?

#7

投稿記事 by ムンバ » 16年前

それは、有料では無いのですか?<たかぎさん

たかぎ

Re:リンカについて?

#8

投稿記事 by たかぎ » 16年前

> それは、有料では無いのですか?

すみません。意味がわかりません。

ムンバ

Re:リンカについて?

#9

投稿記事 by ムンバ » 16年前

失礼しました。
たかぎさんのサイトでもC言語の勉強できるのですね?
覗いて見ました。知らなかったのです。
ぜひ、そちらでも勉強させて頂きます。

たかぎ

Re:リンカについて?

#10

投稿記事 by たかぎ » 16年前

> たかぎさんのサイトでもC言語の勉強できるのですね?

もしかして有料コンテンツだと思ってました?
さすがにそんな"せこい"ことはしません。
一応営利事業なので、アフィリエイト広告だけは貼っています。
気に入った方は、投げ銭だと思って協力してもらえると嬉しいですが、何ら強制しませんし、懇願するものでもありません。

ムンバ

Re:リンカについて?

#11

投稿記事 by ムンバ » 16年前

はい。思ってました。^^;
すみません。でも、せこいとは思ってませんので。(笑
今の私の知識では正直、難しいですが
もう少し勉強を進めて、たかぎさんのサイトで勉強できたらと思います。
その節は宜しくお願いします。
失礼しました。(謝

たかぎ

Re:リンカについて?

#12

投稿記事 by たかぎ » 16年前

> 今の私の知識では正直、難しいですが

確かにちょっと難しい内容が多くなっています。
入門者レベルの内容というのは他のサイトでもいろいろありますので、それ以外となると、どうしてもマニアックな内容になってしまいます。
いまさらポインタがどうとかいうサイトをもう一つ作っても仕方がありませんので。

紫苑

Re:リンカについて?

#13

投稿記事 by 紫苑 » 16年前

いろいろなことありがとうございます。
これから頑張ります。
ホントに詳しく教えてもらって心から感謝です!

紫苑

Re:リンカについて?

#14

投稿記事 by 紫苑 » 16年前

もう一ついいですか?
さきほどはほんとありがとうですm(. . )m

コンパイラについいてです。
コンパイラをダウンロードしようとしてるんですが。。。
C言語のコンパイラが欲しいのに。。。
C++のコンパイラばっかりで。。。
どうしたらいいんですか?
できればフリーのソフトがいいんでが。
言い過ぎですかね。。

Mist

Re:リンカについて?

#15

投稿記事 by Mist » 16年前

現在一般に広まっているC言語(C90)コンパイラでいいのであれば、C++は互換性がありますのでソースファイルの拡張子を.cとすればCでコンパイルできますよ。

紫苑

Re:リンカについて?

#16

投稿記事 by 紫苑 » 16年前

C90。。。
一般に広まってるかわからないんですが。。
いっかいやってみます^^
ダメもとですし 笑

紫苑

Re:リンカについて?

#17

投稿記事 by 紫苑 » 16年前

あ。もう一つだけ。。 ←「だけ」になるかわからないですが 笑
みなさんわどんなコンパイラとリンカを使ってるんですか?

Mist

Re:リンカについて?

#18

投稿記事 by Mist » 16年前

私は用途に合わせていっぱい使ってます(^^;

・BCC 5.5   ちょっとしたコンソールアプリ作る用
・VC++2008EE  DXライブラリでゲーム作る用
・CBC6.0    Windowsなツールなんか作る用
・HEW     仕事用
・GCC     仕事用

初めてであればVC++2008EEがいいと思いますよ。
ダウンロードもインストールもそんなに手間じゃないですし、ググればいろいろ情報がありますし。

紫苑

Re:リンカについて?

#19

投稿記事 by 紫苑 » 16年前

教えてくれてありがとうございます^^
じゃぁ、VC++2008EEをダウンロードします。
本当にありがとうございましたm(. . )m

閉鎖

“C言語何でも質問掲示板” へ戻る