2011年8月30日 星期二

OpenWrt for CNS3XXX

apt-get install subversion build-essential libncurses5-dev zlib1g-dev gawk git ccache gettext libssl-dev xsltproc

./scripts/feeds update -a
./scripts/feeds install -a
make defconfig
make menuconfig
(chose cns3xxx....etc)
make

make V=s

Output in ./bin

bin/
`-- cns3xxx
|-- md5sums
|-- openwrt-cns3xxx-rootfs.tar.gz
|-- openwrt-cns3xxx-uImage
|-- OpenWrt-SDK-cns3xxx-for-Linux-i686-gcc-linaro_uClibc-0.9.32.tar.bz2
|-- OpenWrt-Toolchain-cns3xxx-for-arm_v6k-gcc-linaro_uClibc-0.9.32_eabi.tar.bz2
`-- packages
|-- base-files_79-r28007_cns3xxx.ipk
|-- busybox_1.18.5-1_cns3xxx.ipk
(.............)
|-- iptables_1.4.10-4_cns3xxx.ipk
|-- iptables-mod-conntrack_1.4.10-4_cns3xxx.ipk
|-- iptables-mod-nat_1.4.10-4_cns3xxx.ipk
|-- kernel_2.6.39.2-1_cns3xxx.ipk
|-- kmod-crc-ccitt_2.6.39.2-1_cns3xxx.ipk
(.............)
|-- libc_0.9.32-79_cns3xxx.ipk
|-- libgcc_linaro-79_cns3xxx.ipk
(.............)


./target/linux/cns3xxx/
./target/linux/cns3xxx/config-default
./target/linux/cns3xxx/config-3.8

./build_dir/linux-cns3xxx/
./build_dir/linux-cns3xxx/linux-2.6.39.2

host related: ./build_dir/linux-cns3xxx/host/
kernel related: ./build_dir/linux-cns3xxx/linux-cns3xxx/
userspace application: ./build_dir/linux-cns3xxx/target-arm_v6k_uClibc-0.9.32_eabi/
cross toolchain related: ./build_dir/linux-cns3xxx/toolchain-arm_v6k_gcc-linaro_uClibc-0.9.32_eabi/


./build_dir/target-arm_v6k_uClibc-0.9.32_eabi/OpenWrt-SDK-cns3xxx-for-Linux-i686-gcc-linaro_uClibc-0.9.32/
./toolchain/uClibc/uClibc.config
./toolchain/uClibc/uClibc.config-locale


staging_dir/
Final toolchain is at
staging_dir/toolchain-arm_v6k_gcc-linaro_uClibc-0.9.32_eabi/bin/arm-openwrt-linux-uclibcgnueabi-gcc



OpenWrt
https://openwrt.org/

OpenWrt Wiki
http://wiki.openwrt.org/

[OpenWrt] platforms
https://dev.openwrt.org/wiki/platforms

TOC
[OpenWrt Wiki] Welcome Advanced User!
http://wiki.openwrt.org/doc/howto/user.advanced

[OpenWrt Wiki] Documentation - Developing
http://wiki.openwrt.org/doc/start#developing

[OpenWrt Wiki] Documentation - Technical references
http://wiki.openwrt.org/doc/start#technical.references

[OpenWrt Wiki] Documentation - Building
http://wiki.openwrt.org/doc/start#building


[OpenWrt Wiki] OpenWrt Buildroot – Installation
http://wiki.openwrt.org/doc/howto/buildroot.exigence

[OpenWrt Wiki] Image Generator
http://wiki.openwrt.org/doc/howto/obtain.firmware.generate
If you do not want to download a prebuild image but you do not want to go through the entire compilation process either, the alternative is to use the Image Generator (former called Image Builder). This is an already precompiled OpenWrt build environment suitable to create custom images without compiling anything.


[OpenWrt Wiki] Using the SDK
http://wiki.openwrt.org/doc/howto/obtain.firmware.sdk
The SDK is a relocatable, precompiled OpenWrt toolchain suitable to cross compile single userspace packages for a specific target without compiling the whole system from scratch.


OpenWrt Buildroot
http://downloads.openwrt.org/docs/buildroot-documentation.html

Web Interface Overview - OpenWrt Wiki
http://wiki.openwrt.org/doc/howto/webinterface.overview

2011年8月28日 星期日

ldconfig & ld.so.conf

鳥哥的 Linux 私房菜 - 原始碼與 Tarball 軟體管理員 - ldconfig 與 /etc/ld.so.conf
http://linux.vbird.org/linux_basic/0520source_code_and_tarball.php#library_ldconfig

用Open Source工具開發軟體: 新軟體開發關念 - Chapter 4. GNU Compiler Collection
http://www.study-area.org/cyril/opentools/opentools/x869.html

