精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

在嵌入式Linux上運行一個最簡單的“Hello Liunx”程序

Q4MP_gh_c472c21 ? 來源:未知 ? 作者:李倩 ? 2018-04-10 10:36 ? 次閱讀

很早之前我(作者)就想深入學習Linux,但時間有限,并且Linux門檻挺高,不是很容易上手。最近由于隧道項目中用到嵌入式Linux(Arm CPU上的Linux),并且提供硬件的單位針對Linux的編程收費很高,并且時間很長,所以猶豫再三,決定開始深入學習Linux,并在學習過程中完成預定的任務。

沒有想到,在嵌入式Linux上運行一個最簡單的“Hello Liunx”程序就費了很大的周折,不過功夫不負有心人,經過幾天的艱難跋涉,總算成功了,下面我把我的歷程說一下,給后來人有個參考。

要想在嵌入式Linux運行程序,需要有下面幾個問題解決:

1、 需要一個基于Arm的gcc交叉編譯器;

2、 需要Windows與VPC上的Linux進行交互,以便交換文件;

3、 嵌入式Linux系統需要和VPC上的Linux系統或Windows系統進行交互,以便交互文件;

第一個問題,相對比較容易解決,直接和中間廠商要來了cross-2.95.3.tar.bz2 安裝包,這是一款基于Arm平臺上的交叉編輯器。直接解壓到任意目錄即可。

第二個問題,有些棘手,查了若干資料,終于找到可行的辦法。

1、 在Windows XP建一個共享文件夾,如“share”

2、 虛擬機運行起來后,在Linux命令行方式輸入:smbmount //ip地址或計算機名/共享文件夾名 掛載點

3、 Ok,連接成功。

第三個問題,原想著很容易,卻沒有想到是最難的,中間廠商的辦法如下:

采用目標板掛載NFS目錄的方式進行開發

主機:NFS服務器

1、 修改配置文件etc/exports,如

/nfs/rootfs 192.168.0.X(rw,sync,no_root_squash) //具體含義略

2、 配置其為所有用戶可讀,chmod 644 /etc/exports

3、 讓NFS服務器重新載入 etc/exports, /etc/init.d/nfs reload

4、 檢查防火墻,不要屏蔽相應端口

目標板:內核需要支持NFS

1、Enable:

File Systems à

Network File Systems à

NFS file system support

Provide NFSv3 client support

配置完后,重新編譯內核

2、目標板啟動后,mount –t nfs 192.168.0.Y:/nfs/rootfs/mnt –o nolock

按上面一步步做了,目標板提示RPC什么錯誤之類,上網查資料,用Servers指令開啟服務,很可惜,目標板不支持Servers指令。

最后發現目標板支持FTP服務器,總數找到一個救命稻草,不過很可惜,用戶密碼未知,問了中間廠商,用戶和密碼仍然錯誤,最后打了n次電話,告訴可以在目標板上添加新用戶,然后再登錄FTP。

很恐怖的是,書本上教的useradd竟然沒有,后來查看目標板bin上的文件,原來是adduser命令,添加上用戶,果然可以登錄了。不過linux上的FTP客戶端不好使,Windows自帶的也不行,只好下了個FlashFXP軟件,還可以。

在虛擬機的Liunx系統編寫如下程序:

#include

int main(int argc,char **argv)

{

printf("hello linux/n");

}

編寫Makefile文件

all:tt

tt: test.c

/usr/local/arm/2.95.3/bin/arm-linux-gcc -o tt test.c

clean:

-rm -rf tt

在命令行運行Make指令,生成tt文件

把tt文件通過FTP客戶端拷貝到目標板上。

開始直接輸入[root@()]$tt 沒有反應,查資料,發現原來要這樣(如下),為什么?暫時不知道!

[root@()]$ ./tt ,竟然有錯誤提示,提示內容如下:-sh:./tt:Permission denied

上網查資料說是權限不夠,需要運行如下指令:chmode 777 tt

運行后,竟然告訴我,沒有這個命令,最后發現原來是 chmod(看來指令的名稱都被中間廠商修改了)。

運行chmod 777 tt 后,在去運行 ./tt ^^#$^#$@&# OK ---成功了!

后記:linux的使用習慣與windows有很大的區別,linux聯網需要激活網卡才能工作,運行文件需要 ./XXX格式,并且有權限的用戶才能執行,類似的小問題,對一個linux菜鳥來說,真是一個又一個的攔路虎,不過到現在總算接近門檻了,對我來說,后面的路還很長,困難才剛剛開始 … …

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5068

    文章

    19016

    瀏覽量

    303239
  • Linux
    +關注

    關注

    87

    文章

    11227

    瀏覽量

    208920

