<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2643938839059836896</id><updated>2024-09-15T23:23:15.160-07:00</updated><category term="MacOS"/><category term="Video"/><category term="Apple"/><category term="Life"/><category term="Programming"/><category term="3C"/><category term="OpenSuSE"/><category term="ARM"/><category term="Cars"/><category term="IT"/><category term="Linux"/><category term="OS"/><category term="Outback"/><category term="Subaru"/><category term="SystemC"/><category term="總統選舉"/><category term="DVD"/><category term="GCC"/><category term="GNUPLOT"/><category term="Google"/><category term="Network"/><category term="SVN"/><category term="SuSE"/><category term="dvdmedia"/><category term="iPhone"/><category term="3D"/><category term="AppArmor"/><category term="Apps"/><category term="Armber"/><category term="BIG5"/><category term="Components"/><category term="DVD Decrypter"/><category term="Electronic"/><category term="FaceTime"/><category term="GNOME"/><category term="GPIO"/><category term="Google Insights"/><category term="I2C"/><category term="I2C GPIO"/><category term="IO Expander"/><category term="IP"/><category term="LEON2"/><category term="LEON3"/><category term="MSN"/><category term="Mac OS X"/><category term="MacPort"/><category term="Microsoft"/><category term="Music"/><category term="News"/><category term="Nvidia"/><category term="Opencores"/><category term="SID"/><category term="Safari"/><category term="Samba"/><category term="TCL"/><category term="TLM"/><category term="TRAP"/><category term="TimeMachine"/><category term="Tor"/><category term="UTF8"/><category term="Verilog"/><category term="Webb"/><category term="aquaterm"/><category term="gdb"/><category term="iOS"/><category term="insight"/><category term="iverilog"/><category term="sparc-elf"/><category term="總統"/><title type='text'>Fly&#39;s Note - 笨蒼蠅的筆記</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>92</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-5200892551521201759</id><published>2012-05-18T12:27:00.000-07:00</published><updated>2012-06-05T00:43:15.180-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="GPIO"/><category scheme="http://www.blogger.com/atom/ns#" term="I2C"/><category scheme="http://www.blogger.com/atom/ns#" term="I2C GPIO"/><category scheme="http://www.blogger.com/atom/ns#" term="IO Expander"/><title type='text'>New I2C I/O Expander Supplier</title><content type='html'>&lt;a href=&quot;http://www.goyatek.com/&quot; title=&quot;Goyatek Inc.&quot;&gt;Goyatek&lt;/a&gt; is a new I2C I/O expander supplier.&lt;br /&gt;
It supplies &lt;a href=&quot;http://www.goyatek.com/product_overview.php?sid=8&quot; title=&quot;PCA9554&quot;&gt;PCA9554&lt;/a&gt;, &lt;a href=&quot;http://www.goyatek.com/product_overview.php?sid=11&quot; title=&quot;PCA9554A&quot;&gt;PCA9554A&lt;/a&gt; and &lt;a href=&quot;http://www.goyatek.com/product_overview.php?sid=6&quot; title=&quot;PCA9555&quot;&gt;PCA9555&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsOCKWPmEkofYQN-jXxpoNp57cJ_QbgP87apR4iRw11TEnHUlP4IrOyroqwXfNjKoOiEYi3Gvj3zifltftKbKr7ylIOLj-N62nD-is7FZnhTqOk34Dq0NnQ8nkwBjrzqK6WB861XtQPfk/s1600/PCA9554-QFN16-TSSOP16-stack-3.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;265&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsOCKWPmEkofYQN-jXxpoNp57cJ_QbgP87apR4iRw11TEnHUlP4IrOyroqwXfNjKoOiEYi3Gvj3zifltftKbKr7ylIOLj-N62nD-is7FZnhTqOk34Dq0NnQ8nkwBjrzqK6WB861XtQPfk/s400/PCA9554-QFN16-TSSOP16-stack-3.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiU82RsmPqfdFd5lnl_4SM-0n8RyrUaLHbOhOXqXV6mTuR9D3Y-MTLvt8zsGjR-Ehlsvz7Av1fAafhwCj9IKijmADnDu-NWjGCJLgKvmHWx7FV_mDGNTJid54DdwN96KnHzSNtWO0nqAlU/s1600/PCA9555-QFN24-TSSOP24-stack-2.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiU82RsmPqfdFd5lnl_4SM-0n8RyrUaLHbOhOXqXV6mTuR9D3Y-MTLvt8zsGjR-Ehlsvz7Av1fAafhwCj9IKijmADnDu-NWjGCJLgKvmHWx7FV_mDGNTJid54DdwN96KnHzSNtWO0nqAlU/s400/PCA9555-QFN24-TSSOP24-stack-2.png&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/5200892551521201759/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/5200892551521201759' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/5200892551521201759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/5200892551521201759'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/05/new-i2c-io-expander-supplier_18.html' title='New I2C I/O Expander Supplier'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsOCKWPmEkofYQN-jXxpoNp57cJ_QbgP87apR4iRw11TEnHUlP4IrOyroqwXfNjKoOiEYi3Gvj3zifltftKbKr7ylIOLj-N62nD-is7FZnhTqOk34Dq0NnQ8nkwBjrzqK6WB861XtQPfk/s72-c/PCA9554-QFN16-TSSOP16-stack-3.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-7645273772424258922</id><published>2012-05-18T10:17:00.000-07:00</published><updated>2012-05-18T10:17:20.674-07:00</updated><title type='text'>A new I2C IO expander supplier</title><content type='html'>&lt;a href=&quot;http://www.goyatek.com&quot;&gt;Goyatek&lt;/a&gt; is a new i2c io expander supplier.
PCA9555, PCA9554 and PCA9554A are available.</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/7645273772424258922/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/7645273772424258922' title='1 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/7645273772424258922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/7645273772424258922'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/05/new-i2c-io-expander-supplier.html' title='A new I2C IO expander supplier'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-2019068849999779566</id><published>2012-04-26T11:56:00.000-07:00</published><updated>2012-05-29T03:50:09.494-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="gcc"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><title type='text'>GNU Cross Compiler 編譯程序</title><content type='html'>寫了一個 Makefile，可以半自動的編譯 GNU Cross Compiler&lt;br/&gt;做個記錄，怕以後忘記&lt;pre&gt;&lt;br/&gt;#TARGET      = arm-elf&lt;br/&gt;#TARGET      = mips-elf&lt;br/&gt;TARGET      = sparc-elf&lt;br/&gt;&lt;br/&gt;PKG_DIR     = $(CURDIR)/PKG&lt;br/&gt;SRC_DIR     = $(CURDIR)/SRC&lt;br/&gt;BUILD_DIR   = $(CURDIR)/BUILD-$(TARGET)&lt;br/&gt;TARGET_DIR  = /srv/xfile/compiler/$(TARGET)-4.7.0&lt;br/&gt;&lt;br/&gt;BINUTILS_VER = binutils-2.22&lt;br/&gt;GCC_VER      = gcc-4.7.0&lt;br/&gt;MPC_VER      = mpc-0.9&lt;br/&gt;MPFR_VER     = mpfr-3.1.0&lt;br/&gt;GMP_VER      = gmp-5.0.4&lt;br/&gt;NEWLIB_VER   = newlib-1.20.0&lt;br/&gt;GDB_VER      = gdb-7.3.1&lt;br/&gt;INSIGHT_VER  = insight-6.8-1&lt;br/&gt;&lt;br/&gt;GCC_PACKAGE        = $(PKG_DIR)/gcc/$(GCC_VER).tar.bz2&lt;br/&gt;GCC_SRC_DIR        = $(SRC_DIR)/$(GCC_VER)&lt;br/&gt;GCC_BUILD_DIR      = $(BUILD_DIR)/$(GCC_VER)&lt;br/&gt;&lt;br/&gt;GMP_PACKAGE        = $(PKG_DIR)/gmp/$(GMP_VER).tar.bz2&lt;br/&gt;GMP_SRC_DIR        = $(SRC_DIR)/$(GMP_VER)&lt;br/&gt;GMP_BUILD_DIR      = $(BUILD_DIR)/$(GMP_VER)&lt;br/&gt;&lt;br/&gt;MPFR_PACKAGE       = $(PKG_DIR)/mpfr/$(MPFR_VER).tar.bz2&lt;br/&gt;MPFR_SRC_DIR        = $(SRC_DIR)/$(MPFR_VER)&lt;br/&gt;MPFR_BUILD_DIR      = $(BUILD_DIR)/$(MPFR_VER)&lt;br/&gt;&lt;br/&gt;MPC_PACKAGE        = $(PKG_DIR)/mpc/$(MPC_VER).tar.gz&lt;br/&gt;MPC_SRC_DIR        = $(SRC_DIR)/$(MPC_VER)&lt;br/&gt;MPC_BUILD_DIR      = $(BUILD_DIR)/$(MPC_VER)&lt;br/&gt;&lt;br/&gt;BINUTILS_PACKAGE   = $(PKG_DIR)/binutils/$(BINUTILS_VER).tar.bz2&lt;br/&gt;BINUTILS_SRC_DIR   = $(SRC_DIR)/$(BINUTILS_VER)&lt;br/&gt;BINUTILS_BUILD_DIR = $(BUILD_DIR)/$(BINUTILS_VER)&lt;br/&gt;&lt;br/&gt;GDB_PACKAGE        = $(PKG_DIR)/gdb/$(GDB_VER).tar.gz&lt;br/&gt;GDB_SRC_DIR        = $(SRC_DIR)/$(GDB_VER)&lt;br/&gt;GDB_BUILD_DIR      = $(BUILD_DIR)/$(GDB_VER)&lt;br/&gt;&lt;br/&gt;NEWLIB_PACKAGE     = $(PKG_DIR)/newlib/$(NEWLIB_VER).tar.gz&lt;br/&gt;NEWLIB_SRC_DIR     = $(SRC_DIR)/$(NEWLIB_VER)&lt;br/&gt;NEWLIB_BUILD_DIR   = $(BUILD_DIR)/$(NEWLIB_VER)&lt;br/&gt;&lt;br/&gt;INSIGHT_PACKAGE    = $(PKG_DIR)/insight/$(INSIGHT_VER).tar.bz2&lt;br/&gt;INSIGHT_SRC_DIR    = $(SRC_DIR)/$(INSIGHT_VER)&lt;br/&gt;INSIGHT_BUILD_DIR  = $(BUILD_DIR)/$(INSIGHT_VER)&lt;br/&gt;&lt;br/&gt;CONFIG_FLAGS       = --target=$(TARGET) \&lt;br/&gt;                     --prefix=$(TARGET_DIR)&lt;br/&gt;note:&lt;br/&gt;        @echo ----------------------------------------&lt;br/&gt;        @echo make binutils    # Build binutils&lt;br/&gt;        @echo make gcc-p0      # Build GMP, MPFR, MPC&lt;br/&gt;        @echo make gcc-p1      # Build GCC Pass-1&lt;br/&gt;        @echo make newlib      # Build newlib&lt;br/&gt;        @echo make gcc-p2      # Build GCC Pass-2&lt;br/&gt;        @echo make insight     # Build insight&lt;br/&gt;        @echo ----------------------------------------&lt;br/&gt;&lt;br/&gt;all: binutils gcc-p0 gcc-p1 newlib gcc-p2 insight&lt;br/&gt;&lt;br/&gt;dir : src_dir&lt;br/&gt;&lt;br/&gt;# Source Decompress&lt;br/&gt;&lt;br/&gt;src_dir: $(BINUTILS_SRC_DIR) $(NEWLIB_SRC_DIR) $(GCC_SRC_DIR) $(GDB_SRC_DIR) $(INSIGHT_SRC_DIR) $(GMP_SRC_DIR) $(MPFR_SRC_DIR) $(MPC_SRC_DIR)&lt;br/&gt;&lt;br/&gt;build_dir: $(BINUTILS_BUILD_DIR) $(NEWLIB_BUILD_DIR) $(GCC_BUILD_DIR) $(GDB_BUILD_DIR)&lt;br/&gt;&lt;br/&gt;# ------------- BINUTIL ----------------&lt;br/&gt;&lt;br/&gt;BINUTILS_CONF = $(CONFIG_FLAGS) --disable-nls&lt;br/&gt;&lt;br/&gt;binutils: $(BINUTILS_BUILD_DIR)&lt;br/&gt;        @echo &quot;****** Build $(BINUTILS_VER) ***********&quot;&lt;br/&gt;        (cd $(BINUTILS_BUILD_DIR); $(BINUTILS_SRC_DIR)/configure $(BINUTILS_CONF);)&lt;br/&gt;        (cd $(BINUTILS_BUILD_DIR); make all install)&lt;br/&gt;&lt;br/&gt;$(BINUTILS_SRC_DIR): $(SRC_DIR)&lt;br/&gt;        @echo &quot;****** Decompress $(BINUTILS_PACKAGE) ***********&quot;&lt;br/&gt;        -@mkdir $(BINUTILS_SRC_DIR)&lt;br/&gt;        (cd $(SRC_DIR); tar -jxvf $(BINUTILS_PACKAGE))&lt;br/&gt;&lt;br/&gt;$(BINUTILS_BUILD_DIR): $(BUILD_DIR)&lt;br/&gt;        @echo &quot;****** create directory $(BINUTILS_BUILD_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(BINUTILS_BUILD_DIR)&lt;br/&gt;&lt;br/&gt;# ------------- NEWLIB ----------------&lt;br/&gt;&lt;br/&gt;NEWLIB_CONF  = $(CONFIG_FLAGS) --disable-nls&lt;br/&gt;&lt;br/&gt;newlib: $(NEWLIB_BUILD_DIR)&lt;br/&gt;        @echo &quot;****** Build $(NEWLIB_VER) ***********&quot;&lt;br/&gt;        (set path = $(TARGET_DIR)/bin;cd $(NEWLIB_BUILD_DIR);$(NEWLIB_SRC_DIR)/configure $(NEWLIB_CONF);)&lt;br/&gt;        (cd $(NEWLIB_BUILD_DIR); make all install)&lt;br/&gt;&lt;br/&gt;$(NEWLIB_SRC_DIR): $(SRC_DIR)&lt;br/&gt;        @echo &quot;****** Decompress $(NEWLIB_PACKAGE) ***********&quot;&lt;br/&gt;        (cd $(SRC_DIR); tar -zxvf $(NEWLIB_PACKAGE))&lt;br/&gt;&lt;br/&gt;$(NEWLIB_BUILD_DIR): $(BUILD_DIR)&lt;br/&gt;        @echo &quot;****** create directory $(NEWLIB_BUILD_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(NEWLIB_BUILD_DIR)&lt;br/&gt;&lt;br/&gt;# ------------- GDB ----------------&lt;br/&gt;&lt;br/&gt;GDB_CONF = $(CONFIG_FLAGS) --disable-nls&lt;br/&gt;&lt;br/&gt;gdb: $(GDB_BUILD_DIR)&lt;br/&gt;        @echo &quot;****** Build $(GDB_VER) ***********&quot;&lt;br/&gt;        (cd $(GDB_BUILD_DIR); $(GDB_SRC_DIR)/configure $(GDB_CONF);)&lt;br/&gt;        (cd $(GDB_BUILD_DIR); make all install))&lt;br/&gt;&lt;br/&gt;$(GDB_SRC_DIR): $(SRC_DIR)&lt;br/&gt;        @echo &quot;****** Decompress $(GDB_PACKAGE) ***********&quot;&lt;br/&gt;        (cd $(SRC_DIR); tar -zxvf $(GDB_PACKAGE))&lt;br/&gt;&lt;br/&gt;$(GDB_BUILD_DIR): $(BUILD_DIR)&lt;br/&gt;        @echo &quot;****** create directory $(GDB_BUILD_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(GDB_BUILD_DIR)&lt;br/&gt;&lt;br/&gt;# ------------- INSIGHT ----------------&lt;br/&gt;INSIGHT_CONF = $(CONFIG_FLAGS) --disable-nls --disable-werror&lt;br/&gt;&lt;br/&gt;insight: $(INSIGHT_BUILD_DIR)&lt;br/&gt;        @echo &quot;****** Build $(INSIGHT_VER) ***********&quot;&lt;br/&gt;        (cd $(INSIGHT_BUILD_DIR); $(INSIGHT_SRC_DIR)/configure $(INSIGHT_CONF);)&lt;br/&gt;        (cd $(INSIGHT_BUILD_DIR); make all install)&lt;br/&gt;&lt;br/&gt;$(INSIGHT_SRC_DIR): $(SRC_DIR)&lt;br/&gt;        @echo &quot;****** Decompress $(INSIGHT_PACKAGE) ***********&quot;&lt;br/&gt;        (cd $(SRC_DIR); tar -jxvf $(INSIGHT_PACKAGE))&lt;br/&gt;&lt;br/&gt;$(INSIGHT_BUILD_DIR): $(BUILD_DIR)&lt;br/&gt;        @echo &quot;****** create directory $(INSIGHT_BUILD_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(INSIGHT_BUILD_DIR)&lt;br/&gt;&lt;br/&gt;# ------------- gcc-p0 ----------------&lt;br/&gt;&lt;br/&gt;gcc-p0: gmp mpfr mpc&lt;br/&gt;&lt;br/&gt;# ------------- GMP ----------------&lt;br/&gt;&lt;br/&gt;GMP_CONF = --prefix=$(TARGET_DIR)&lt;br/&gt;&lt;br/&gt;gmp: $(GMP_BUILD_DIR)&lt;br/&gt;        @echo &quot;****** Build $(GMP_VER) ***********&quot;&lt;br/&gt;        (cd $(GMP_BUILD_DIR); $(GMP_SRC_DIR)/configure $(GMP_CONF);)&lt;br/&gt;        (cd $(GMP_BUILD_DIR); make all install)&lt;br/&gt;&lt;br/&gt;$(GMP_SRC_DIR): $(SRC_DIR)&lt;br/&gt;        @echo &quot;****** Decompress $(INSIGHT_PACKAGE) ***********&quot;&lt;br/&gt;        (cd $(SRC_DIR); tar -jxvf $(GMP_PACKAGE))&lt;br/&gt;&lt;br/&gt;$(GMP_BUILD_DIR): $(BUILD_DIR)&lt;br/&gt;        @echo &quot;****** create directory $(GMP_BUILD_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(GMP_BUILD_DIR)&lt;br/&gt;&lt;br/&gt;# ------------- MPFR ----------------&lt;br/&gt;&lt;br/&gt;MPFR_CONF = --prefix=$(TARGET_DIR) \&lt;br/&gt;            --with-gmp=$(TARGET_DIR)&lt;br/&gt;&lt;br/&gt;mpfr: $(MPFR_BUILD_DIR)&lt;br/&gt;        @echo &quot;****** Build $(MPFR_VER) ***********&quot;&lt;br/&gt;        (cd $(MPFR_BUILD_DIR); $(MPFR_SRC_DIR)/configure $(MPFR_CONF);)&lt;br/&gt;        (cd $(MPFR_BUILD_DIR); make all install)&lt;br/&gt;&lt;br/&gt;$(MPFR_SRC_DIR): $(SRC_DIR)&lt;br/&gt;        @echo &quot;****** Decompress $(MPFR_PACKAGE) ***********&quot;&lt;br/&gt;        (cd $(SRC_DIR); tar -jxvf $(MPFR_PACKAGE))&lt;br/&gt;&lt;br/&gt;$(MPFR_BUILD_DIR): $(BUILD_DIR)&lt;br/&gt;        @echo &quot;****** create directory $(MPFR_BUILD_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(MPFR_BUILD_DIR)&lt;br/&gt;&lt;br/&gt;# ------------- MPC ----------------&lt;br/&gt;&lt;br/&gt;MPC_CONF = --prefix=$(TARGET_DIR)   \&lt;br/&gt;           --with-gmp=$(TARGET_DIR) \&lt;br/&gt;           --with-mpfr=$(TARGET_DIR)&lt;br/&gt;&lt;br/&gt;mpc: $(MPC_BUILD_DIR)&lt;br/&gt;        @echo &quot;****** Build $(MPC_VER) ***********&quot;&lt;br/&gt;        (cd $(MPC_BUILD_DIR); $(MPC_SRC_DIR)/configure $(MPC_CONF);)&lt;br/&gt;        (cd $(MPC_BUILD_DIR); make all install)&lt;br/&gt;&lt;br/&gt;$(MPC_SRC_DIR): $(SRC_DIR)&lt;br/&gt;        @echo &quot;****** Decompress $(MPC_PACKAGE) ***********&quot;&lt;br/&gt;        (cd $(SRC_DIR); tar -zxvf $(MPC_PACKAGE))&lt;br/&gt;&lt;br/&gt;$(MPC_BUILD_DIR): $(BUILD_DIR)&lt;br/&gt;        @echo &quot;****** create directory $(MPC_BUILD_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(MPC_BUILD_DIR)&lt;br/&gt;&lt;br/&gt;# ------------- GCC ----------------&lt;br/&gt;GCC_CONF = $(CONFIG_FLAGS)          \&lt;br/&gt;           --enable-interwork       \&lt;br/&gt;           --disable-multilib       \&lt;br/&gt;           --disable-nls            \&lt;br/&gt;           --disable-shared         \&lt;br/&gt;           --disable-threads        \&lt;br/&gt;           --disable-decimal-float  \&lt;br/&gt;           --disable-libmudflap     \&lt;br/&gt;           --disable-libssp         \&lt;br/&gt;           --disable-libgomp        \&lt;br/&gt;           --disable-libquadmath    \&lt;br/&gt;           --without-ppl            \&lt;br/&gt;           --without-cloog          \&lt;br/&gt;           --enable-languages=c,c++ \&lt;br/&gt;           --with-newlib            \&lt;br/&gt;           --with-headers=$(NEWLIB_SRC_DIR)/newlib/libc/include \&lt;br/&gt;           --with-gmp=$(TARGET_DIR)  \&lt;br/&gt;           --with-mpfr=$(TARGET_DIR) \&lt;br/&gt;           --with-mpc=$(TARGET_DIR) \&lt;br/&gt;           --enable-obsolete        \&lt;br/&gt;&lt;br/&gt;#           --with-mpfr-include=$(GCC_SRC_DIR)/mpfr/src \&lt;br/&gt;#           --with-mpfr-lib=$(GCC_SRC_DIR)/mpfr/src/.lib&lt;br/&gt;&lt;br/&gt;gcc-p1: $(GCC_BUILD_DIR)&lt;br/&gt;        @echo &quot;****** Build $(GCC_VER) Phase-1  ***********&quot;&lt;br/&gt;        (cd $(GCC_BUILD_DIR); $(GCC_SRC_DIR)/configure $(GCC_CONF);)&lt;br/&gt;        (cd $(GCC_BUILD_DIR); make all-gcc install-gcc)&lt;br/&gt;&lt;br/&gt;gcc-p2: &lt;br/&gt;        @echo &quot;****** Build $(GCC_VER) Phase-2  ***********&quot;&lt;br/&gt;        (cd $(GCC_BUILD_DIR); make all install)&lt;br/&gt;&lt;br/&gt;$(GCC_SRC_DIR): $(SRC_DIR)&lt;br/&gt;        @echo &quot;****** Decompress $(GCC_PACKAGE) ***********&quot;&lt;br/&gt;        (cd $(SRC_DIR); tar -jxvf $(GCC_PACKAGE))&lt;br/&gt;&lt;br/&gt;$(GCC_BUILD_DIR): $(BUILD_DIR)&lt;br/&gt;        @echo &quot;****** create directory $(GCC_BUILD_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(GCC_BUILD_DIR)&lt;br/&gt;&lt;br/&gt;# ------------- misc ----------------&lt;br/&gt;&lt;br/&gt;$(SRC_DIR):&lt;br/&gt;        @echo &quot;****** create directory $(SRC_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(SRC_DIR)&lt;br/&gt;&lt;br/&gt;$(BUILD_DIR):&lt;br/&gt;        @echo &quot;****** create directory $(BUILD_DIR) ***********&quot;&lt;br/&gt;        -@mkdir $(BUILD_DIR)&lt;br/&gt;&lt;br/&gt;$(PKG_DIR):&lt;br/&gt;        @echo ERROR! No $(GNU_DIR) found!&lt;br/&gt;        exit&lt;br/&gt;&lt;br/&gt;clean: clean-build clean-src&lt;br/&gt;&lt;br/&gt;clean-src:&lt;br/&gt;        @rm -rf $(SRC_DIR)&lt;br/&gt;&lt;br/&gt;clean-build:&lt;br/&gt;        @rm -rf BUILD-*&lt;br/&gt;&lt;br/&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/2019068849999779566/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/2019068849999779566' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/2019068849999779566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/2019068849999779566'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/04/gnu-cross-compiler.html' title='GNU Cross Compiler 編譯程序'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-5113580582797976070</id><published>2012-04-26T07:50:00.000-07:00</published><updated>2012-05-29T03:50:09.557-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="gcc"/><category scheme="http://www.blogger.com/atom/ns#" term="gdb"/><category scheme="http://www.blogger.com/atom/ns#" term="insight"/><category scheme="http://www.blogger.com/atom/ns#" term="Linux"/><category scheme="http://www.blogger.com/atom/ns#" term="sparc-elf"/><title type='text'>Issues while build insight-6.8-1 with --target=spare-elf configuration</title><content type='html'>使用 insight-6.8-1 &lt;pre&gt;&lt;br/&gt;% ../insight-6.8-1/configure --target=sparc-elf --prefix=$OPT/sparc-elf-4.7.0 --disable-nls --disable-werror&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;會出現以下 error messages:&lt;pre&gt;&lt;br/&gt;...&lt;br/&gt;/GNU/SRC/insight-6.8-1/sim/erc32/float.c:173:2: warning: #warning no fpu trap support for this target [-Wcpp]&lt;br/&gt;gcc -DHAVE_CONFIG_H     -DPROFILE=1 -DWITH_PROFILE=-1          -DDEFAULT_INLINE=0           -DSTAT -DFAST_UART -DIUREV0 -DMECREV0   -I. -I/GNU/SRC/insight-6.8-1/sim/erc32 -I../common -I/GNU/SRC/insight-6.8-1/sim/erc32/../common -I../../include -I/GNU/SRC/insight-6.8-1/sim/erc32/../../include -I../../bfd -I/GNU/SRC/insight-6.8-1/sim/erc32/../../bfd -I../../opcodes -I/GNU/SRC/insight-6.8-1/sim/erc32/../../opcodes  -g -O2 -o sis \&lt;br/&gt;  sis.o exec.o erc32.o func.o help.o float.o  ../../bfd/libbfd.a ../../opcodes/libopcodes.a  ../../libiberty/libiberty.a -lnsl  ../../readline/libreadline.a  -lm &lt;br/&gt;../../readline/libreadline.a(display.o): In function `cr&#39;:&lt;br/&gt;/GNU/SRC/insight-6.8-1/readline/display.c:2205: undefined reference to `tputs&#39;&lt;br/&gt;../../readline/libreadline.a(display.o): In function `_rl_move_cursor_relative&#39;:&lt;br/&gt;/GNU/SRC/insight-6.8-1/readline/display.c:1719: undefined reference to `tputs&#39;&lt;br/&gt;/GNU/SRC/insight-6.8-1/readline/display.c:1745: undefined reference to `tputs&#39;&lt;br/&gt;../../readline/libreadline.a(display.o): In function `_rl_move_vert&#39;:&lt;br/&gt;/GNU/SRC/insight-6.8-1/readline/display.c:1783: undefined reference to `tputs&#39;&lt;br/&gt;...&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;查了很久之後，發現是 link erc32 時少了 ncurses 這個 library，也就是少了 -lncurses。&lt;br/&gt;解法：patch insight-6.8-1 source code: &lt;br/&gt;edit ./insight-6.8-1/sim/erc32/Makefile.in &lt;pre&gt; &lt;br/&gt;Line.25:    SIM_EXTRA_LIBS = $(READLINE_LIB) $(TERMCAP_LIB) -lm -lncurses&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;重新編譯安裝就OK了!&lt;pre&gt;&lt;br/&gt;% ../insight-6.8-1/configure --target=sparc-elf --prefix=$OPT/sparc-elf-4.7.0 --disable-nls --disable-werror&lt;br/&gt;% make&lt;br/&gt;% make install&lt;br/&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/5113580582797976070/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/5113580582797976070' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/5113580582797976070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/5113580582797976070'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/04/issues-while-build-insight-68-1-with.html' title='Issues while build insight-6.8-1 with --target=spare-elf configuration'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-1236588827806208407</id><published>2012-04-18T07:52:00.000-07:00</published><updated>2012-05-29T03:50:09.469-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ARM"/><category scheme="http://www.blogger.com/atom/ns#" term="GCC"/><category scheme="http://www.blogger.com/atom/ns#" term="LEON2"/><category scheme="http://www.blogger.com/atom/ns#" term="LEON3"/><category scheme="http://www.blogger.com/atom/ns#" term="SystemC"/><category scheme="http://www.blogger.com/atom/ns#" term="TLM"/><category scheme="http://www.blogger.com/atom/ns#" term="TRAP"/><title type='text'>Install TRAP (TRansaction level Automatic Processor generator)</title><content type='html'>安裝完 &lt;a href=&quot;http://yfc58.wordpress.com/2012/04/17/安裝-systemc-and-tlm-on-opensuse-12-1-64-bit-linux/&quot;&gt;SystemC-2.2.0 and TLM&lt;/a&gt; 後，&lt;br/&gt;在來安裝 &lt;a title=&quot;TRAP&quot; href=&quot;http://code.google.com/p/trap-gen/&quot; target=&quot;_blank&quot;&gt;TRAP&lt;/a&gt; 來玩玩看，這裡有詳細的&lt;a href=&quot;http://code.google.com/p/trap-gen/wiki/Setup&quot; target=&quot;_blank&quot;&gt;安裝步驟&lt;/a&gt;說明。&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;一些準備工作&lt;/strong&gt;&lt;br/&gt;請先確認系統是否已安裝以下的 Library or Tools&lt;br/&gt;&lt;a href=&quot;http://www.mr511.de/software/index.html&quot; title=&quot;libELF&quot; target=&quot;_blank&quot;&gt;libELF&lt;/a&gt;, SystemC, TLM, &lt;a href=&quot;http://www.boost.org.&quot; title=&quot;Boost&quot; target=&quot;_blank&quot;&gt;Boots&lt;/a&gt;, Python, &lt;a href=&quot;http://networkx.lanl.gov/&quot; target=&quot;_blank&quot;&gt;networkx&lt;/a&gt;&lt;br/&gt; &lt;br/&gt;&lt;strong&gt;Checkout TRAP Source Code&lt;/strong&gt;&lt;pre&gt;&lt;br/&gt;% svn checkout http://trap-gen.googlecode.com/svn/trunk/ trap-gen&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Compile and Install TRAP&lt;/strong&gt;&lt;pre&gt;&lt;br/&gt;% cd trap-gen&lt;br/&gt;% ./waf configure --with-systemc=/opt/systemc/systemc-2.2.0 --prefix=/opt/systemc/trap&lt;br/&gt;% ./waf&lt;br/&gt;% ./waf install&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Compile LEON3 Processor&lt;/strong&gt;&lt;pre&gt;&lt;br/&gt;% cd processors/LEON3&lt;br/&gt;% python LEON3Arch.py&lt;br/&gt;% cd processors&lt;br/&gt;% ./waf configure --with-systemc=/opt/systemc/systemc-2.2.0 --with-tlm=/opt/systemc/TLM-2009-07-15 --with-trap=/opt/systemc/trap&lt;br/&gt;% ./waf&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;TRAP 產生的 CPU Simulator 可以有四種類型：funcLT, funcAT, accLT, accAT&lt;ul&gt;&lt;br/&gt;funcLT : Instruction-Accurate with loosely-timed TLM interfaces&lt;br/&gt;funcAT : Instruction-Accurate with accurate-timed TLM interfaces&lt;br/&gt;accLT  : Cycle-Accurate with loosely-timed TLM interfaces&lt;br/&gt;accAT  : Cycle-Accurate with accurate-timed TLM interfaces&lt;br/&gt;&lt;/ul&gt;&lt;br/&gt;但這次編譯，只會生出 funcLT and funcAT。&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Install cross compiler&lt;/strong&gt;&lt;br/&gt;有已經做好的 &lt;a href=&quot;ftp://ftp.elet.polimi.it/outgoing/Luca.Fossati/cross-gcc/sparc-elf-4.3.3.tar.bz2&quot; target=&quot;_blank&quot;&gt;sparc-elf&lt;/a&gt;, &lt;a href=&quot;ftp://ftp.elet.polimi.it/outgoing/Luca.Fossati/cross-gcc/arm-elf-4.3.3.tar.bz2&quot; target=&quot;_blank&quot;&gt;arm-elf&lt;/a&gt; compiler，替我省下不少時間！&lt;br/&gt;若要自己做 cross compiler，要記得 compiler 安裝完後要將 BSP 檔案 copy 到 compiler 安裝目錄，以 sparc-elf 為例：&lt;pre&gt;&lt;br/&gt;% cp $(TRAP_SRC_DIR)/BSP_and_Compiler/sparc/* $(SPARC_ELF_INSTALL_DIR)/sparc-elf/lib&lt;br/&gt;% sparc-elf-gcc -c exceptionTrap.S -o exceptionTrap.o&lt;br/&gt;% sparc-elf-gcc -c libcStub.c -o libcStub.o&lt;br/&gt;% sparc-elf-gcc -c osemu-crt0.S -o osemu-crt0.o&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;run Hello-World&lt;/strong&gt;&lt;br/&gt;hello.c&lt;pre&gt;&lt;br/&gt;#include &quot;stdio.h&quot;&lt;br/&gt;int main(void) {&lt;br/&gt;    printf(&quot;Hello World\n&quot;);&lt;br/&gt;}&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;Compile hello.c&lt;pre&gt;&lt;br/&gt;% sparc-elf-gcc -specs=osemu.specs -g -O2 hello.c -o hello&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;Simulate with funcAT&lt;pre&gt;&lt;br/&gt;% $(TRAP-SRC-DIR)/processors/LEON3/processor/_build_/funcAT/funcAT -a hello&lt;br/&gt;&lt;br/&gt;             SystemC 2.2.0 --- Apr 17 2012 12:05:44&lt;br/&gt;        Copyright (c) 1996-2006 by all Contributors&lt;br/&gt;                    ALL RIGHTS RESERVED&lt;br/&gt;&lt;br/&gt;	&lt;br/&gt;	      _/        _/_/_/_/    _/_/    _/      _/   _/_/_/&lt;br/&gt;	     _/        _/        _/    _/  _/_/    _/         _/&lt;br/&gt;	    _/        _/_/_/    _/    _/  _/  _/  _/     _/_/&lt;br/&gt;	   _/        _/        _/    _/  _/    _/_/         _/&lt;br/&gt;	  _/_/_/_/  _/_/_/_/    _/_/    _/      _/   _/_/_/&lt;br/&gt;	&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;	Luca Fossati  -    email: fossati.l@gmail.com&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Loading the application and initializing the tools ...&lt;br/&gt;... tools initialized&lt;br/&gt;&lt;br/&gt;Hello World&lt;br/&gt;&lt;br/&gt;Program exited with value 10&lt;br/&gt;&lt;br/&gt;SystemC: simulation stopped by user.&lt;br/&gt;&lt;br/&gt;Elapsed 0 sec. (real time)&lt;br/&gt;Executed 1924 instructions&lt;br/&gt;Execution Speed: inf MIPS&lt;br/&gt;Simulated time: 2330 us&lt;br/&gt;Elapsed 2330 cycles&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;Simulate with funcCT&lt;pre&gt;&lt;br/&gt;% $(TRAP-SRC-DIR)/processors/LEON3/processor/_build_/funcAT/funcAT -a hello&lt;br/&gt;&lt;br/&gt;             SystemC 2.2.0 --- Apr 17 2012 12:05:44&lt;br/&gt;        Copyright (c) 1996-2006 by all Contributors&lt;br/&gt;                    ALL RIGHTS RESERVED&lt;br/&gt;&lt;br/&gt;	&lt;br/&gt;	      _/        _/_/_/_/    _/_/    _/      _/   _/_/_/&lt;br/&gt;	     _/        _/        _/    _/  _/_/    _/         _/&lt;br/&gt;	    _/        _/_/_/    _/    _/  _/  _/  _/     _/_/&lt;br/&gt;	   _/        _/        _/    _/  _/    _/_/         _/&lt;br/&gt;	  _/_/_/_/  _/_/_/_/    _/_/    _/      _/   _/_/_/&lt;br/&gt;	&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;	Luca Fossati  -    email: fossati.l@gmail.com&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Loading the application and initializing the tools ...&lt;br/&gt;... tools initialized&lt;br/&gt;&lt;br/&gt;Hello World&lt;br/&gt;&lt;br/&gt;Program exited with value 10&lt;br/&gt;&lt;br/&gt;SystemC: simulation stopped by user.&lt;br/&gt;&lt;br/&gt;Elapsed 0.01 sec. (real time)&lt;br/&gt;Executed 1924 instructions&lt;br/&gt;Execution Speed: 0.1924 MIPS&lt;br/&gt;Simulated time: 2330 us&lt;br/&gt;Elapsed 2330 cycles&lt;br/&gt;%&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;run Testsuite&lt;/strong&gt;&lt;pre&gt;&lt;br/&gt;% cd $(TRAP-SRC-DIR)/testsuite&lt;br/&gt;% setenv CC_CROSS sparc-elf-gcc&lt;br/&gt;% setenv CFLAGS &quot;-DBIG_TARGET -specs=osemu.specs&quot;&lt;br/&gt;% setenv SIMULATOR &quot;../processors/LEON3/processor/_build_/funcAT/funcAT&quot;&lt;br/&gt;% make test&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;run Benchmark&lt;/strong&gt;&lt;pre&gt;&lt;br/&gt;% cd $(TRAP-SRC-DIR)/benchmarks&lt;br/&gt;% setenv CC_CROSS sparc-elf-gcc&lt;br/&gt;% setenv CFLAGS &quot;-DBIG_TARGET -specs=osemu.specs&quot;&lt;br/&gt;% setenv SIMULATOR &quot;../processors/LEON3/processor/_build_/funcAT/funcAT&quot;&lt;br/&gt;% make run&lt;br/&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/1236588827806208407/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/1236588827806208407' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/1236588827806208407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/1236588827806208407'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/04/install-trap-transaction-level.html' title='Install TRAP (TRansaction level Automatic Processor generator)'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-542631179788320328</id><published>2012-04-17T06:08:00.000-07:00</published><updated>2012-05-29T03:50:09.588-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="OpenSuSE"/><category scheme="http://www.blogger.com/atom/ns#" term="SystemC"/><title type='text'>安裝 SystemC and TLM on OpenSuSE 12.1 (64-bit Linux)</title><content type='html'>&lt;strong&gt;Setup Environment Variable&lt;/strong&gt;&lt;br/&gt;edit .cshrc by adding: &lt;pre&gt;&lt;br/&gt;setenv SYSTEMC_HOME /opt/systemc/systemc-2.2.0&lt;br/&gt;setenv TLM_HOME     /opt/systemc/TLM-2009-07-15&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Install SystemC-2.2.0&lt;/strong&gt;&lt;br/&gt;&lt;br/&gt;照例，要先修改 ./systemc-2.2.0/src/sysc/utils/sc_utils_ids.cpp&lt;br/&gt;加上下列兩行&lt;pre&gt;&lt;br/&gt;#include &quot;string.h&quot;&lt;br/&gt;#include &quot;cstdlib&quot;&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;開始編譯 &lt;pre&gt;&lt;br/&gt;% cd systemc-2.2.0&lt;br/&gt;% mkdir objdir&lt;br/&gt;% cd objdir&lt;br/&gt;% ../configure --prefix=/opt/systemc/systemc-2.2.0&lt;br/&gt;% make&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;嗯，跟之前安裝時不一樣，這次跑出來以下錯誤訊息：&lt;pre&gt;&lt;br/&gt;../../../../systemc-2.2.0/src/sysc/datatypes/bit/sc_bit_proxies.h:716:16: error: reference ‘m_obj’ cannot be declared ‘mutable’ [-fpermissive]&lt;br/&gt;../../../../systemc-2.2.0/src/sysc/datatypes/bit/sc_bit_proxies.h:1193:18: error: reference ‘m_left’ cannot be declared ‘mutable’ [-fpermissive]&lt;br/&gt;../../../../systemc-2.2.0/src/sysc/datatypes/bit/sc_bit_proxies.h:1194:18: error: reference ‘m_right’ cannot be declared ‘mutable’ [-fpermissive]&lt;br/&gt;../../../../systemc-2.2.0/src/sysc/datatypes/bit/sc_bit_proxies.h:1196:18: error: reference ‘m_refs’ cannot be declared ‘mutable’ [-fpermissive]&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;Google 一下之後，找到解法，將 src/sysc/datatypes/bit/sc_bit_proxies.h 中的 mutable 都去除&lt;br/&gt;重新 compile&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;% ../configure --prefix=/opt/systemc/systemc-2.2.0&lt;br/&gt;% make&lt;br/&gt;% sudo make install&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;最後可以做一下測試&lt;pre&gt;&lt;br/&gt;$ make check&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Install TLM-2.0.1&lt;/strong&gt;&lt;br/&gt;Step.1 將 TLM-2.0.1 解到 /opt/systemc/systemc-2.2.0&lt;pre&gt;&lt;br/&gt;sudo tar -C /opt/systemc -zxvf ~/work/SystemC/SystemC.org/download/TLM-2.0.1.tgz&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;Spte.2 修改 systemc-2.2.0/include/sysc/packages/boost/bind/placeholders.hpp&lt;pre&gt;&lt;br/&gt;LINE.28 #if defined(__BORLANDC__) || defined(__GNUC__)&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;Spte.3 修改 systemc-2.2.0/include/sysc/datatypes/bit/sc_lv_base.h &lt;pre&gt;&lt;br/&gt;LINE.309     return sc_logic_value_t( (m_data[wi] &amp;gt;&amp;gt; bi &amp;amp; SC_DIGIT_ONE) |&lt;br/&gt;LINE.310                              (m_ctrl[wi] &amp;gt;&amp;gt; bi &amp;lt;&amp;lt; 1 &amp;amp; SC_DIGIT_TWO) );&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Run TLM-2.0.1 examples&lt;/strong&gt;&lt;br/&gt;Step.1 修改 TLM-2009-07-15/examples/tlm/build-unix/Makefile.config &lt;pre&gt;&lt;br/&gt;LINE.2  DEFAULT_TARGET_ARCH  = linux64&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;Step.2 執行 examples &lt;pre&gt;&lt;br/&gt;% cd TLM-2009-07-15/examples/tlm/build-unix&lt;br/&gt;% make&lt;br/&gt;% make run&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Run TLM-2.0.1 unit_test&lt;/strong&gt;&lt;br/&gt;Step.1 修改 TLM-2009-07-15/unit_test/tlm/build-unix/Makefile.config &lt;pre&gt;&lt;br/&gt;LINE.2  DEFAULT_TARGET_ARCH  = linux64&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;Step.2 執行 examples &lt;pre&gt;&lt;br/&gt;$ cd TLM-2009-07-15/unit_test/tlm/build-unix&lt;br/&gt;$ make&lt;br/&gt;$ make run&lt;br/&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/542631179788320328/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/542631179788320328' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/542631179788320328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/542631179788320328'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/04/systemc-and-tlm-on-opensuse-121-64-bit.html' title='安裝 SystemC and TLM on OpenSuSE 12.1 (64-bit Linux)'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-3477449838933425604</id><published>2012-02-20T07:10:00.000-08:00</published><updated>2012-05-29T03:50:09.522-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Mac OS X"/><category scheme="http://www.blogger.com/atom/ns#" term="MacOS"/><category scheme="http://www.blogger.com/atom/ns#" term="Safari"/><title type='text'>有時候，Safari Download 會卡住？找到原因了！</title><content type='html'>不知道從時候開始，Safari 在 Download file 時，經常會卡住完全沒反應，&lt;br/&gt;且只在我的 Macbook 才會發生，家裡的 Mac Mini 以及 iMac 並不會有這情形，&lt;br/&gt;找了很久都找不出原因....&lt;br/&gt;今天，&lt;br/&gt;在 Download vlc-2.0.0.dmg 時，又卡住了，&lt;br/&gt;這次，發現一個錯誤訊息：『外掛模組錯誤』（之前都沒有留意）&lt;br/&gt;查了一下 Safari 的 輔助說明 -&amp;gt; 以安裝的外掛模組&lt;br/&gt;發現一個外掛模組 &quot;SpeedDownload Browser Plugin&quot; 非常可疑，&lt;br/&gt;決定將他砍掉：&lt;pre&gt;&lt;br/&gt;$ cd /Library/Internet\ Plug-Ins/&lt;br/&gt;$ sudo rm -rf SpeedDownload\ Browser\ Plugin.plugin/&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;重新啟動 Safari，&lt;br/&gt;Yes, it works!</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/3477449838933425604/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/3477449838933425604' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/3477449838933425604'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/3477449838933425604'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/02/safari-download.html' title='有時候，Safari Download 會卡住？找到原因了！'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-148217016202580778</id><published>2012-02-01T11:21:00.000-08:00</published><updated>2012-05-29T03:50:09.480-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="GNOME"/><category scheme="http://www.blogger.com/atom/ns#" term="Nvidia"/><category scheme="http://www.blogger.com/atom/ns#" term="OpenSuSE"/><title type='text'>Oh no! Something has gone wrong.</title><content type='html'>今天發現 OpenSuSE 12.1 有一些更新，其中包含 Nvidia Driver 的更新&lt;br/&gt;做完更新，重新開機後，發現無法 login 進 GNOME 了&lt;br/&gt;會出現 ： &quot;Oh no! Something has gone wrong.&quot; 並要求 logout 的訊息&lt;br/&gt;做了很多嘗試後發現：&lt;pre&gt;&lt;br/&gt;1. 重新安裝 GNOME 沒用&lt;br/&gt;2. NIS Account 才會有這問題&lt;br/&gt;3. Local Account and root 不會有這問題&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;後來查 ~/.xsession-errors 發現&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;NVIDIA: could not open the device file /dev/nvidiactl (Permission denied).&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;檢查 Nvidia Driver 的屬性發現&lt;pre&gt;&lt;br/&gt;crw-rw---- 1 root video 195,   0  2月  1 15:42 /dev/nvidia0&lt;br/&gt;crw-rw---- 1 root video 195, 255  2月  1 15:42 /dev/nvidiactl&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;嗯，只有 root 以及 video group 的 account 才能使用 Nvidia Driver&lt;br/&gt;難怪 NIS account 無法使用&lt;br/&gt;既然如此，就用最簡單的方法：改變 driver 的屬性 &lt;pre&gt;&lt;br/&gt;% chmod 0666 /dev/nvidia*&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;結果：沒用！Nvidia Driver 的屬性 又自動變回來了，真是奇怪！&lt;br/&gt;&lt;br/&gt;換另外一招，手動編輯 /etc/group ，將NIS Account 都加進 video group 裡 &lt;pre&gt;&lt;br/&gt;% vi /etc/group &lt;br/&gt;...&lt;br/&gt;video:x:33:xxx,...,NIS_Users...&lt;br/&gt;...&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;結果：OK!  yes！&lt;br/&gt;搞定，收工....</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/148217016202580778/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/148217016202580778' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/148217016202580778'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/148217016202580778'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/02/oh-no-something-has-gone-wrong.html' title='Oh no! Something has gone wrong.'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-1982197574919012521</id><published>2012-01-14T13:34:00.000-08:00</published><updated>2012-05-29T03:50:09.491-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Life"/><title type='text'>網路預測、分析工具，與大選結果</title><content type='html'>這次大選結果顯示：&lt;br/&gt;1. Google Insights 所顯示的關鍵字（候選人）熱門度，不代表支持度。&lt;br/&gt;2. 未來事件交易所預測失靈，（應該是參與交易的人，帶有『不理性』的主觀期待）。</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/1982197574919012521/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/1982197574919012521' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/1982197574919012521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/1982197574919012521'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/01/blog-post_1399.html' title='網路預測、分析工具，與大選結果'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-7984525687748463219</id><published>2012-01-14T12:58:00.000-08:00</published><updated>2012-05-29T03:50:09.641-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Life"/><title type='text'>選舉順利完成！天佑台灣、民主萬歲！</title><content type='html'>這次選舉，沒有出現任何意外，&lt;br/&gt;失敗一方很有風度接受失敗結果，&lt;br/&gt;台灣繼續邁向民主深化之路，&lt;br/&gt;天佑台灣、民主萬歲！</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/7984525687748463219/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/7984525687748463219' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/7984525687748463219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/7984525687748463219'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/01/blog-post_14.html' title='選舉順利完成！天佑台灣、民主萬歲！'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-1929671319496753801</id><published>2012-01-13T17:02:00.000-08:00</published><updated>2012-05-29T03:50:09.489-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Google"/><category scheme="http://www.blogger.com/atom/ns#" term="Life"/><category scheme="http://www.blogger.com/atom/ns#" term="總統選舉"/><title type='text'>Google 也來湊熱鬧</title><content type='html'>今天投票日，Google 也來共襄盛舉&lt;br/&gt;&lt;a href=&quot;http://yfc58.files.wordpress.com/2012/01/taiwan_elections-2012-hp.jpg&quot;&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2012/01/taiwan_elections-2012-hp.jpg&quot; alt=&quot;&quot; title=&quot;Taiwan_Elections-2012-hp&quot; width=&quot;510&quot; height=&quot;163&quot; class=&quot;aligncenter size-full wp-image-235&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/1929671319496753801/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/1929671319496753801' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/1929671319496753801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/1929671319496753801'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/01/google.html' title='Google 也來湊熱鬧'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-3388417313851480598</id><published>2012-01-13T09:19:00.000-08:00</published><updated>2012-05-29T03:50:09.518-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Google"/><category scheme="http://www.blogger.com/atom/ns#" term="Google Insights"/><category scheme="http://www.blogger.com/atom/ns#" term="Life"/><category scheme="http://www.blogger.com/atom/ns#" term="總統"/><category scheme="http://www.blogger.com/atom/ns#" term="總統選舉"/><title type='text'>明天就要投票了！</title><content type='html'>明天就會知道，以後可不可以用 &lt;a title=&quot;Google Insights&quot; href=&quot;http://www.google.com/insights/search/#q=蔡英文%2C馬英九&amp;amp;geo=TW&amp;amp;date=today%201-m&amp;amp;cmpt=q&quot;&gt;Google Insights&lt;/a&gt; 來預測大型選舉的結果了！&lt;br/&gt;&lt;a href=&quot;http://yfc58.files.wordpress.com/2012/01/insights.png&quot;&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2012/01/insights.png&quot; alt=&quot;&quot; title=&quot;Insights&quot; width=&quot;584&quot; height=&quot;364&quot; class=&quot;aligncenter size-full wp-image-230&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/3388417313851480598/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/3388417313851480598' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/3388417313851480598'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/3388417313851480598'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/01/blog-post_13.html' title='明天就要投票了！'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-8916506082497611845</id><published>2012-01-09T09:00:00.000-08:00</published><updated>2012-05-29T03:50:09.660-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="總統選舉"/><title type='text'>總統選舉支持誰？</title><content type='html'>經過近半年的『選舉嘉年華』，有人熱情參與，有人感到厭煩，&lt;br/&gt;不論如何，投票日就快到了（1/14）。&lt;br/&gt;&lt;br/&gt;希望每個人都能 快快樂樂 的 去投票，&lt;br/&gt;不管您的選擇什麼（投廢票也是一種選擇），&lt;br/&gt;希望大家都能夠 『快樂、勇敢、謙虛、反省』 地 接受各種結果，&lt;br/&gt;&lt;br/&gt;我支持『經過民主程序』所選出來的總統！</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/8916506082497611845/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/8916506082497611845' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/8916506082497611845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/8916506082497611845'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2012/01/blog-post.html' title='總統選舉支持誰？'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-2848125621876919329</id><published>2011-11-09T06:31:00.000-08:00</published><updated>2012-05-29T03:50:09.508-07:00</updated><title type='text'>I2C GPIO</title><content type='html'>PCA9555 TCA9555 TCA6416A GCA9555 GCA6416A</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/2848125621876919329/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/2848125621876919329' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/2848125621876919329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/2848125621876919329'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/11/i2c-gpio.html' title='I2C GPIO'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-3744147325245843425</id><published>2011-10-07T08:25:00.000-07:00</published><updated>2012-05-29T03:50:09.529-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Components"/><category scheme="http://www.blogger.com/atom/ns#" term="Electronic"/><title type='text'>Solid Tantalum Capacitors 尺寸對照</title><content type='html'>常常會用到，留著參考，[&lt;a href=&quot;http://www.vishay.com/docs/40002/293d.pdf&quot;&gt;來源&lt;/a&gt;]&lt;br/&gt;&lt;a href=&quot;http://yfc58.files.wordpress.com/2011/10/cap-dimension.png&quot;&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/10/cap-dimension.png?w=1024&quot; alt=&quot;&quot; title=&quot;Cap-Dimension&quot; width=&quot;1024&quot; height=&quot;438&quot; class=&quot;aligncenter size-large wp-image-217&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;a href=&quot;http://yfc58.files.wordpress.com/2011/10/cap-table.png&quot;&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/10/cap-table.png?w=1024&quot; alt=&quot;&quot; title=&quot;Cap-Table&quot; width=&quot;1024&quot; height=&quot;719&quot; class=&quot;aligncenter size-large wp-image-218&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/3744147325245843425/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/3744147325245843425' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/3744147325245843425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/3744147325245843425'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/10/solid-tantalum-capacitors.html' title='Solid Tantalum Capacitors 尺寸對照'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-646426279822592614</id><published>2011-10-06T01:55:00.000-07:00</published><updated>2012-05-29T03:50:09.608-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="3C"/><title type='text'>Steve Jobs, RIP</title><content type='html'>&lt;a href=&quot;http://yfc58.files.wordpress.com/2011/10/rip.png&quot;&gt;&lt;img class=&quot;aligncenter size-medium wp-image-210&quot; title=&quot;RIP&quot; src=&quot;http://yfc58.files.wordpress.com/2011/10/rip.png?w=300&quot; alt=&quot;&quot; width=&quot;300&quot; height=&quot;218&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://yfc58.files.wordpress.com/2011/10/rember.png&quot;&gt;&lt;img class=&quot;aligncenter size-medium wp-image-211&quot; title=&quot;rember&quot; src=&quot;http://yfc58.files.wordpress.com/2011/10/rember.png?w=300&quot; alt=&quot;&quot; width=&quot;300&quot; height=&quot;189&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/646426279822592614/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/646426279822592614' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/646426279822592614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/646426279822592614'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/10/steve-jobs-rip.html' title='Steve Jobs, RIP'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-2558251081754943960</id><published>2011-09-21T04:39:00.000-07:00</published><updated>2012-05-29T03:50:09.500-07:00</updated><title type='text'>解決 wordpress 自動 Update 的問題</title><content type='html'>Step.1 先到 FileServe.com 申請帳號，他會寄給你一個 FTP Account.&lt;br/&gt;Step.2 到 Wrodpress 下設定 Auto Update 的 FTP 相關設定。&lt;br/&gt;&lt;br/&gt;若看到：&lt;br/&gt;&lt;pre&gt;Unable to locate WordPress Root directory.&lt;br/&gt;Installation Failed&lt;/pre&gt;&lt;br/&gt;的錯誤訊息，則在 wp-config.php 檔案中加上以下幾行：&lt;br/&gt;&lt;pre&gt;/* Fix Wordpress autoupgrades on Byethost.com */&lt;br/&gt;&lt;br/&gt;putenv(&#39;TMPDIR=&#39; . ini_get(&#39;upload_tmp_dir&#39;));&lt;br/&gt;if(is_admin()) {&lt;br/&gt;add_filter(&#39;filesystem_method&#39;, create_function(&#39;$a&#39;, &#39;return &quot;direct&quot;;&#39; ));&lt;br/&gt;define( &#39;FS_CHMOD_DIR&#39;, 0751 );&lt;br/&gt;}&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;以上參考: &lt;a href=&quot;http://byet.net/showthread.php?14054-Unable-to-locate-WordPress-Root-directory.-Installation-Failed&amp;amp;p=68017&quot;&gt;Unable to locate WordPress Root directory. Installation Failed&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;另外，也要注意，wordpress 檔案目錄的權限設定是否正確。</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/2558251081754943960/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/2558251081754943960' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/2558251081754943960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/2558251081754943960'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/09/wordpress-update.html' title='解決 wordpress 自動 Update 的問題'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-5650807713191170857</id><published>2011-08-19T07:36:00.000-07:00</published><updated>2012-05-29T03:50:09.596-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="MacOS"/><title type='text'>安裝 MacPort 會卡住！？</title><content type='html'>剛才安裝 MacPort 2.0.1 時 居然一直卡住無法完成&lt;br/&gt;顯示：『正在等待其他安裝完成』&lt;br/&gt;&lt;br/&gt;&lt;a href=&quot;http://yfc58.files.wordpress.com/2011/08/macport_install.png&quot;&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/macport_install.png?w=300&quot; alt=&quot;&quot; title=&quot;MacPort_Install&quot; width=&quot;300&quot; height=&quot;226&quot; class=&quot;aligncenter size-medium wp-image-200&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;最後只能強制結束&lt;br/&gt;&lt;br/&gt;後來在網路上找到一個方法解決&lt;br/&gt;&lt;code&gt;&lt;br/&gt;Step.1 sudo rm /private/var/db/mds/system/mds.install.lock&lt;br/&gt;Step.2 reboot&lt;br/&gt;&lt;/code&gt;&lt;br/&gt;之後就正常了，真是奇怪！？</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/5650807713191170857/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/5650807713191170857' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/5650807713191170857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/5650807713191170857'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/08/macport.html' title='安裝 MacPort 會卡住！？'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-8530019747196105187</id><published>2011-08-09T10:25:00.000-07:00</published><updated>2012-05-29T03:50:09.652-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="DVD"/><category scheme="http://www.blogger.com/atom/ns#" term="DVD Decrypter"/><category scheme="http://www.blogger.com/atom/ns#" term="dvdmedia"/><category scheme="http://www.blogger.com/atom/ns#" term="MacOS"/><title type='text'>使用 DVD Decrypter 作 .dvdmedia 注意事項</title><content type='html'>在 Windows 下 用 DVD Decrypter 的 FIle Mode 作 DeCSS 後，&lt;br/&gt;並將 目錄名稱 加上 .dvdmedia 在 Mac OS X 下 用 DVD 播放程式 播放，&lt;br/&gt;卻出現 『不支援的媒體類型』的錯誤訊息，&lt;br/&gt;後來才發現，必須要在 .dvdmedia 目錄下，手動建立 VIDEO_TS 的目錄，&lt;br/&gt;並將 DVD Decrypter 所解出來的檔案放在 VIDEO_TS 目錄下，&lt;br/&gt;就可正常在 Mac OS X DVD 播放程式 播放。&lt;br/&gt;之前，在 Mac OS X 下使用 Ripit 解 DVD 建 .dvdmedia 時，&lt;br/&gt;Ripit 會自動建立 VIDEO_TS 目錄，所以是 OK 的。</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/8530019747196105187/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/8530019747196105187' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/8530019747196105187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/8530019747196105187'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/08/dvd-decrypter-dvdmedia.html' title='使用 DVD Decrypter 作 .dvdmedia 注意事項'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-482041952597855754</id><published>2011-08-06T11:30:00.000-07:00</published><updated>2012-05-29T03:50:09.540-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cars"/><category scheme="http://www.blogger.com/atom/ns#" term="Outback"/><category scheme="http://www.blogger.com/atom/ns#" term="Subaru"/><title type='text'>2010 Outback 2.5i 安裝 後車廂 12V 電源座</title><content type='html'>由於 Outback 無 後車廂 12V 電源座，&lt;br/&gt;有時會造成不便，所以決定回廠加裝！&lt;br/&gt;&lt;br/&gt;開始拆隔板&lt;br/&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/1.jpg&quot; alt=&quot;&quot; title=&quot;1&quot; width=&quot;478&quot; height=&quot;640&quot; class=&quot;aligncenter size-full wp-image-182&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;原廠已經有預留線路（紅色圈），加裝插座即可&lt;br/&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/2.jpg&quot; alt=&quot;&quot; title=&quot;2&quot; width=&quot;478&quot; height=&quot;640&quot; class=&quot;aligncenter size-full wp-image-182&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;原廠部品（價格還算便宜）&lt;br/&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/3.jpg&quot; alt=&quot;&quot; title=&quot;3&quot; width=&quot;478&quot; height=&quot;640&quot; class=&quot;aligncenter size-full wp-image-182&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/4.jpg&quot; alt=&quot;&quot; title=&quot;4&quot; width=&quot;478&quot; height=&quot;640&quot; class=&quot;aligncenter size-full wp-image-182&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/5.jpg&quot; alt=&quot;&quot; title=&quot;5&quot; width=&quot;478&quot; height=&quot;640&quot; class=&quot;aligncenter size-full wp-image-182&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/6.jpg&quot; alt=&quot;&quot; title=&quot;6&quot; width=&quot;478&quot; height=&quot;640&quot; class=&quot;aligncenter size-full wp-image-182&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;隔板鑽孔後，裝上插座&lt;br/&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/7.jpg&quot; alt=&quot;&quot; title=&quot;7&quot; width=&quot;478&quot; height=&quot;640&quot; class=&quot;aligncenter size-full wp-image-182&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;完工，搞定！&lt;br/&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/8.jpg&quot; alt=&quot;&quot; title=&quot;8&quot; width=&quot;478&quot; height=&quot;640&quot; class=&quot;aligncenter size-full wp-image-182&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/9.jpg&quot; alt=&quot;&quot; title=&quot;9&quot; width=&quot;478&quot; height=&quot;640&quot; class=&quot;aligncenter size-full wp-image-182&quot; /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;整個安裝過程，耗時約四十分鐘。</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/482041952597855754/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/482041952597855754' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/482041952597855754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/482041952597855754'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/08/2010-outback-25i-12v.html' title='2010 Outback 2.5i 安裝 後車廂 12V 電源座'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-1779146463915038724</id><published>2011-08-05T06:40:00.000-07:00</published><updated>2012-05-29T03:50:09.483-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Cars"/><category scheme="http://www.blogger.com/atom/ns#" term="Outback"/><category scheme="http://www.blogger.com/atom/ns#" term="Subaru"/><title type='text'>2010 Subaru Outback 2.5i 油耗統計</title><content type='html'>2010 Subaru Outback 2.5i 油耗統計&lt;br/&gt;&lt;br/&gt;統計日期：2010/4/13 ~ 2010/11/4&lt;br/&gt;儀表里程：3443 Km ~ 14187 Km&lt;br/&gt;&lt;br/&gt;行駛里程：10744 km&lt;br/&gt;總加油量：1092.79L&lt;br/&gt;平均油價：NT$29.927/L&lt;br/&gt;&lt;br/&gt;平均油耗：9.83 Km/L, NT$3.04/Km&lt;br/&gt;&lt;br/&gt;汽油種類：&lt;br/&gt;除了三次加到98汽油外，其餘均加95汽油。&lt;br/&gt;&lt;br/&gt;行駛路況：&lt;br/&gt;平日上下班都是 新竹 - 竹北 高速公路塞車來回（上班非常塞！下班還好），&lt;br/&gt;週六、日，偶爾跑跑附近縣市（台北、桃園、苗栗、台中），很少跑山路。&lt;br/&gt;&lt;a href=&quot;http://yfc58.files.wordpress.com/2011/08/oil.png&quot;&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/08/oil.png&quot; alt=&quot;&quot; title=&quot;OIL&quot; width=&quot;640&quot; height=&quot;960&quot; class=&quot;aligncenter size-full wp-image-178&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/1779146463915038724/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/1779146463915038724' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/1779146463915038724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/1779146463915038724'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/08/2010-subaru-outback-25i.html' title='2010 Subaru Outback 2.5i 油耗統計'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-7123429859935789557</id><published>2011-06-22T06:36:00.000-07:00</published><updated>2012-05-29T03:50:09.615-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Life"/><title type='text'>公司新菜色，專解塑化劑之毒</title><content type='html'>&lt;a href=&quot;http://yfc58.files.wordpress.com/2011/06/e785a7e78987.jpg&quot;&gt;&lt;img src=&quot;http://yfc58.files.wordpress.com/2011/06/e785a7e78987.jpg?w=764&quot; alt=&quot;&quot; title=&quot;公司菜單&quot; width=&quot;764&quot; height=&quot;1024&quot; class=&quot;aligncenter size-large wp-image-173&quot; /&gt;&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/7123429859935789557/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/7123429859935789557' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/7123429859935789557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/7123429859935789557'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/06/blog-post.html' title='公司新菜色，專解塑化劑之毒'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-4911991799903580441</id><published>2011-05-09T02:03:00.000-07:00</published><updated>2012-05-29T03:50:09.544-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="aquaterm"/><category scheme="http://www.blogger.com/atom/ns#" term="GNUPLOT"/><category scheme="http://www.blogger.com/atom/ns#" term="MacOS"/><title type='text'>gnuplot with aquaterm</title><content type='html'>自從 重新安裝的 Mac OS X 10.6 之後，一直忘了將 gnuplot 裝回去&lt;br/&gt;可是用 macport 安裝了 gnuplot 卻發現 無法正常輸出到 aquaterm &lt;br/&gt;輸出到 X11 是正常的，很奇怪。&lt;br/&gt;gnuplot 安裝過程（aquaterm 會自動安裝）：&lt;br/&gt;&lt;code&gt;&lt;br/&gt;$ sudo port install gnuplot&lt;br/&gt;&lt;/code&gt;&lt;br/&gt;後來，發現一個奇怪的現象與解法，&lt;br/&gt;aquaterm 似乎是安裝在 /Applications/MacPorts/AquaTerm.app 的路徑下&lt;br/&gt;似乎與一般 Mac Port 的安裝路徑不同，一般都是在 /opt/local 下&lt;br/&gt;奇怪的解法：只要先手動執行過  aquaterm 之後，就正常了：&lt;br/&gt;&lt;code&gt;&lt;br/&gt;＄ /Applications/MacPorts/AquaTerm.app/Contents/MacOS/AquaTerm&lt;br/&gt;&lt;/code&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/4911991799903580441/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/4911991799903580441' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/4911991799903580441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/4911991799903580441'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/05/gnuplot-with-aquaterm.html' title='gnuplot with aquaterm'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-3178671813885427400</id><published>2011-05-06T08:09:00.000-07:00</published><updated>2012-05-29T03:50:09.515-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AppArmor"/><category scheme="http://www.blogger.com/atom/ns#" term="IT"/><category scheme="http://www.blogger.com/atom/ns#" term="OpenSuSE"/><category scheme="http://www.blogger.com/atom/ns#" term="OS"/><category scheme="http://www.blogger.com/atom/ns#" term="Samba"/><title type='text'>OpenSuSE 11.4 Smaba 不會動？</title><content type='html'>升級到 OpenSuSE 11.4  之後，Samba 就不通了，&lt;br/&gt;goolge 一下之後，發現是 Novell AppArmor 與 Samba 不合，&lt;br/&gt;Samba 被 AppArmor 給檔了，&lt;br/&gt;最後把 AppArmor 關掉，並重起 Samba 之後就OK了。</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/3178671813885427400/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/3178671813885427400' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/3178671813885427400'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/3178671813885427400'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/05/opensuse-114-smaba.html' title='OpenSuSE 11.4 Smaba 不會動？'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2643938839059836896.post-4592640282979501188</id><published>2011-04-28T17:36:00.000-07:00</published><updated>2012-05-29T03:50:09.537-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ARM"/><category scheme="http://www.blogger.com/atom/ns#" term="Armber"/><category scheme="http://www.blogger.com/atom/ns#" term="iverilog"/><category scheme="http://www.blogger.com/atom/ns#" term="MacOS"/><category scheme="http://www.blogger.com/atom/ns#" term="Opencores"/><category scheme="http://www.blogger.com/atom/ns#" term="Verilog"/><title type='text'>Simulate Armber on Mac OS</title><content type='html'>The &lt;a href=&quot;http://opencores.com/project,amber&quot;&gt;Amber processor&lt;/a&gt; core is an ARM-compatible 32-bit RISC processor. The Amber core is fully compatible with the ARM® v2a instruction set architecture (ISA) and is therefore supported by the GNU toolset.&lt;br/&gt;I would like to try run on my Mac Mini, so, I install Armber, tools and do some modification...&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;1.&lt;/strong&gt; Download the Amber project from the Opencores Subversion server&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;$ mkdir ~/AmberInstallPath&lt;br/&gt;$ cd ~/AmberInstallPath&lt;br/&gt;$ svn --username YOUR_NAME -password PASSWORD co http://opencores.org/ocsvn/amber/amber/trunk&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;strong&gt;2.&lt;/strong&gt; Install the GNU cross compiler&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;$ sudo port install arm-none-linux-gnueabi-gcc&lt;br/&gt;$ sudo port install gawk&lt;br/&gt;$ cd /opt/local/bin&lt;br/&gt;$ sudo ln -s gawk awk&lt;br/&gt;$ sudo ln -s arm-none-linux-gnueabi-gcc-2005q3 arm-none-linux-gnueabi-gcc&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;strong&gt;3. &lt;/strong&gt;Install Icarus Verilog Simulator&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;$ sudo port install iverilog&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;strong&gt;4.&lt;/strong&gt; Edit ~/.profile and add the following&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;$ export AMBER_BASE=~/AmberInstallPath/trunk&lt;br/&gt;$ export AMBER_CROSSTOOL=arm-none-linux-gnueabi&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;strong&gt;5.&lt;/strong&gt; Make scripts executable and create a run link&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;$ cd $AMBER_BASE&lt;br/&gt;$ chmod +x hw/tools/*.sh sw/tools/*.sh&lt;br/&gt;$ ln -s ../tools/run.sh hw/sim/run&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;6. &lt;/strong&gt;Create $AMBER_BASE/hw/tools/runIV.patch by following&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;--- run.sh	2011-04-29 08:47:23.000000000 +0800&lt;br/&gt;+++ runIV.sh	2011-04-29 09:14:21.000000000 +0800&lt;br/&gt;@@ -46,12 +46,9 @@&lt;br/&gt; AMBER_LOAD_MAIN_MEM=&quot; &quot;&lt;br/&gt; AMBER_TIMEOUT=0&lt;br/&gt; AMBER_LOG_FILE=&quot;tests.log&quot;&lt;br/&gt;-SET_G=0&lt;br/&gt; SET_M=0&lt;br/&gt; SET_D=0&lt;br/&gt; SET_T=0&lt;br/&gt;-SET_S=0&lt;br/&gt;-SET_V=0&lt;br/&gt; SET_A=0&lt;br/&gt; SET_5=0&lt;br/&gt; &lt;br/&gt;@@ -59,14 +56,11 @@ SET_5=0&lt;br/&gt; # show program usage&lt;br/&gt; show_usage() {&lt;br/&gt;     echo &quot;Usage:&quot;&lt;br/&gt;-    echo &quot;run  [-a] [-g] [-d] [-t] [-s] [-v]&quot;&lt;br/&gt;+    echo &quot;run  [-a] [-d] [-t]&quot;&lt;br/&gt;     echo &quot; -h : Help&quot;&lt;br/&gt;     echo &quot; -a : Run hardware tests (all tests in \$AMBER_BASE/hw/tests)&quot;&lt;br/&gt;-    echo &quot; -g : Use Modelsim GUI&quot;&lt;br/&gt;     echo &quot; -d : Create vcd file&quot;&lt;br/&gt;     echo &quot; -t : Create vcd file and terminate&quot;&lt;br/&gt;-    echo &quot; -s : Use Xilinx Spatran6 Libraries (slower sim)&quot;&lt;br/&gt;-    echo &quot; -v : Use Xilinx Virtex6 Libraries (slower sim)&quot;&lt;br/&gt;     echo &quot; -5 : Use Amber25 core instead of Amber23 core&quot;&lt;br/&gt;     echo &quot;&quot;&lt;br/&gt;     exit&lt;br/&gt;@@ -103,14 +97,8 @@ do&lt;br/&gt;             case $1 in&lt;br/&gt;                 -a)     SET_A=1   # all tests&lt;br/&gt;                         shift ;;&lt;br/&gt;-                -s)     SET_S=1   # Xilinx libs&lt;br/&gt;-                        shift ;;&lt;br/&gt;-                -v)     SET_V=1   # Xilinx libs&lt;br/&gt;-                        shift ;;&lt;br/&gt;                 -5)     SET_5=1   # Xilinx libs&lt;br/&gt;                         shift ;;&lt;br/&gt;-                -g)     SET_G=1   # Bring up GUI&lt;br/&gt;-                        shift ;;&lt;br/&gt;                 -d)     SET_D=1&lt;br/&gt;                         DUMP_START=$2&lt;br/&gt;                         shift 2;;&lt;br/&gt;@@ -135,24 +123,7 @@ done&lt;br/&gt; # Set comfiguration based on command-line options&lt;br/&gt; #--------------------------------------------------------&lt;br/&gt; &lt;br/&gt;-if [ $SET_G == 1 ]; then&lt;br/&gt;-    RUN_OPTIONS=&quot;-do cmd.do&quot;&lt;br/&gt;-else    &lt;br/&gt;-    RUN_OPTIONS=&quot;${RUN_OPTIONS} -c -do run.do&quot;&lt;br/&gt;-fi&lt;br/&gt;-&lt;br/&gt;-if [ $SET_S == 1 ]; then&lt;br/&gt;-    FPGA=&quot;+define+XILINX_SPARTAN6_FPGA +define+XILINX_FPGA&quot;&lt;br/&gt;-    RUN_OPTIONS=&quot;${RUN_OPTIONS} -t ps  +notimingchecks -L unisims_ver -L secureip&quot;&lt;br/&gt;-else    &lt;br/&gt;-    if [ $SET_V == 1 ]; then&lt;br/&gt;-        FPGA=&quot;+define+XILINX_VIRTEX6_FPGA +define+XILINX_FPGA&quot;&lt;br/&gt;-        RUN_OPTIONS=&quot;${RUN_OPTIONS} -t ps  +notimingchecks&quot;&lt;br/&gt;-    else    &lt;br/&gt;-        FPGA=&quot; &quot;&lt;br/&gt;-    fi&lt;br/&gt;-fi&lt;br/&gt;-&lt;br/&gt;+RUN_OPTIONS=&quot;-f iverilog.f&quot;&lt;br/&gt; &lt;br/&gt; if [ $SET_D == 1 ]; then&lt;br/&gt;     AMBER_DUMP_VCD=&quot;+define+AMBER_DUMP_VCD +define+AMBER_DUMP_START=$DUMP_START&quot;&lt;br/&gt;@@ -173,13 +144,8 @@ else    &lt;br/&gt; fi&lt;br/&gt; &lt;br/&gt; if [ $SET_A == 1 ]; then&lt;br/&gt;-    if [ $SET_S == 1 ]; then&lt;br/&gt;-        TECH=&quot;-s&quot;&lt;br/&gt;-    elif [ $SET_V == 1 ]; then&lt;br/&gt;-        TECH=&quot;-v&quot;&lt;br/&gt;-    else    &lt;br/&gt;-        TECH=&quot; &quot;&lt;br/&gt;-    fi        &lt;br/&gt;+&lt;br/&gt;+    TECH=&quot; &quot;&lt;br/&gt; &lt;br/&gt;     if [ $SET_5 == 1 ]; then&lt;br/&gt;         CORE=&quot;-5&quot;&lt;br/&gt;@@ -273,54 +239,42 @@ fi&lt;br/&gt; &lt;br/&gt; &lt;br/&gt; #--------------------------------------------------------&lt;br/&gt;-# Modelsim&lt;br/&gt;+# iVerilog&lt;br/&gt; #--------------------------------------------------------&lt;br/&gt;-if [ $MAKE_STATUS == 0 ]; then&lt;br/&gt;-   if [ ! -d work ]; then&lt;br/&gt;-       vlib work&lt;br/&gt;-   fi&lt;br/&gt;-&lt;br/&gt;-   if [ $? == 0 ]; then&lt;br/&gt;-       vlog +libext+.v \&lt;br/&gt;-            +incdir+../vlog/amber23+../vlog/amber25+../vlog/system+../vlog/tb+../vlog/ethmac \&lt;br/&gt;-            +incdir+../vlog/lib+../vlog/xs6_ddr3+../vlog/xv6_ddr3 \&lt;br/&gt;-            -y ../vlog/amber23 -y ../vlog/amber25 -y ../vlog/system  -y ../vlog/tb -y ../vlog/ethmac \&lt;br/&gt;-            -y ../vlog/lib   -y ../vlog/xs6_ddr3 -y ../vlog/xv6_ddr3  \&lt;br/&gt;-            -y $XILINX/verilog/src/unisims \&lt;br/&gt;-            -y $XILINX/verilog/src \&lt;br/&gt;-            ../vlog/tb/tb.v \&lt;br/&gt;-            $XILINX/verilog/src/glbl.v \&lt;br/&gt;-            +define+BOOT_MEM_FILE=\&quot;$BOOT_MEM_FILE\&quot; \&lt;br/&gt;-            +define+BOOT_MEM_PARAMS_FILE=\&quot;$BOOT_MEM_PARAMS_FILE\&quot; \&lt;br/&gt;-            +define+MAIN_MEM_FILE=\&quot;$MAIN_MEM_FILE\&quot; \&lt;br/&gt;-            +define+AMBER_LOG_FILE=\&quot;$AMBER_LOG_FILE\&quot; \&lt;br/&gt;-            +define+AMBER_TEST_NAME=\&quot;$AMBER_TEST_NAME\&quot; \&lt;br/&gt;-            +define+AMBER_SIM_CTRL=$TEST_TYPE \&lt;br/&gt;-            +define+AMBER_TIMEOUT=$AMBER_TIMEOUT \&lt;br/&gt;-            ${FPGA} \&lt;br/&gt;-            $AMBER_CORE \&lt;br/&gt;-            $AMBER_DUMP_VCD \&lt;br/&gt;-            $AMBER_TERMINATE \&lt;br/&gt;-            $AMBER_LOAD_MAIN_MEM&lt;br/&gt;-                  &lt;br/&gt;-        if [ $? == 0 ]; then&lt;br/&gt;-            vsim -voptargs=&quot;+acc=rnpc&quot; tb ${RUN_OPTIONS}&lt;br/&gt;-            &lt;br/&gt;-            # Set a timeout value for the test if it passed&lt;br/&gt;-            if [ $TEST_TYPE == 1 ]; then&lt;br/&gt;-                tail -1  /dev/null&lt;br/&gt;-                if  [ $? == 0 ]; then&lt;br/&gt;-                    TICKS=`tail -1 &amp;gt; $AMBER_LOG_FILE&lt;br/&gt;-fi&lt;br/&gt;+      echo &quot;+libext+.v&quot;                &amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+incdir+../vlog/amber23&quot;  &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+incdir+../vlog/amber25&quot;  &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+incdir+../vlog/system&quot;   &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+incdir+../vlog/tb&quot;       &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+incdir+../vlog/ethmac&quot;   &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+incdir+../vlog/lib&quot;      &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+incdir+../vlog/xs6_ddr3&quot; &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+incdir+../vlog/xv6_ddr3&quot; &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;-y../vlog/amber23&quot;        &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;-y../vlog/amber25&quot;        &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;-y../vlog/system&quot;         &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;-y../vlog/tb&quot;             &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;-y../vlog/ethmac&quot;         &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;-y../vlog/lib&quot;            &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;-y../vlog/xs6_ddr3&quot;       &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;-y../vlog/xv6_ddr&quot;        &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+define+BOOT_MEM_FILE=\&quot;$BOOT_MEM_FILE\&quot;&quot;               &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+define+BOOT_MEM_PARAMS_FILE=\&quot;$BOOT_MEM_PARAMS_FILE\&quot;&quot; &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+define+MAIN_MEM_FILE=\&quot;$MAIN_MEM_FILE\&quot;&quot;               &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+define+AMBER_LOG_FILE=\&quot;$AMBER_LOG_FILE\&quot;&quot;             &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+define+AMBER_TEST_NAME=\&quot;$AMBER_TEST_NAME\&quot;&quot;           &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+define+AMBER_SIM_CTRL=$TEST_TYPE&quot;                      &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;+define+AMBER_TIMEOUT=$AMBER_TIMEOUT&quot;                   &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;$AMBER_CORE&quot;          &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;$AMBER_DUMP_VCD&quot;      &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;$AMBER_TERMINATE&quot;     &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;$AMBER_LOAD_MAIN_MEM&quot; &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+      echo &quot;../vlog/tb/tb.v&quot;      &amp;gt;&amp;gt; iverilog.f&lt;br/&gt;+&lt;br/&gt;+      rm -rf ./armber&lt;br/&gt;+      iverilog -f iverilog.f -o armber&lt;br/&gt;+      ./armber&lt;br/&gt;&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;7. &lt;/strong&gt;Create runIV script for iverilog simulator&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;$ cd $AMBER_BASE/hw/tools&lt;br/&gt;$ patch -o runIV.sh -i runIV.patch&lt;br/&gt;$ chmod +x runIV.sh&lt;br/&gt;$ cd $AMBER_BASE/hw/sim&lt;br/&gt;$ ln -s ../tools/runIV.sh runIV&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;strong&gt;8. &lt;/strong&gt;If you see the iverilog compile error message for &lt;em&gt;log2&lt;/em&gt; function in next step, you could replace &lt;em&gt;log2&lt;/em&gt; by &lt;em&gt;$clog2&lt;/em&gt; to solve the problem. &lt;br/&gt;&lt;br/&gt;&lt;strong&gt;9.&lt;/strong&gt; Run a Hello-World Test with Amber 25&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;$ cd $AMBER_BASE/hw/sim&lt;br/&gt;$ runIV -5 hello-world&lt;br/&gt;&lt;/pre&gt;&lt;br/&gt;&lt;strong&gt;10.&lt;/strong&gt; Hello-World simulation Result&lt;br/&gt;&lt;pre&gt;&lt;br/&gt;Amber Boot Loader v20110202130047&lt;br/&gt;Hello, World!&lt;br/&gt;&lt;br/&gt;----------------------------------------------------------------------------&lt;br/&gt;Amber Core&lt;br/&gt;       &amp;gt; User         FIRQ         IRQ          SVC&lt;br/&gt;r0       0x00000010&lt;br/&gt;r1       0x16000000&lt;br/&gt;r2       0x00000000&lt;br/&gt;r3       0x00000000&lt;br/&gt;r4       0x0c80e403&lt;br/&gt;r5       0x00000000&lt;br/&gt;r6       0x00000000&lt;br/&gt;r7       0x00000000&lt;br/&gt;r8       0xdeadbeef   0xdeadbeef &lt;br/&gt;r9       0xdeadbeef   0xdeadbeef &lt;br/&gt;r10      0x00000011   0xdeadbeef &lt;br/&gt;r11      0xf0000000   0xdeadbeef &lt;br/&gt;r12      0x00000000   0xdeadbeef &lt;br/&gt;r13      0x08000000   0xdeadbeef   0xdeadbeef   0x01ffffb8&lt;br/&gt;r14 (lr) 0x0080e420   0xdeadbeef   0xdeadbeef   0x20000787&lt;br/&gt;r15 (pc) 0x0080e960&lt;br/&gt;&lt;br/&gt;Status Bits: N=0, Z=1, C=1, V=0, IRQ Mask 0, FIRQ Mask 0, Mode = User          &lt;br/&gt;----------------------------------------------------------------------------&lt;br/&gt;&lt;br/&gt;++++++++++++++++++++&lt;br/&gt;Passed hello-world 29320 ticks&lt;br/&gt;++++++++++++++++++++&lt;br/&gt;&lt;/pre&gt;</content><link rel='replies' type='application/atom+xml' href='http://yfchen58.blogspot.com/feeds/4592640282979501188/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/2643938839059836896/4592640282979501188' title='1 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/4592640282979501188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2643938839059836896/posts/default/4592640282979501188'/><link rel='alternate' type='text/html' href='http://yfchen58.blogspot.com/2011/04/simulate-armber-on-mac-os.html' title='Simulate Armber on Mac OS'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/13699674911735093223</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>