CLI Magic: ldconfig and friends
http://www.linux.com/archive/feature/114007

綠角財經筆記總目錄


綠角財經筆記總目錄
http://greenhornfinancefootnote.blogspot.com/2009/05/blog-post_10.html

2011年8月17日 星期三

quilt

quilt new <patch_name> #start a new patch
quilt edit <file_name> #edit a file (adding patch)
quilt diff
quilt diff -z #The diff of orig patch and the new patch
quilt refresh #Commit changes to the patch

quilt pop
quilt pop -a
quilt push
quilt push -f
quilt push -a

quilt top
quilt files
quilt patches <file_name>



[OpenWrt Wiki] Working with patches
http://wiki.openwrt.org/doc/devel/patches

How To Survive With Many Patches - Introduction to Quilt
http://www.suse.de/~agruen/quilt.pdf


露營用具

營具:營帳、營燈、手電筒、燃料火把 (地布?)
折凳、吊床、充氣墊
個人衛生用品:睡袋、睡墊、盥洗用具、換洗防寒衣物、鞋、帽、雨衣
扇子
工具:地圖、指北針、繩索、塑膠袋、瑞士刀

炊事帳、炊事桌、冰箱

炊具:爐子(卡式爐 or 汽化燈)、炊具、調味料、沙拉脫
醫藥用品



露營備忘錄
http://www.easytravel.com.tw/action/camp/page1.htm

我的露營用具
http://tw.myblog.yahoo.com/olivertu-blog/article?mid=-2&prev=454&l=f&fid=11

露營裝備器材檢查表
http://content.edu.tw/junior/scouting/ul_edu/new_page_20.htm

露營器材
http://www.tksg.org.tw/camping/camp-2.htm

2011年8月16日 星期二

2011年8月15日 星期一

Missing "Bookmark All Tabs" in Firefox5

I can't find the "Bookmark All Tabs" feature in Firefox 5 that used to be there. Was it moved or just removed?
http://support.mozilla.com/zh-TW/questions/861289#answer-230216

Some menu entries in the main menu bar are hidden if you use the mouse and only appear if you use the keyboard to open the menu (Bug 626825).

You can see the difference if you use Alt+F to open the File menu or other menus like the Edit menu (Alt+E) and compare that to what you see if you use the mouse to open the menu after you have made the menu bar visible by tapping Alt or by pressing F10.

"Bookmark All Tabs" (Shift+Ctrl+D) no longer shows in the Bookmarks menu unless you open the Bookmarks menu via the keyboard (Alt + B).

Linux embeded build system

Yocto Project
http://www.yoctoproject.org/


Openembedded
http://www.openembedded.org/index.php/Main_Page

[wiki] OpenEmbedded
http://en.wikipedia.org/wiki/OpenEmbedded


OpenWrt
http://mkl-note.blogspot.com/2011/08/openwrt.html

linux-next

How to develop against linux-next
http://lwn.net/Articles/289245/

Now set up remote tracking branches (I tend to do one for linux-next and one for linus as):
git remote add -t master -f linus git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
git remote add -t master -f next git://git.kernel.org/pub/scm/linux/kernel/git/sfr/linux-next.git
The point of keeping the linus tree is that eventually all the branches that comprise next are merged into linus, at which point your patches will be ready for submission against vanilla linus.
To download the current trees of the day, simply do a
git remote update


[wiki] Linux kernel
http://en.wikipedia.org/wiki/Linux_kernel

' Linux Next ' Begins To Take Shape
http://www.internetnews.com/skerner/2008/02/-linux-next-begins-to-take-sha.html

2011年8月11日 星期四

新竹市環境保護局 廚餘自主堆肥桶課程可獲贈自主堆肥桶

新竹市環境保護局 ::環保新聞::
http://www.hccepb.gov.tw/News/News1.asp?IndexFlag1=2003/04/29/18/18/11

2011/03/21 參加廚餘自主堆肥桶課程可獲贈自主堆肥桶!!
http://www.hccepb.gov.tw/News/news.asp?IndexFlag1=2003/04/29/18/18/11&IndexFlag2=2011/03/21/11/10/58

2011/04/19 廚餘自主堆肥課程感謝市民熱情參與,10場次均已額滿!!
http://www.hccepb.gov.tw/News/news.asp?IndexFlag1=2003/04/29/18/18/11&IndexFlag2=2011/04/19/11/09/32

賀!! Cavium一天就漲了13%!!

沒有漲跌幅的限制
真是開眼界了



五天從32跌到26, 一天就從26衝回31
大盤也才漲3%, CAVM一天就漲了13%
值得慶祝!!!!!





...................
不過...慶祝甚麼呢..都賣光了ㄟ
^o^|||

2011年8月10日 星期三

