2014年2月24日 星期一

在 Fedora 20 (3.13.3~3.14.8) 安裝「EDIMAX EW-7811Un」驅動程式

Fedora 20 的系統核心升級到 3.13.2-201 後,依前文『在 Fedora 20 安裝「EDIMAX EW-7811Un」驅動』步驟編譯新的驅動程式,會出現
.....
  CC [M]  /home/SiB/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/os_dep/linux/os_intfs.o
/home/SiB/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/os_dep/linux/os_intfs.c:1006:2: 警告:永遠不相容的指標類型初始化 [enabled by default]
  .ndo_select_queue = rtw_select_queue,
  ^
/home/SiB/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/driver/rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911/os_dep/linux/os_intfs.c:1006:2: 警告:(在 「rtw_netdev_ops.ndo_select_queue」的初始化附近) [enabled by default]
.....
的錯誤訊息。
  看樣子,又得修改『驅動程式原始碼』了,順便將需要 root 權限的部分減少些。修改後的新步驟如下:

2014年2月23日 星期日

安裝 Fedora 方法(一):以 DVD 或 CD-ROM 開機、安裝(F20 補充)

在前文『安裝 Fedora 方法(一):以 DVD 或 CD-ROM 開機、安裝』以 CD-ROM 開機,再由儲存在『USB 隨身碟』中的 ISO 檔案安裝,的確可以增快直接 DVD 或 CD-ROM 安裝的速度。但是,最近在舊筆電『Asus M2400』安裝 Fedora 20 時卻發生問題。
  趕緊找找看是哪裏出問題,測了一下只是舊的修改方法在 Fedora 20 不認得而已。新修訂如下:
放入『網路安裝 CD (netinst.iso)』由 DVD-/CD-ROM 開機,當安裝 Fedora 20 時,光碟啟動後,出現這個畫面
在倒數至 0 秒前,選擇『Install Fedora 20』,再按【Tab】鍵,進入 Linux 啟動命令編輯畫面。將命令列參數中的
inst.stage2=hd:LABEL=Fedora\x2020\x20i386 quiet
改為
repo=hd:LABEL=FedoraUISO quiet
其中,『FedoraUISO』為 USB 隨身碟的『名稱』,不用加雙引號(" "),命令列前頭的『vmlinuz initrd=initrd.img』不用動它。按【Enter】後,接下來的操作就和用 DVD.iso 開機、安裝相同,就不再贅述。

注意:上例中『USB 隨身碟』的為依『適用 Fedora 20 的「可選版本 USB 安裝隨身碟」』所述步驟製做而成。

已測試版本:

  • Fedora: 20

2014年2月16日 星期日

更改「主機名稱(host name)」

前幾天在 AUSU M2400 筆電安裝 Fedora 20,因為不能用 USB 開機,使用『網路安裝光碟』安裝。每次一按個滑鼠鍵後,就得等其從『官方的 Fedora 伺服器』下載相關的程式執行。等著…等著…竟然,忘了修改主機的名稱,所以安裝後的預設「主機名稱」為『localhost.localdoamin』。
  一開始測試時也沒發現,直到在測試 synergy 時才發現到「主機名稱」不對。在 Fedora 14 時曾改過一次「主機名稱」,印象中相當麻煩,所以後來的安裝都很小心。就趁這個機會試試,看最新的 Fedora 版本在這方面是否有更方便的作法。
  在網路上有人提及『hostnamectl』這個命令,似乎不錯用。就拿來試試看,並做個記錄。如果只是要修改「主機名稱」,命令如下:
[root@localhost ~]# hostnamectl set-hostname M2400
上例中,『M2400』是新設定的「主機名稱」。接著要將網路重新啟動一次,剛才的設定才會生效
[root@localhost ~]# systemctl restart network.service
眼尖的讀者會發現,登入中帳號的「終端機」之「主機名稱」並沒有改變,仍為『localhost』,要先登出帳號再重新登入才會改成新的名稱。

註一:將電腦重新開機一次也可以。
註二:當時只想快安裝、測試,應該用『安裝 Fedora 方法(一):以 DVD 或 CD-ROM 開機、安裝』中的方法,先用 CD-ROM 開機再由 USB 安裝才對。

已測試版本:

  • Fedora: 20

參考資料:

2014年2月14日 星期五

在「遠端電腦」開發,經 SFTP 下載,再由「本地電腦」ADB 載入至 Android 裝置測試

最近在開發 Android Apps 時,用平常工作用的電腦,覺得稍嫌慢了一些。於是從「本地電腦」以 VNC 連上「遠端電腦」,用另一台較快的電腦寫程式,希望編寫、編譯程式時會快一些(註:最近流行雲端應用)。如果模擬器是也在「遠端電腦」,僅將畫面傳回「本地電腦」時,除畫面及操作會有一些延遲外,其它的反應時間都相當不錯。
  但是,當這些開發的程式需要用 Android 裝置測試,用 VNC 連接「遠端電腦」時,也要同時『重導』USB 的連線,目前試過的幾個方法都有些麻煩。故而採用較簡單的解決辦法,就是將在「遠端電腦」編譯後產生的 Android apk 檔案,用 FTP 或 SFTP 下載回「本地電腦」,再利用 Android 的開發工具 ADB 將之下載至 Android 裝置測試。
  整理一下到目前為止的紀錄:
開 發 端測 試 機 (端)發 文 連 結
Eclipse (PC_1)AVD (在 PC_1)預設之開發環境(使用 AVD 模擬器)
Eclipse (PC_1)Android 裝置 (連接 PC_1)預設之開發環境(使用 Android 裝置)預設之開發環境(使用 Android 裝置)
Linux 中,令 ADB 測得以USB連接的 Android設備
Linux 中,令 ADB 測得以USB連接的 Android設備(F19)
Eclipse (PC_1)AVD (在 PC_2)使用另一台電腦的 Android 模擬器 (AVD) 除錯
Eclipse (PC_1)Android-x86 (為 PC_2)用另一台運行 Android-x86 的電腦除錯
Eclipse (PC_1)Android 裝置 (Galaxy SII)用 WiFi 下載 Android 程式到 GALAXY SII 手機
Eclipse (PC_1)Android 裝置 (連接 PC_2)本文
註一:『PC_1』和『PC_2』分別指兩台不同之電腦,『PC_1』為執行開發 Android App 的 Eclipse 之電腦,而『PC_2』是指另一台電腦。
註二:『PC_1』和『PC_2』編號與執行快慢無關,選擇以方便開發為主要考量。

在「遠端電腦」開發 App,經 FTP 或 SFTP 下載,再由「本地電腦」之 ADB 載入 Android 裝置測試,步驟說明如下:

2014年2月12日 星期三

Linux 中,令 ADB 測得以 USB 連接的 Android 設備(F19)

在 Linux 中使用 Android SDK 開發 App 時,遇到將 Android 手機或平板透過 USB 接在電腦,但是電腦卻不能自動偵測到。在前文『Linux 中,令 ADB 測得以 USB 連接的 Android 設備』中的步驟,在電腦更新作業系統後,有些部份已經不再適用。
  另外,有些新增加的 Android 裝置之 USB 辨認碼,也一併整理一下。只要依照下面這幾個步驟,就可以自動偵測了: