<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>おれ最前線ねっと &#187; Objective-C</title>
	<atom:link href="http://ore.saizensen.net/archives/tag/objective-c/feed" rel="self" type="application/rss+xml" />
	<link>http://ore.saizensen.net</link>
	<description>イェ〜〜ィ。見てる〜〜〜？？</description>
	<lastBuildDate>Tue, 12 Jul 2011 06:31:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.3</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://ore.saizensen.net/archives/tag/objective-c/feed" />
		<item>
		<title>[Ubuntu]Ubuntu8.10へObjective-C環境をインストールしてみた。[Objective-C]</title>
		<link>http://ore.saizensen.net/archives/200</link>
		<comments>http://ore.saizensen.net/archives/200#comments</comments>
		<pubDate>Fri, 06 Feb 2009 09:15:56 +0000</pubDate>
		<dc:creator>bubbkis</dc:creator>
				<category><![CDATA[Lang]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[UNIX]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://ore.saizensen.net/?p=200</guid>
		<description><![CDATA[1週間くらい前からObjective-Cを触り始めて見ました。Cすら一度も触ったことないから分からんことだらけですけど・・・ で、前は初代Macbookを持っていたんですけどThinkpadX61へ乗り換えと同時に手放し [...]]]></description>
			<content:encoded><![CDATA[				<p>1週間くらい前から<strong>Objective-C</strong>を触り始めて見ました。Cすら一度も触ったことないから分からんことだらけですけど・・・<br />
				で、前は初代Macbookを持っていたんですけどThinkpadX61へ乗り換えと同時に手放してしまったので<br />
				X61上の<strong>Ubuntu8.10でObjective-C</strong>を学習しときます。<br />
				学習用に「<strong>詳解Objective-C2.0</strong>」という本を用意しました。この本を終えたら新しくMacbookを購入し直そうと思います。<br />
				iPhoneだって持ってないんですけどね・・・・</p>
				<div style="text-align: center;">
				<div class="imageframe centered" style="width: 200px;"><a title="詳解Objective-C2.0" rel="lightbox[pics200]" href="http://ore.saizensen.net/wp-content/uploads/2009/02/51kl8v91cel_ss400_.jpg"><img class="attachment wp-att-203" src="http://ore.saizensen.net/wp-content/uploads/2009/02/51kl8v91cel_ss400_.thumbnail.jpg" alt="" width="200" height="200" /></a></p>
				<div class="imagecaption"><a href="http://www.amazon.co.jp/gp/product/4797346809/ref=sib_rdr_dp">詳解Objective-C2.0</a></div>
				</div>
				</div>
				<p>とりあえずいつも通り、<strong>Ubuntu8.10へのObjective-C環境のインストール方法</strong>をまとめておきます。</p>
				<ol>
				<li>いろいろとインストール。こんだけ入れると取り合えず<strong>Objective-C</strong>の環境は整います。
				<pre>sudo apt-get install build-essential gobjc gobjc-multilib libgnustep-base-dev gnustep gnustep-devel gnustep-dl2 doxygen</pre>
</li>
<li>↑だけインストールするだけだとNSObjectが使えないので↓も行う。（Objective-C2.0本を進めていると、どうしてもNSObjectが必要だったので・・・つかNSObjectが使えないとretain、releaseとかが無い！）<br />
・Foundationフレームワークを使えるようにパスが通るディレクトリへリンクを張る為に↓を作成。</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/sh</span>
&nbsp;
<span style="color: #007800;">frompath</span>=<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>include<span style="color: #000000; font-weight: bold;">/</span>GNUstep
<span style="color: #007800;">topath</span>=<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>lib<span style="color: #000000; font-weight: bold;">/</span>gcc<span style="color: #000000; font-weight: bold;">/</span>i486-linux-gnu<span style="color: #000000; font-weight: bold;">/</span><span style="color: #000000;">4.3</span><span style="color: #000000; font-weight: bold;">/</span>include
&nbsp;
<span style="color: #000000; font-weight: bold;">for</span> i <span style="color: #000000; font-weight: bold;">in</span> <span style="color: #ff0000;">&quot;AppKit&quot;</span> <span style="color: #ff0000;">&quot;Cocoa&quot;</span> <span style="color: #ff0000;">&quot;Cynthiune&quot;</span> <span style="color: #ff0000;">&quot;DBKit&quot;</span> <span style="color: #ff0000;">&quot;EOAccess&quot;</span> <span style="color: #ff0000;">&quot;EOControl&quot;</span> <span style="color: #ff0000;">&quot;EOInterface&quot;</span> <span style="color: #ff0000;">&quot;EOModeler&quot;</span> <span style="color: #ff0000;">&quot;FSNode&quot;</span> <span style="color: #ff0000;">&quot;Foundation&quot;</span> <span style="color: #ff0000;">&quot;Frameworks&quot;</span> <span style="color: #ff0000;">&quot;GNUMail&quot;</span> <span style="color: #ff0000;">&quot;GNUstepBase&quot;</span> <span style="color: #ff0000;">&quot;GNUstepGUI&quot;</span> <span style="color: #ff0000;">&quot;GormCore&quot;</span> <span style="color: #ff0000;">&quot;GormObjCHeaderParser&quot;</span> <span style="color: #ff0000;">&quot;GormPrefs&quot;</span> <span style="color: #ff0000;">&quot;HighlighterKit&quot;</span> <span style="color: #ff0000;">&quot;Inspector&quot;</span> <span style="color: #ff0000;">&quot;InterfaceBuilder&quot;</span> <span style="color: #ff0000;">&quot;Operation&quot;</span> <span style="color: #ff0000;">&quot;PostgreSQLEOAdaptor&quot;</span> <span style="color: #ff0000;">&quot;ProjectCenter&quot;</span> <span style="color: #ff0000;">&quot;Renaissance&quot;</span> <span style="color: #ff0000;">&quot;TalkSoupBundles&quot;</span> <span style="color: #ff0000;">&quot;WizardKit&quot;</span> <span style="color: #ff0000;">&quot;gnustep&quot;</span>
<span style="color: #000000; font-weight: bold;">do</span>
	<span style="color: #c20cb9; font-weight: bold;">ln</span> <span style="color: #660033;">-s</span> <span style="color: #007800;">$frompath</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$i</span> <span style="color: #007800;">$topath</span>
<span style="color: #000000; font-weight: bold;">done</span></pre></div></div>
				
				<p>リンク張っているのは/usr/include/GNUstep以下にある全てをリンクしてるだけです。勉強始めたばっかなんで各ファイルにどんな機能、役割があんのかは全くもって不明ですwww<br />
				で、作成したスクリプトファイルを実行。</p>
				<pre>sudo sh /保存したスクリプトのパス/link_libobjc.sh</pre>
</li>
</ol>
<p>以上で<strong>Ubuntu8.10へのObjective-C環境構築</strong>はおわりです。<br />
これで「<strong>詳解Objective-C2.0</strong>」に載ってるソースそのままで動くと思います。（どっかで躓いたらまた記事修正しときます。）<br />
最後に、Ubuntu8.10上でソースをコンパイルする時なんですが</p>
<pre>gcc ソースファイル名 -o コンパイル後ファイル名 -lobjc -lgnustep-base</pre>
				<p>としてください。<br />
				あと、分からんというか面倒くさいというか、mainソースファイルから自前で作成したヘッダファイル(.hファイル)を読み込んでコンパイルするとき</p>
				<pre>gcc ソースファイル名 -o コンパイル後ファイル名 -lobc -lgnustep-base -include ヘッダファイル名1 -include ヘッダファイル名2</pre>
<p>みたいにしないとコンパイル出来んのですが、複数のヘッダファイルを読み込むとき、「-include ヘッダファイル名」を何度も書くのは面倒くさいですな・・・なんか良い方法あるんですかねぇ？</p>
<p><strong>2009/02/17 追記</strong><br />
Tomuteさんコメントありがとうございます。助かりました。<br />
<strong>詳解Objective-C2.0</strong>を読み進めていると、Tomuteさんのブログにも書いてるようにコンパイル時に</p>
<pre> error: cannot find interface declaration for ‘NXConstantString</pre>
				<p>とエラー返してくるので、コンパイルオプションに&#8221;-fconstant-string-class=NSConstantString&#8221;を追加しないとダメみたいです。またTomuteさんに教えてもらった-Iオプションも追加。</p>
				<pre>gcc ソースファイル名1 ソースファイル名2 ソースファイル名3 -o コンパイル後ファイル名 -lobjc -lgnustep-base -I/指定ディレクトリ -fconstant-string-class=NSConstantString</pre>
<p>こんな風にするみたいです。</p>
<p>< 参考にしたサイト： <a href="http://d.hatena.ne.jp/tomute/20090112/1231809116">Tomute’s Notes [Linux] Ubuntu LinuxでObjective-C></p>
]]></content:encoded>
			<wfw:commentRss>http://ore.saizensen.net/archives/200/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://ore.saizensen.net/archives/200" />
	</item>
	</channel>
</rss>