Setup GIT server by git-daemon

  1. Installing git-daemon
    sudo yum install git-daemon
  2. Start the git daemon
  3. git daemon
    git daemon --export-all
  4. Prepare the repository
    To allow git-daemon to read your project you have to add the file .git/git-daemon-export-ok to your project. Or use --export-all option to git-daemon

And...done!!!

There is no access control in git-daemon.


8 Ways to Share Your Git Repository
http://agile.dzone.com/news/8-ways-share-your-git

Git: trouble with setting up daemon, trouble with git clone
http://stackoverflow.com/questions/1112622/git-trouble-with-setting-up-daemon-trouble-with-git-clone

How to recover Git objects damaged by hard disk failure?

How to recover Git objects damaged by hard disk failure?
http://stackoverflow.com/questions/801577/how-to-recover-git-objects-damaged-by-hard-disk-failure

corrupt object on git-gc
http://www.kernel.org/pub/software/scm/git-core/docs/howto/recover-corrupted-blob-object.txt

How do you restore a corrupted object in a git repository (for newbies)?
http://stackoverflow.com/questions/3613682/how-do-you-restore-a-corrupted-object-in-a-git-repository-for-newbies

2011年8月3日 星期三

法拍屋資訊

司法院 法拍屋公告
http://www.judicial.gov.tw/db/alx.asp

透明房訊
http://www.tom.com.tw/#
法務部 各分署不動產拍賣公告
http://www.tpkonsale.moj.gov.tw/tpk3000/

商周景點

蘇花公路108公里處 宜蘭南方澳 紹安景觀台
GPS: N24'32'38.40" E121'51'10.07"

南方澳大橋
N24'35'10.58" E121'52'11.10"

蘇花公路賞清水斷崖最佳點 匯德隧道北口匯德遊戲區 蘇花公路174.2公里處
GPS: N24'12'15.08" E121'40'14.57"

四八高地 俯瞰七星潭 花16鄉道(華西路)右轉193縣道(海岸路)至軍事營區旁自行車專用道左轉(步行或腳踏車)沿自行車道抵達七星潭前短草坡地
N24'1'13.23" E121'38'20.69"

好望角Villa
N23'54'18.58" E121'35'44.11"

苗栗後龍好望角 西濱至赤土崎(108K)匝道出口沿好望角指標
GPS: N24'36'17.58" E120'43'52.19"

龍鳳漁港木麻黃海灘賞夕 竹南鎮龍江街369巷15號 龍鳳漁港沙灘
N24'42'16.16" E120'51'37.00"

天空步道 桃園縣復興鄉小烏來風景特定區
N24'47'37.8" E121' 22' 32.9"
桃園縣復興鄉義盛村42號
0800-1700 天空步道1200-1300休息,周一休
預約卷:每日0730於石板廣場持續發放3600張,每次可停留半小時

阿塱壹古道

林文讚手擀麵
宜蘭縣蘇澳鎮新生路9-1號
03-996-6563
0700-1300, 周日休

Linux random vs. urandom

random vs. urandom
http://stupefydeveloper.blogspot.com/2007/12/random-vs-urandom.html

random and urandom are devices in /dev that provide random data for applications. The main difference between random and urandom is how they are pulling random data from kernel. random always takes data from entropy pool. If the pool is empty, random will block the operation until the pool would be filled enough. urandom will genarate data using SHA(or any other algorithm, MD5 sometimes) algorithm in the case kernel entropy pool is empty. urandom will never block the operation

2011年8月1日 星期一

Toolchain

Toolchains
http://elinux.org/Toolchains

When talking about toolchains, one must distinguish three different machines :
  • the build machine, on which the toolchain is built
  • the host machine, on which the toolchain is executed
  • the target machine, for which the toolchain generates code

From these three different machines, we distinguish four different types of toolchain building processes :
  • A native toolchain, as can be found in normal Linux distributions, has usually been compiled on x86, runs on x86 and generates code for x86.
  • A cross-compilation toolchain, which is the most interesting toolchain type for embedded development, is typically compiled on x86, runs on x86 and generates code for the target architecture (be it ARM, MIPS, PowerPC or any other architecture supported by the different toolchain components)
  • A cross-native toolchain, is a toolchain that has been built on x86, but runs on your target architecture and generates code for your target architecture. It's typically needed when you want a native gcc on your target platform, without building it on your target platform.
  • A canadian build is the process of building a toolchain on machine A, so that it runs on machine B and generates code for machine C. It's usually not really necessary.

lcc, A Retargetable Compiler for ANSI C

lcc, A Retargetable Compiler for ANSI C
http://sites.google.com/site/lccretargetablecompiler/

lcc is a retargetable compiler for Standard C. It generates code for the ALPHA, SPARC, MIPS R3000, and Intel x86 and its successors.