無分類雜文 28 Aug 2009 06:38 pm
|
推到 Twitter!
推到 Plurk!
|
在 Snow Leopard 編譯套件的注意事項
Snow Leopard( MacOS 10.6)出來了,這次更新些甚麼我就不多說了(請自行 Google 官方的 Release Note)。
不過因為我神經太大條,搶先升級,不幸英勇陣亡(不怕死的在開發機升級)了 。所以在這裡稍微提醒一下後面想升級的 Devloper 一些升級以後會遇到的雷….
1. 不是所有原先的軟體都能跑在 Snow Leopard 上,比如說 PlugSuit Agent …。
2. /usr/local/ 下裝的東西會神祕的消失,於是我的 mysql 就不幸的也死了..還好裡面都是測試資料。
3. 當我發現 mysql 不幸消失之後,打算用 port install 重裝 mysql,結果 macports 也爛了。
解法是去拉 trunk 版的,自己編譯安裝…:/4. 安裝 mysql 的時候,發現 readline 之類的一些也要順便 upgrade,就順手 upgrade 了。
結果我開 rails console 時,因為牽扯到 readline,console 就死掉了…
直覺解法就是重編安裝我的 ruby(Ruby Enterprise Edition )。
然後在 make 時候也爛了…還好昨天在裝 sphinx 時,也遇到 make 不過的問題。跟燈哥稍微討論了一下,才發現是 *Snow Leopard 的 GCC profile 有改,預設 arch 是 x86_64*。解法當然就是用 32-bit mode compile。
ruby 也順利的循此法重裝好了…
5. 因為 ruby 重裝了,所以換我的 rmagick 爛了。
rmagick 是按照這一篇裝的,但是會遇上 ImageMagick make 爆炸的問題。所以必須把 script 中 ./configure 那一行取代成
這個 gist 建議的參數。這樣才能順利 make & make install。(我一直不停的換參數測試,重編了不下十次才成功…幹)
6. mysql 最後是裝 mysql.com 提供的 mpkg,而非手動編。因為 mysql 重裝了,mysql ruby gem 也要重裝,很不幸的 rubyforge 只有 mysql 2.8.1,但這版本是有問題的,會跟 rails 相衝(跑有關 db 的 rake command 會出現 NameError: uninitialized constant MysqlCompat::MysqlRes)。2.7.x 版的沒有這個問題,但很遺憾的 rubyforge 拿掉了 2.8.x 以下的 gem,只能抓 tgz 手動編。這時候又會撞上鬼打牆的 32/64 bit 問題,最終解法是如果你是 snow leopard 的用戶,mysql 必須裝 x86_64 版 mpkg,2.7 才能順利的編上去。
到目前為止,目前 Rails 的環境算是可以順利的跑了,但是我非常想殺人…..
如果你是 Rails Developer ,我會強烈建議不要升 10.6 …
有什麼地雷我會繼續上來靠北和更新解法的。
( 抱頭懺悔….orz)
This
work is licensed under a
Creative Commons Attribution-Share Alike 2.5 Taiwan License.
[本文採 cc-by-sa 授權,白話意思就是可以直接轉走,但是要附出處與作者)]
6 Responses to “在 Snow Leopard 編譯套件的注意事項”
on 28 Aug 2009 at 8:00 pm 1.zonble said …
這個災情真是慘重。 :/
on 28 Aug 2009 at 8:15 pm 2.motephyr said …
你還蠻慘的耶XD
我在我的macbook上開發iphone程式 比起你來說單純很多 升級應該還好…我在想你統統幹掉重裝比較快吧…
on 29 Aug 2009 at 1:55 pm 3.Hitomi said …
真是血尿…看來我沒裝是對的
on 31 Aug 2009 at 8:24 pm 4.tszkan said …
如果把macports upgrade 好像會好一點.
我upgrade 了未有問題吧..
on 02 Sep 2009 at 12:12 am 5.鳥毅 said …
可是我升級完 /usr/local 都還在耶,我猜是安裝程式偵測到你裝的mysql
on 04 Sep 2009 at 1:30 pm 6.xhan said …
奇怪。我更新了后 /usr/local 的都在。
当然mysql 也没出问题。