<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          tmux在ARM上的移植

          作者: 時(shí)間:2016-11-11 來源:網(wǎng)絡(luò) 收藏
          當(dāng)使用超級(jí)終端或者M(jìn)inicom通過串口去調(diào)試ARM的時(shí)候,只能使用一個(gè)終端,不能像在Linux PC機(jī)上同時(shí)打開多個(gè)終端,這為我們同時(shí)執(zhí)行或者調(diào)試多個(gè)程序帶來不便;當(dāng)然你可以讓某些程序在后臺(tái)執(zhí)行,但是有沒有更好的辦法呢?
          在Linux PC機(jī)上我們可以使用GNU Screen對(duì)終端進(jìn)行復(fù)用,不過GNU Screen移植到ARM還是比較困難的。而且還有比GNU Screen更好的終端復(fù)用器,就是我們今天要用到的tmux.
          我選擇移植的版本是tmux-1.2,從tmux-1.2開始,它依賴于libevent包,當(dāng)然,它還依賴于ncurses.
          ncurses我之前都已經(jīng)移植好了的,這里就不說了。
          一.libevent的交叉編譯
          1.配置
          ./configure --prefix=/opt/crossinstall/libevent --host=arm-uclibc-linux CC=arm-uclibc-linux-gcc CXX=arm-uclibc-linux-g++
          2.編譯
          make
          3.安裝
          make install
          二,tmux的交叉編譯
          1.配置
          ./configure
          2.然后修改config.mk
          添加兩行:
          CPPFLAGS+=/opt/crossinstall/libevent/include /opt/ncurses-5.7/include
          LDFLAGS+=/opt/crossinstall/libevent/lib /opt/ncurses-5.7/lib
          3.編譯
          make
          4.在目標(biāo)板上建立如下文件夾
          /usr/share/terminfo/v/
          將PC機(jī)的同樣文件夾下的vt100 vt102拷貝到目標(biāo)板上
          5.將tmux拷貝到目標(biāo)板/usr/sbin下, tmux需要的庫拷貝到目標(biāo)板/lib下
          大功告成
          簡(jiǎn)要使用說明:
          要?jiǎng)?chuàng)建一個(gè)新的窗口,可以先按 Ctrl+b,再按 c
          切換到下一個(gè)窗口,可以先按 Ctrl+b,再按 n
          切換到上一個(gè)窗口,可以先按 Ctrl+b,再按 p
          Ctl+b 0、Ctl+b 1……Ctl+b n 切換到第 n 個(gè)窗口
          分割窗口,可以先按 Ctrl+b,再按"


          關(guān)鍵詞: tmuxARM移

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();