國嵌TQ2440學習筆記(網路分享2015-12-27)Paulliam
阿新 • • 發佈:2019-02-09
百度雲盤文字檔案下載連結:http://pan.baidu.com/s/1ntVmYd7
1,檔案共享:
關閉防火牆:/etc/init.d/iptables stop先重啟smb伺服器:/etc/init.d/smb restart
\\192.16.xx.xx開啟共享
登陸:win 123456
關閉Selinux,類似於防火牆的東西:setenforce permissive
路由器可以提供多個IP地址
2,TFTP與NFS配置:
關閉防火牆:/etc/init.d/iptables stop
關閉Selinux,類似於防火牆的東西:setenforce permissive
3,切換使用者:
切換到root使用者:su - 或者 su - root
切換到普通使用者,如win使用者:su - win
4,《Linux密碼故障排除》
刪除root密碼,並重啟系統再設定root密碼,對應手機圖片2012/12/22 15:38-15:52
給root使用者設定新的密碼:passwd root
5,《GCC程式編譯》
預處理:gcc -E hello.c -o hello.i //-o後的hello.i表示指定生成的預處理檔案叫做hello.i
編譯:gcc -S hello.i -o hello.s //生成彙編檔案
彙編:gcc -c hello.s -o hello.o //生成二進位制目標檔案
連結:gcc hello.o -o hello //生成應用程式
一步到位方法一:gcc hello.c //生成可執行檔案a.out,執行它,使用命令 ./a.out
一步到位方法二:gcc hello.c -o hello //生成可執行檔案hello,執行它使用命令 ./hello
一步到位方法三:gcc -O hello.c -o hello //優化執行,計算執行的時間用命令time ./hello
一步到位方法三:gcc -O2 hello.c -o hello //更好的優化執行
直接生成hello.o檔案: gcc -c hello.c
使具備可除錯資訊:gcc -g hello.c -o hello 或者gcc -g -o hello hello.c //應用程式hello的大小將比gcc hello.c -o hello得到的更大
自定義目錄作為編譯器尋找標頭檔案的標準路徑eg:gcc -I /home/include hello.c -o hello或者gcc hello.c -I /home/include -o hello
顯示所有編譯警告:gcc -Wall hello.c -o hello
隱藏所有編譯警告:gcc -w hello.c -o hello
預編譯定義巨集,如巨集名叫做MIE:gcc -DMIE hello.c -o hello //巨集名前面加上編譯選項選項D,意指define
6,虛擬機器設定,即Virtual Machine Settings,在該對話方塊款中勾選你想要的設定選項時,必須保證兩點:必須保證VMware USB Arbitration Service在工作管理員程序中執行;虛擬機器必須處在Power Off狀態下。
7,《安裝linux系統到開發板》
顯示已經安裝的驅動程式:lsmod,在其所有的結果中只顯示你想要顯示的東西,如包含關鍵字為key的檔案:lsmod | grep key
安裝模組,載入模組:insmod dnw_usb.ko
{注意:usb下載線必須接到電腦usb2.0埠}
如果要解除安裝它,則執行:rmmod dnw_usb
norflash啟動板子,串列埠顯示中選擇命令:9 format...
下載uboot,串列埠顯示中選擇命令:1 download uboot...
通過usb下載uboot到指定地址:./dnw ./u-boot-1.1.6_Q43_20141118.bin 30000000
【技能:
在虛擬機器中,右下角有一個類似優盤的裝置圖示,顯示“Samsung SEC S3c6400x Test B/D”,選中裝置圖示,點選右鍵,選擇connet.
#呼叫dnw時只能在當前目錄使用./dnw執行,對此情況,將dnw新增到/usr/local/sbin中,這樣可以在任何目錄,使用 sudo dnw filename來呼叫。
$sudo insmod ./secbulk.ko 為載入模組進核心,開機的時候不會自動載入,這樣每次都要先載入才可以使用,此時將其加入開機指令碼,使其得到自動載入,編輯/etc/init.d/rc.local 在最後加上 insmod /所在路徑/secbulk.ko
】
下載核心,串列埠顯示中選擇命令:3 download linux kernel...
下載核心:./dnw ./zImage_W43_20141026
.bin 30000000
下載檔案系統,串列埠顯示中選擇命令:6 download YAFFS...
下載檔案系統:./dnw ./
root_qtopia_2.2.0_2.6.30.4_256MB_20130330
.bin 30000000
/**************************************************************************************/
/************************國嵌-第三季 小應用大智(上學期)*******************************/
/**************************************************************************************/
1,第2課-GDB程式除錯:
編譯生成帶除錯資訊的可執行檔案test:gcc -g test.c -o test
啟動GDB:gdb test
執行程式:run (若有斷點,執行後將會停在斷點所在行的程式碼處,該行程式碼還並未執行)
顯示一定行數的程式程式碼:list或者l
在函式入口處新增斷點:break 函式名 或者 b 函式名
在指定行新增斷點:break(或者b) 行號
在指定檔案的指定行新增斷點:break(或者b) 檔名:行號 如test.c的第10行:break test.c:10
檢視所有設定的斷點:info break
刪除斷點:delete 斷點編號 (注意:斷點編號是info break顯示資訊中num對應的那一列編號)
檢視變數result的值:print(或者p) result
單步往下執行程式,不進入子函式,並顯示下一步將要執行的:next(或n)
單步往下執行程式,要進入子函式,並顯示下一步將要執行的:step(s)
連續執行一個程式直到遇見下一個斷點:continue(或者c)
設定變數的值:set var=value
退出gdb:quit(或者q)