原创 使用shell腳本獲取gcc版本號的方法

不少人在shell腳本中獲取gcc版本號的方法是通過對gcc --version命令的輸出結果進行字符串截取處理獲取的,實際上還有更好的方式精確獲取gcc的主、副版本號與補丁版本號,即通過gcc提供的版本宏來獲取。 該方法參考至uboot

原创 【全網最暴力解決方案】使用gdb調試時遭遇“Missing separate debuginfos, use: debuginfo-install glibc....”報錯信息

問題現象 日前在CentOS 6虛擬機上使用gdb調試一個由簡單的.c文件編譯生成的可執行程序遭遇如下gdb報錯 Missing separate debuginfos, use: debuginfo-install glibc-2.1

原创 “No module named expat”報錯解決方案

問題現象 expat是一個xml文件解析庫,python中的xml解析操作往往依賴於其完成。最近使用Python腳本解析一個xml模型文件時,在多處環境(均爲Ubuntu 16.04 LTS-amd64)上多次遭遇Python報錯提示“I

原创 在SDCC編譯器中使用51單片機的外部擴展存儲(外部8080總線)

  熟悉Keil的朋友應該都知道,在Keil中可以使用XBYTE關鍵字使用P0與P2組成一個標準的16位Intel總線收發器對外部設備(一般爲擴展RAM,常見於8031系列單片機)進行讀寫操作。最近打算把代碼移植到SDCC環境下開發的時候

原创 對於fork概念的簡單理解

基本概念 衍生(fork)是Unix編程中最強大的概念之一。fork系統調允許運行中的進程以編程的形式創建新的進程。這個新進程和原始進程一模一樣。進行fork操作時,調用fork的進程被稱爲“父進程”,新創建的進程被稱爲“子進程”。子進程

原创 SVN文件屬性小結

前言 在使用SVN的過程中往往會遭遇這樣的問題:Checkout至本地的文件往往不帶可執行權限或可寫權限,這是由於SVN的文件屬性設置導致的。現時網上對於SVN屬性相關的中文文章非常少,基本只描述了問題現象而沒有系統地講解其背後的原理,本

原创 MSP430G2-LaunchPad簡明教程02[開發環境準備(基於mspgcc)]

開發環境的準備包括驅動程序與開發工具兩部分,本教程以Win7平臺爲例,Linux平臺下的開發也可參考。 驅動程序 小紅板自帶一個免驅的USB仿真器供調試與程序燒寫用途,以及一個最高支持9600bps波特率的application UART

原创 MSP430G2-LaunchPad簡明教程01[一些廢話]

一些廢話 相信國內參加過電賽的同學們都接觸過msp430單片機,其中不少人是以ti官方的這款小紅板入門的,它的正式型號名爲【MSP-EXP430G2】,小火箭的logo尤爲醒目。其實LaunchPad家族還有其它許多評估套件,但小紅板受衆

原创 MSP430G2-LaunchPad簡明教程03[創建一個MSP430工程]

在本章節中筆者將向大家介紹如何基於Makefile創建一個MSP430開發工程。 代碼編譯過程 由於本教程沒有采用常見的IDE的途徑進行代碼編寫調試,而是由開發者自己編寫一個Makefile實現項目文件管理的功能,因此需要對MSP430的

原创 “No module name expat”報錯解決方案

問題現象 expat是一個xml文件解析庫,python中的xml解析操作往往依賴於其完成。最近使用Python腳本解析一個xml模型文件時,在多處環境(均爲Ubuntu 16.04 LTS-amd64)上多次遭遇Python報錯提示“I

原创 bash shell默認環境變量一覽

默認情況下bash shell會用一些特定的環境inal來定義系統環境。用戶可以使用Linux系統上默認定義的環境變量。bash shell是由Unix Bourne shell衍生出來的,所以它保留了後者中定義的環境變量。 bash s

原创 Linux環境下的ls命令詳解

什麼是ls命令 在Linux環境下,查看文件與目錄列表往往是通過ls列表命令完成的,該命令可用於格式化輸出指定文件與目錄信息。 ls命令的完整參數列表 ls命令採用兩種格式的命令行參數:(1)單字母參數;(2)全字參數。前者通常由英文破折

原创 Linux man頁面格式

man手冊的常見頁面格式如下表所示 章節名 描述 Name 顯示名的名稱和簡介 Synopsis 顯示命令的格式 Description 描述每個命令的選項 Author 提供該命令開發人員的信息 Reporting Bugs 提供提交b

原创 shell提示符的基本使用規則及解決異常顯示爲-bash-4.1$的問題

什麼是shell提示符 位於shell終端開頭處始終會顯示一包含主機名、用戶名、當前路徑或其他信息的字符串,這個字符串被稱作shell提示符。默認的bash shell提示符是美元符號($),這個符號表明shell在等待用戶輸入,但也可以