原文標題:嵌入式Linux編程之旅,我的第一次艱難跋涉

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    嵌入式Linux-Qt環境搭建 Qt程序運行測試

    本編介紹如何在嵌入式Linux開發板配置Qt運行環境,并進行Qt程序運行測試。
    的頭像 發表于 06-01 09:07 ?7376次閱讀
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>-Qt環境搭建 Qt<b class='flag-5'>程序</b><b class='flag-5'>運行</b>測試

    【Rico Board試用體驗】簡單嵌入式應用程序的編譯與測試過程

    本帖最后由 cwfwh 于 2016-12-7 20:06 編輯 前面已經介紹過,基于Fedora環境的嵌入式交叉編譯環境搭建過程,有這個基礎后,這里介紹
    發表于 12-07 20:04

    怎樣去做一個簡單hello程序編譯及運行示例呢

    嵌入式linux簡單hello程序編譯及
    發表于 11-04 06:12

    嵌入式Linux板子運行Hello World

    嵌入式Linux板子運行Hello World
    發表于 11-19 07:37

    Linux實現ARM嵌入式開發

    時間:2019.1.26最近接觸ARM平臺上的嵌入式開發,選擇了Linux作為宿主機,直接裝了Ubuntu16.04的雙系統,沒有windows下裝虛擬機。
    發表于 12-14 09:01

    什么是嵌入式嵌入式Liunx組成

    什么是“嵌入式”?答:除了電腦,其他東西都是“嵌入式嵌入式Liunx組成拿windows做類比,比如我們的手表
    發表于 12-17 07:54

    創建簡單Hello World Linux應用程序的過程

    本教程將向您介紹創建簡單Hello World Linux應用程序的過程,然后將該應用
    發表于 08-28 06:32

    什么是嵌入式Linux

    Linux到底是什么呢? 嵌入式linux 是將日益流行的Linux操作系統進行裁剪修改,使之能在嵌入式計算機系統
    發表于 10-11 13:47

    嵌入式liunx開發技術詳解

    嵌入式liunx開發技術詳解主要內容本書以嵌入式Linux 系統開發流程為主線,剖析了嵌入式Linux
    發表于 03-04 16:58 ?55次下載

    嵌入式Linux應用程序例程

    嵌入式Linux應用程序例程(arm嵌入式開發步驟)-嵌入式Linux應用
    發表于 07-30 13:23 ?16次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>應用<b class='flag-5'>程序</b>例程

    python程序嵌入式linux系統運行。。

    最近在寫運行嵌入式linux系統下的python程序。中間遇到很多坑,接下來我就一一說下。從windows編寫python腳本,然后將文
    發表于 11-01 16:32 ?12次下載
    python<b class='flag-5'>程序</b><b class='flag-5'>在</b><b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b>系統<b class='flag-5'>運行</b>。。

    嵌入式linux簡單hello程序編譯及運行示例

    嵌入式linux簡單hello程序編譯及
    發表于 11-01 16:56 ?9次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>linux</b><b class='flag-5'>一</b><b class='flag-5'>個</b><b class='flag-5'>簡單</b>的<b class='flag-5'>hello</b><b class='flag-5'>程序</b>編譯及<b class='flag-5'>運行</b>示例

    嵌入式Linux應用程序開發-(1)第一個嵌入式QT應用程序

    一個嵌入式QT應用程序成功安裝 Qt Creator 開發環境后,我們通過
    發表于 11-01 17:21 ?16次下載
    <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>應用<b class='flag-5'>程序</b>開發-(1)第<b class='flag-5'>一個</b><b class='flag-5'>嵌入式</b>QT應用<b class='flag-5'>程序</b>

    完整的嵌入式程序_從單片機工程師的角度看嵌入式Linux

    前言這篇文章簡單我們來起梳理嵌入式Linux些知識,方便于些想跟我
    發表于 11-02 12:06 ?13次下載
    <b class='flag-5'>一</b><b class='flag-5'>個</b>完整的<b class='flag-5'>嵌入式</b><b class='flag-5'>程序</b>_從單片機工程師的角度看<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>

    【從0開始創建AWTK應用程序】編譯應用到嵌入式Linux平臺運行

    。搭建Linux平臺交叉編譯環境在上篇文章我們介紹了使用AWTK開發簡單的應用并在PC模擬運行,本篇文章就來介紹
    的頭像 發表于 12-07 12:08 ?670次閱讀
    【從0開始創建AWTK應用<b class='flag-5'>程序</b>】編譯應用到<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>平臺<b class='flag-5'>運行</b>