最近一直努力在build toolchain,在GLIBC碰到一個不知道怎麼解的bug(segfault in __libc_start_main),轉用EGLIBC,目前起來頭好壯壯。不過同事擔心會不會有什麼問題,奉命survey一下。
EGLIBC (Embedded GLIBC)一開始應該是真的因為glibc太痴肥,在embedded的system上效能不張(西元2005是沒有cortex可用的)而發起的計畫,可參見jserv寫的"EGLIBC初探"和"EGLIBC於S3C2410 ARM SoC的體驗",但是後來2009-05-05 Debian 的maintainer Aurelien 宣布Debian以後要用EGLIBC,主要原因有:
cmchao 發表在 痞客邦 留言(2) 人氣(986)
先解釋一什麼叫 Static Code Analysis(簡稱SCT好了),顧名思義:不會動的時候分析一下code。也可以看到wikipedia的條目
這通常由自動化的工具來分析(不然,我想Code Review也算吧),主要希望能在source code 階段,發現一些邏輯上或程式相依上可以發現的潛在問題。有人會覺得這件事compiler不就會做了嗎?用gcc -Wall, 用vc /W4,開下去就幫你檢查完了。可是事實上compiler只會幫你檢查syntax是否符合語言的規範,一些邏輯上問題他不會幫你檢查,SCT就是補足這方面的不足。
舉例以C/C++來說(引用自
cmchao 發表在 痞客邦 留言(4) 人氣(4,570)
身為一個open source 的阿宅,只有新toolchain就會很想試用看看,雖然Code Sourcery 每半年才release 一版,但有時候會需要做交插測試要換來要去。之前在晶心科技工作,在強力的toolchain team支援下,二三天就可以有一版新版,一直都缺少一個有方便的方法可以切換toolchain,想記錄一下用過的方法。
基本的工作環境假設是連到沒有sudo 權限的server(這樣本機看叫叫叫片的時候才不會lag)
方法一:設在 PATH 環境變數
export PATH=$HOME/tool/gnuarm/arm-2010q1/bin:$PATH
cmchao 發表在 痞客邦 留言(6) 人氣(363)

由前同事bboy 介紹,vim 強大plugin trinity,比Neo 還神的三位一體,可以將vim 打造文字模式的source insight。取這個名稱的原因是他將三個不同的plugin整合起來,分別是:
可以顯示宣告的 "Source Explore" 利用ctags 在右邊顯示key word的 "taglist"可以顯示當前檔案目錄結構的 "NERD_tree"
成果就是這樣
cmchao 發表在 痞客邦 留言(0) 人氣(5,788)
雖然很多人都說gcin 比較好用,但不想裝一堆有的沒有的還是用ibus吧
參考了
http://reic.twbbs.org/post/1/431
http://vicamo.blogspot.com/2009/07/boshiamy-for-ibus.html
cmchao 發表在 痞客邦 留言(0) 人氣(1,816)
Self host 的意思就是自已compile 自已。
clang 做為一個llvm 前端的c/c++ parser 已經在2/4可以成功的parse "clang + llvm",並經過三回合的自我優化(*)後仍可以通過所有的測試。另外clang 編譯boost(**),也只剩三個header 不能過。
以上代表clang 對C++ 的支持已經快達到一個成熟的程度。2.7版即將在3/22發表,有興趣的人可以玩看看啦。不過我好像離C++ 愈來愈遠了,哭哭
cmchao 發表在 痞客邦 留言(0) 人氣(256)
git push 原本預設的行為是沒啥問題就直接送進遠端的repo,但這是有一個潛在的風險,當遠端的repo不是bare(請看git clone --help)而遠端的使用者用正在改working tree時,會造成working tree的base異動(會發生啥事?)。大大們承認這是當初設計上的失誤,想在之後的版本上修正,但又不想像1.6.0 把 '-'拿掉搞的天怒人怨,要來個漸進式的招術
在1.6.4,當push 回一個 non-bare 的repo 時,會產生警告,但是還是讓你丟進去
在1.6.5後,預設的值是拒絕。
cmchao 發表在 痞客邦 留言(0) 人氣(483)
C++0x 引進了一個新的標準r-value reference 號稱可以大大的增進程式的效能。上星期Visual C++ Team 發表了一篇STL Performance 談到他們運用在VS 2010 和自已的STL library 上的成果。如果以vector的insertion和reallocation來看的話,大概可以快 2 ~ 3 倍。
至於什麼是R-value reference呢?有興趣的可以看Rvalue References: C++0x Features in VC10, Part 2,不想看英文的可以參考ptt's yoco315 翻譯的中文版
cmchao 發表在 痞客邦 留言(0) 人氣(699)
回別人的文順便貼一下
Q: 要怎麼更動set 中element 的內容呢?
A: Visual C++ Team Blog 昨天也有提到這個問題
請看問題三:http://0rz.tw/TNBKr
cmchao 發表在 痞客邦 留言(0) 人氣(249)
全文90% 參考Ubuntu - 建立 ARM Toolchain (Cross Compiler)
不一樣的部份就是版本比他用的更新,然後提一下碰到的問題
環境:乾淨的ubuntu 9.04
cmchao 發表在 痞客邦 留言(8) 人氣(5,507)