於 Program 分類下的文章
原文翻譯 偶而翻譯一些有趣的文章分享
Ada :坦克車,一台金剛不壞但很醜的坦克車。如果你告訴別人你開這台車,人們會失控的笑你。這是真的 但實際上!難道你想開著跑車在戰場上嗎?(取自Amit Dubey)
Assembly Language(組合語言):原裝引擎,你必須要自己打造你的汽車,而且在行駛的時候你要自己手動加汽油。如果你夠謹慎,就可以讓它風馳電掣跟飛的一樣。
另一個說法:人車一體 =口= You are the car.
Basic:簡單的市區用小車,到附近的便利商店買東西用。它曾經在想學開車的駕駛間非常流行。但最近被剝的只剩下殼,主要的製造商正重新設計它,新款式可以用來做長途旅行,和舊款之間只有造型比較像。
後記
其實這些問題的處理方式都是按照錯誤時產生的參考執行的這裡僅稍微紀錄並提供大家參考若有任何錯誤歡迎指教
這篇紀錄是因為在決定好好從頭玩一次RoR之前機器已經照著網路的散落的教學文章亂裝機器導致環境有點混亂所以把相關移除的紀錄和照著XDite大步驟安裝時遇到的問題紀錄一下 另外在安裝ImageMagick時的錯誤請參考 另一篇
移除rvm
1. rvm implode
2. gem uninstall rvm
3. rm -Rf /etc/rvmrc ~/.rvmrc
移除pow
1 <code>$> curl get.pow.cx/uninstall.sh | sh </code>
執行mysql_install_db 馬上先Error
FATAL ERROR: Could not find ./bin/my_print_defaults
解決辦法如下
12345 mysql_install_db --verbose --user=`whoami` \--basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql \--tmpdir=/tmp註:user的地方請帶入自己的使用者帳號
安裝 gem install mysql 時Error
curl: (7) couldn’t connect to host
原因:pidof 相依套件網址連不到,這裡 提供我剛好有下載的壓縮擋
$> brew edit pidof #pidof 可改打入無法連結該網址的套件名稱
出現如下
class Pidof < Formula
url ‘http://www.nightproductions.net/downloads/pidof_source.tar.gz
homepage ‘http://www.nightproductions.net/cli.htm’
md5 ’663763ee1feb0596fa3731aafa7e1880′
version ’0.1.4′
def install
system “make all”
man1.install gzip(“pidof.1″)
bin.install “pidof”
end
end
把url 換成 下載下來的檔案路徑 ex : ‘file:///~/Library/Caches/Homebrew/pidof_source.tar.gz’
在執行一次安裝即可
brew 失敗時請善用 brew doctor 和brew missing 會告訴你該怎麼處理
附上查詢Mysql版本指令 mysql -V
繼續Error
Enter current password for root (enter for none):
/usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation: line 85: .my.cnf.4387: Permission denied
/usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation: line 86: .my.cnf.4387: Permission denied
/usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation: line 87: .my.cnf.4387: Permission denied
/usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation: line 89: .my.cnf.4387: Permission denied
/usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation: line 58: .mysql.4387: Permission denied
/usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation: line 60: .mysql.4387: No such file or directory
處理:一般權限問題 就斟酌把/usr/local/Cellar/mysql/5.5.10/bin/ 目錄權限開一下
後續安裝總算都被炸完了LOL
問題 : 使用 Homebrew 安裝ImageMagick 失敗
錯誤訊息 : Error: Failed executing: make install
系統提示:
Also try:
brew doctor
to check your setup for common problems.
brew missing
to check installed packages for missing deps.
原因:安裝過其他的程式有 /usr/bin/pkg-config , 可能是python等等 在這裡我被炸的原因是因為安裝了 Mono Framework (Orz)
解決辦法:
1. 依照提示使用 brew doctor 指令
/usr/bin is in your PATH before Homebrew's bin. This means that system-
provided programs will be used before Homebrew-provided ones. This is an
issue if you install, for instance, Python.
2. 系統提供的解決方案
A . 考慮 將paths 中的/usr/local/bin 置於 /usr/bin 之前 以Mac來說 路徑在/etc/paths 記得sudo 修改順序。由於本人並非深厚Unix like 系統使用者,所以不清楚這樣修改會衍伸什麼問題,不過經過測試,的確可以解決問題。
B. 處理系統提示其他 pkg-config 以遭遇到的問題來說可以選擇移除 Mono Framework
將 /Library/Frameworks/Mono.framework 整個砍掉即可,在/usr/bin/pkg-config的連結會一並被移除。
3. 系統提供的其他解決方案
To resolve this issue, re-brew pkg-config with:
brew rm pkg-config && brew install pkg-config
不過因為該檔案權限被保護之類的關係,實際測試結果無法解決問題。
由於覺得目前的解決辦法實在不是最佳的答案,如果有相關更好的解決辦法歡迎分享指教。
詳細的教學請參考 這裡 本篇將整個說明的部份範例整合並做詳細的註解,分享給有需要的人。
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="iTextSharp.text" %>
<%@ Import Namespace="iTextSharp.text.html.simpleparser" %>
<%@ Import Namespace="iTextSharp.text.pdf" %>
<%@ Import Namespace="System.Collections.Generic" %>
protected void Button1_Click(object sender, EventArgs e)
{
Document doc = new Document(PageSize.A4,50,50,80,50);//宣告一個文件,設定文件大小(Margin:左,右,上,下)
MemoryStream Memory = new MemoryStream();//使用記憶體暫存將內容擷取至doc
PdfWriter PdfWriter = PdfWriter.GetInstance(doc, Memory);//使用PdfWriter 將doc的內容導入Memory 並繪製成pdf
//各種字型設定 BaseFont設定字型
BaseFont bfChinese = BaseFont.CreateFont(Request.PhysicalApplicationPath+@"font\MSJH.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
//↑中文字須配合中文字型 將中文字抓到目錄下
//設定字型其他樣式
Font ChFont = new Font(bfChinese, 12);
Font ChFont_blue = new Font(bfChinese, 15, Font.NORMAL, new BaseColor(51, 0, 153));
//Chunk為文字片段簡單說就是string 不會自行斷行 ("內容",字型物件)
Chunk c0 = new Chunk("<c0>第一句</c0>",ChFont);
//Phrase為句子 可以將chunk彙整至Phrase 但Phrase也是句子也不會斷行需透過 \n 或 Environment.NewLine
Phrase p1 = new Phrase(c0);
Chunk c1 = new Chunk("<c1>第二句</c1>", ChFont);
Chunk c2 = new Chunk("<c2>第三句 </c2>", ChFont);
//透過chunk將個別的文字先寫入後再透過Phrase 的Add將個別的chunk加入
Phrase p2 = new Phrase(c1);
p2.Add(c2);
//段落 可以設定樣式如下
Paragraph pg = new Paragraph();
pg.Add(p1);
pg.Add(p2);
pg.Alignment=1;//設定左右對齊 0:左 1:置中 2:右
pg.FirstLineIndent = 20f;//段落首句縮排
pg.SetLeading(0.0f, 2.0f);//設定行句
繼續閱讀 »
環境
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.7.0]
mysql2 (0.2.7)
Rails 3.0.7
問題
啥都還沒做光把資料庫預設為mysql 指令rails new webstie -d mysql
開完controller 馬上出現下面
TypeError
can't convert Fixnum into String
原因:因為你的Mysql 密碼是數字! (驚)
解決辦法
1. 修改mysql 密碼 (治標)
mysqladmin -h localhost -u root password
2. 更改Gem程式碼(治本)
Git上討論的解法
https://github.com/krekoten/mysql2/commit/68795e295e64faee357a56947b5cf09a2de397c1
中文步驟
編輯
ssl_set(*opts.values_at(:sslkey, :sslcert, :sslca, :sslcapath, :sslciper))
user = opts[:username]
- pass = opts[:password]
+ pass = opts[:password] ? opts[:password].to_s : nil
host = opts[:host] || 'localhost'
port = opts[:port] || 3306
spec/mysql2/client_spec.rb 備註:+號不要放啊 第一行 那是程式 不用怕XD
}.should raise_error(Mysql2::Error)
end
end
+
+ it 'should convert password to string' do
+ lambda do
+ client = Mysql2::Client.new(:password => 12345)
+ end.should_not raise_error(TypeError, "can't convert Fixnum into String")
+ end
it "should accept connect flags and pass them to #connect" do
klient = Class.new(Mysql2::Client) do
database = opts[:database]
錯誤訊息:.rvm/gems/ruby-1.9.2-p180/gems/dbi-0.4.3/lib/dbi/utils/date.rb:57:in <class:Date>': undefined method
deprecate' for DBI::Date:Class (NoMethodError)
測試用rb
# simple.rb – simple MySQL script using Ruby DBI module
require "dbi"
begin
# connect to the MySQL server
dbh = DBI.connect("dbi:Mysql:mysql:localhost", "root", "")
# get server version string and display it
row = dbh.select_one("SELECT VERSION()")
puts "Server version: " + row[0]
rescue DBI::DatabaseError => e
puts "An error occurred"
puts "Error code: #{e.err}"
puts "Error message: #{e.errstr}"
ensure
# disconnect from server
dbh.disconnect if dbh
end
執行 $ ruby test.rb 出現下列訊息即成功
Server version: 5.1.51
近期迴響