<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ### 1? 什么是Visual EmbedLinux Tools Visual EmbedLinux Tools簡稱為VELT,它是一個visual studio插件,用以輔助完成Linux開發。利用這個插件,將可以在visualstudio的IDE中進行Linux應用程序的開發(包括編譯和調試),也可以進行uboot和linux內核的編譯和調試,并根據編譯時的錯誤信息正確定位到源碼。目前的版本是0.2.1,支持vs2012, vs2013,vs2015三個版本。此插件下載地址([http://download.csdn.net/detail/lights_joy/9280851](http://download.csdn.net/detail/lights_joy/9280851))。下面是它的基本功能: 1. 支持x86 Linux,海思hi3516/hi3520,MinGW,Marvell/xCAT, AM335x這幾個平臺,提供向導生成項目模板。 1. 完成UBOOT的編譯,并根據編譯的錯誤信息自動定位到相應的文件位置。 1. 完成LINUX內核的編譯,并根據編譯的錯誤信息自動定位到相應的文件位置。 1. 在VS下利用串口進行內核的簡單調試。 1. 在VS下完成Linux內核的配置。 1. 不使用Makefile進行Linux應用程序的開發。 1. 使用Makefile進行Linux應用程序的開發。 1. 可支持Linux下的應用程序、動態庫、靜態庫、Console/GUI等應用的開發與調試。 1. 使用SSH連接目標機器并用gdb進行應用程序的調試。 1. 使用Telnet連接目標機器并用gdb進行應用程序的調試。 1. 在VS中集成終端軟件(PuttyX.ocx),支持SSH/Telnet/Com。 1. 對于x86 Linux內核,可以直接用Qemu進行調試。? ### 2 IntelliSense的基本原理 VELT沒有自己的代碼分析工具,但由于它使用的工程是VC++工程,因此VC可以完成代碼分析和智能提示,VisualAssist X這樣的插件也可以正常工作! ### 3? 編譯的基本原理 VELT本身并不包含任何編譯工具,它所做的工作僅僅是把VS這個前端和不同的GNU編譯器連接起來而已,真正的編譯與調試仍然由交叉編譯工具完成,因此在VS下進行Linux開發的前提是Linux下的交叉編譯環境能夠正常工作! 在進行代碼編譯的時候,VELT采用的是遠程編譯的方法,當VS進行編譯操作的時候,VELT使用SSH登錄到Linux主機系統中進行編譯,再分析編譯過程中產生的信息,將之轉換為vs能夠識別的信息,這樣VS就可以在IDE中正確定位錯誤發生的文件!為了達到此目的,需要保證vs也能夠正常訪問代碼文件。VELT依賴于Linux的samba或者虛擬機的共享目錄功能來實現項目文件的共享,不支持用scp將文件上傳到Linux后進行編譯。 ![](https://box.kancloud.cn/2016-04-08_5707594631b9e.jpg) 如上圖所示: vs的編譯過程是由MSBUILD來控制的,VELT重載了MsBuild下的編譯任務,如果開發的是Linux程序,VELT將調用putty通過SSH遠程連接到Linux開發機上,再調用開發機上的gcc編譯器進行編譯,如果開發的是MinGW程序,VELT將通過cmd.exe調用MinGW gcc進行編譯。 在編譯過程中,VELT將接收putty.exe或者cmd.exe上的輸出信息進行分析,將這些信息轉換為VS可以識別的錯誤和警告信息輸出到VS的輸出信息欄中。 在velt中需要配置編譯器參數: ![](https://box.kancloud.cn/2016-04-08_5707594641ce1.jpg) ### 4? 應用程序調試的基本原理 在Linux應用程序調試這一塊,VELT不但能支持Linux下console應用程序的調試,在Windows上安裝了XServer后也能進行gui應用程序的調試,但只能使用gdb,不支持gdbserver,其調試引擎的結構為: ![](https://box.kancloud.cn/2016-04-08_5707594656114.jpg) 如上圖所示,VELT在WINDOWS端運行了幾個輔助程序。 首先是RemoteConsole,這個程序的主要作用是顯示遠端程序的輸出,并接受用戶輸入傳送給遠端,此程序包含在EmbedLinux的安裝包中。 其次是putty,這個程序用于完成SSH/TELNET/COM連接,并負責調用遠端Linux上的gdb。,此程序包含在EmbedLinux的安裝包中。 如果要在vs下調試Linux下的GUI程序,還需要安裝Xming這個windows下的x server,此程序不在EmbedLinux的安裝包中,需要自己到mingw.org下載并安裝。如果不需要調試GUI程序當然也可以不理會它。 當按下Ctrl-F5不調試運行時,VELT的結構就變成了這樣: ![](https://box.kancloud.cn/2016-04-08_570759466cfb8.jpg) 此時VC調試引擎將直接調用RemoteConsole,RemoteConsole再根據需要調用putty連接Linux機器并調用目標程序,如果調試的是windows下的程序,RemoteConsole將通過cmd.exe調用本地的TargetApp。 ### 5? 開發環境 下面是一個典型的嵌入式開發環境配置: 主機開發環境: 系統:WIN8 64位 開發工具:vs2013 + velt-0.1.7 虛擬機:Vmware workstation-11.0。 編譯主機開發環境: 虛擬機的系統用于交叉編譯和嵌入式開發中各種服務的提供。 操作系統:RHEL-6.3,此虛擬機僅用于開發,不考慮其安全性的配置。 開發工具:gcc、不同平臺下的交叉編譯工具鏈。 系統服務:開啟tftp、samba、ftp、ssh 目標機:想使用的平臺,如海思、TI、ADI等平臺,或者虛擬機的Linux。 連接方式:telnet / ssh / com 調試方式:gdb / gdbserver ### 6? 目錄共享 首先將windows目錄通過vmware的共享目錄功能共享給Linux,如f:\work,在Linux下看到的目錄就是/mnt/hgfs/share/work。 其次將Linux下的目錄通過samba服務共享給windows,如/work,映射到windows下的z:\,這里需要注意的是samba的帳號和我們后面用SSH登錄的帳號應當一致,避免由于權限問題造成不必要的干擾。 當進行uboot和linux內核的開發時,代碼只能放在linux的虛擬硬盤中,而不能放在windows系統中,因為它們需要使用符號鏈接,也需要區分大小寫。 而在進行普通應用程序開發時,如果沒有使用符號鏈接,只需要將代碼放在windows目錄下,這樣可以加快vs的代碼分析速度。 將這兩個配置寫入到Velt的全局參數中: ![](https://box.kancloud.cn/2016-04-08_57075946878e6.jpg) 這樣以后新建項目的時候就可以直接使用了。 ### 7? Sdf文件位置 由于VS將瀏覽信息放在SDF文件中,而項目文件可能放在虛擬機的共享目錄中,因此需要更改SDF文件的路徑,務必保證它位于windows直接管理的硬盤上,否則在編譯大項目時將導致運行速度緩慢。 ![](https://box.kancloud.cn/2016-04-08_57075946a13bb.jpg) ### 8? VELT安裝 下面開始安裝VELT插件: 1. 在開始安裝前首先卸載舊版本的插件。 2. 運行VeltSetup-0.1.9.exe,一路往下安裝就可以了。安裝完成后應當可以在vs的幫助信息中看到這個插件: 3、打開VS的新建項目窗口,可以看到新添加的EmbedLinux平臺: 至此安裝完成! ![](https://box.kancloud.cn/2016-04-08_57075946bdd4e.jpg) ### 9? Velt卸載 Velt的卸載可以通過控件面板的卸載功能完成。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看