⑴ linux下進行C/C開發一般使用什麼開發環境_linux環境下c編程
當然直接在linux下開發了,linux環境下有很多kde的,比如說java開發用eclipse的linux版本C開發用qt的linux版本等,另外每個作大型開發的公司都有自己的平台的,原始的使用vi/vim,但培卜是不智能慢叢中山慢的就退出視線了滲中,這都不是事,關鍵看的是技術。
⑵ 「linux」怎麼編譯c的源程序的「gcc」編譯命令是什麼
格式 gcc [option] [sourcefilename]
介紹一些常用的選項:最簡單的是:gcc hello.c
默認的情況下將生成a.out的可執行性文件,你只需要在終端上輸入./a.out就可以看到執行的結果.
如果你想指定生成目標文件的名字那麼你可以加上 -o選項,命令如下:
gcc -o hello hello.c
命令如下:
gcc -c hello hello.c
⑶ Linux 下進行 C/C++ 開發一般使用什麼開發環境
Linux的C/C++開發環境一般都是文本編輯器(Vim、emacs等)+編譯器(GCC、g++、make、cmake)+調試器(gdb),用集成開發環境IDE(比如codeblocks、eclipse-cdt)的比Windows平台要少。我才開始用的是eclipse-cdt,也是覺得IDE不好用,而且寫一個helloworld都要產生一大堆文件(也不知道這些文件什麼作用),用git來維護管理代碼也非常不方便,而且如果編寫的是命令行程序會反復切換到終端,還不如直接在終端編譯,總之太不靈活了。不過如果gdb用得不習慣的,可以選擇用gdb的圖形前端ddd和Kdbg這兩個軟體。也有覺得命令行編輯器不習慣的,他們會選擇圖形界面的gVim+各種插件,或者圖形功能更好的代碼編輯器如gedit、Sublime Text、Atom、VScode等等。
⑷ linux終端下如何進行C語言編譯
1、首先在linux下判斷是否安裝gcc編譯器,直接執行:gcc -v,判斷是否安裝gcc。
⑸ 如何在linux環境下編輯一個c語言源程序並將其編譯為可執行文件
打開安裝好的Linux系統(ubuntu18.04)
1.安裝編輯器
使用語句:sudo apt-get install vim安裝vim,可以在安裝前查看是否安裝vim編輯器。(特別提示:在安裝vim前最好將軟體更新,使用指令sudo apt-get update.)之所以要加sudo的原因是這些安裝和更新軟體的時候需要使用管理員許可權才可以進行。
2.安裝gcc編譯器
和安裝vim類似使用sudo apt-get install gcc,安裝完成後可以使用cc-v來查看編譯器版本信息等。cc -v界面如下:
⑹ Linux環境下C開發_linux搭建c語言開發環境
一:C語言嵌入式Linux工程師的學習需要具備一定的C語言基礎,C語言是嵌入式領域最重要也是最主要的編程語言,通過大量編程實例重點理解C語言的基礎編程以及高級編程知識。包括:基本數據類型、數組、指針、結構體、鏈表、文件操作、隊列、棧等。
二:Linux基礎Linux操作系統的概念、安裝方法,詳細了解Linux下的目錄結構、基本命令、編輯器VI,編譯器GCC,調試器GDB和Make項目管理工具,ShellMakefile腳本編寫等知識,嵌入式開發環境的搭建。
三:Linux系統編程重點學習標准I/O庫,Linux多任務編程中的多進程和多線程,以及進程間通信(pipe、FIFO、消息隊列、共享內存、signal、信號量等),同步與互斥對共享資源訪問控制等重要知識,主要提升對Linux應用開發的理解和代碼調試的能力。
四:Linux網路編程計算機網路在嵌入式Linux系統應用開發過程中使用非常廣泛,通過Linux網路發展、TCP/IP協議、socket編程、TCP網路編程、UDP網路編程、Web編程開發等方面入手,全面了解Linux網路應用程序開發。重點學習網路編程相關API,熟練掌握TCP協議伺服器的編程方法和並發伺服器的實現,了解HTTP協議及其實現方法,熟悉UDP廣播、多播的原理及編程方法,掌握混合C/S架構網路通信系統的設計,熟悉HTML,Javascript等Web編程技術及實現方法。
五:數據結構與演算法數據結構及演算法在嵌入式底層驅動、通信協議、及各種引擎開發中會得到大量應用,對其掌握的好壞直接影響程序的效率、簡潔及健壯旅瞎性。此階段的學習要重點理解數據結構與演算法的基礎內容,包括順序表、鏈表、隊列、棧、樹、圖、哈希表、各種查找排序演算法等應用及其C語言實現過程。
六:C、QTC是Linux應用開發主要語言之一,本階段重點掌握面向對象編程的基本思想以及C的重要內容。圖形界面編程是嵌入式開發中非常重要的一個環節。由於QT具有跨平台、面向對象、豐富API、支持2D/3D渲染、支持XML、多國語等強大功能,在嵌入式領域的GUI開發中得到了廣范的應用,在本階段通過基於QT圖形庫的學習使學員可以熟練編寫GUI程序,並移植QT應用程序到Cortex-A8平台。包括IDE使用、QT部件及布局管理器、信息與槽機制的應用、滑鼠、鍵盤及繪圖事件處理及文件處理的應用。
七:CortexA8、Linux平台開發通過基於ARMCortex-A8處理s5pv210了解晶元手冊的基本閱讀技巧,掌握s5pv210系統資源、時鍾控制器、電源管理、異常中斷控制器、nandflash控制器等模塊,為底層平台搭建做好准備。Linux平台包括內核裁減、內核移植、交叉編譯、GNU工具使用、內核調試、Bootloader介紹、製作與原理分析、根文件系統製作以及向內核中添加自己的模塊,並在s5pv210實驗平台上運行自己製作的Linux系統,集成部署Linux系統整個流程。同時了解Android操作系統開發流程。Android系統是基於Linux平台的開源操作系統,該平台由操作系統、中間件、用戶界面和應用軟體組成,是首個為移動終端打造的真正開放和完整的移動軟體,目前它的應用不再局限於移動終端,還包括數據電視、機頂盒、PDA等消費類電子產品。
八:驅動開發拆顫空驅動程序設計是嵌入式Linux開發工作中重要的一部分,也是比較困難的一部分。本階洞租段的學習要熟悉Linux的內核機制、驅動程序與用戶級應用程序的介面,掌握系統對設備的並發操作。熟悉所開發硬體的工作原理,具備ARM硬體介面的基礎知識,熟悉ARMCortex-A8處理器s5pv210各資源、掌握Linux設備驅動原理框架,熟悉工程中常見Linux高級字元設備、塊設備、網路設備、USB設備等驅動開發,在工作中能獨立勝任底層驅動開發。
以上就是列出的關於一名合格嵌入式Linux開發工程師所必學的理論知識,其實,作為一個嵌入式開發人員,專業知識和項目經驗同樣重要,所以在我們的理論學習中也要有一定的項目實踐,鍛煉自己的項目開發能力。
⑺ linux編譯的c++程序位置
linux系統編神差孫譯C++程序時頭⽂件和庫⽂件搜索路徑
C++編譯時,教科書中寫道:#include 「headfile.h」優先在當前⽬錄查找頭⽂件;#include < headfile.h>從系統默認路徑查找頭⽂件。先
前以為系統默認路徑是環境變數$PATH指定的路徑,在系統上⼀查,傻了眼:
-bash-3.2$ echo$PATH
/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/X11R6/bin:/usr/java/j2re1.4.0/bin:/usr/atria/bin:/ccase/bin:/home/devcomp
全是bin⽬錄,$PATH是運⾏可執⾏⽂件時的搜索路徑,與include頭⽂件的搜索路徑⽆關,可能不少⼈犯了我這樣的錯誤。
頭⽂件:
1. #include「headfile.h」
搜索順序為:
①先搜索當前⽬錄
②然後搜索-I指定的⽬錄
③再搜索gcc的環境變數CPLUS_INCLUDE_PATH(C程序使⽤的是C_INCLUDE_PATH)
④最後搜索gcc的內定⽬錄
/usr/include
/usr/local/include
/usr/lib/gcc/x86_64-redhat-linux/4.1.1/include
各⽬錄存在相同⽂件時,先找到哪個使⽤哪個。
2. #include<headfile.h>
①先搜索-I指定的⽬錄
②然後搜索gcc的環境變數CPLUS_INCLUDE_PATH
③最後搜索gcc的內定⽬錄
/usr/include
/usr/local/include
/usr/lib/gcc/x86_64-redhat-linux/4.1.1/include
與上⾯的相同,各⽬錄存在相同⽂件時,先找到哪個使⽤哪游鏈個。這⾥要注意,#include<>⽅式不會搜索當前⽬錄!
這⾥要說下include的內定⽬錄,它不是由$PATH環境變數指定的,⽽是由g++的配置prefix指定的(知道它在安裝g++時可以指定,不知安
裝後如何修改的,可能是修改配置⽂件,需要時再研究下):
-bash-3.2$ g++ -v
Using built-inspecs.
Target:x86_64-redhat-linux
Configured with:../configure --prefix=/usr --mandir=/usr/share/man--infodir=/usr/share/info --enable-shared --enable-threads=posix--enable-checking=release --with-system-zlib --enable-__cxa_atexit--disable-libunwind-exceptions --enable-libgcj-multifile--enable-languages=c,c++,objc,obj-c++,java,fortran,ada--enable-java-awt=gtk --disable-dssi --enable-plugin--with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre--with-cpu=generic --host=x86_64-redhat-linux
Thread model:posix
gcc version 4.1.2 20080704(Red Hat 4.1.2-46)
在安裝g++時,指定了prefix,那麼內定搜索⽬錄就是:
Prefix/include
Prefix/local/include
Prefix/lib/gcc/--host/--version/include
編譯時可以通過-nostdinc++選項屏蔽對內定⽬錄搜索頭⽂件。
庫⽂件:
編譯的時候:
①gcc會去找-L
②再找gcc的環境變數LIBRARY_PATH
③再找內定⽬錄/lib /usr/lib/usr/local/lib 這是當初compilegcc時寫在程序內的(不可配置的?)
運⾏時動態庫的搜索路徑:
動態庫的搜索路徑搜索的先後順序是:
①編譯⽬標代碼時指定的動態庫搜索路徑(慶跡這是通過gcc 的參數"-Wl,-rpath,"指定。當指定多個動態庫搜索路徑時,路徑之間⽤冒號":"分隔)
②環境變數LD_LIBRARY_PATH指定的動態庫搜索路徑(當通過該環境變數指定多個動態庫搜索路徑時,路徑之間⽤冒號":"分隔)
③配置⽂件/etc/ld.so.conf中指定的動態庫搜索路徑;
④默認的動態庫搜索路徑/lib;
⑤默認的動態庫搜索路徑/usr/lib。
(應注意動態庫搜尋路徑並不包括當前⽂件夾,所以當即使可執⾏⽂件和其所需的so⽂件在同⼀⽂件夾,也會出現找不到so的問題,類同#include<header_file>不搜索當前⽬錄)
¥
5
網路文庫VIP限時優惠現在開通,立享6億+VIP內容
立即獲取
linux系統編譯C++程序時頭文件和庫文件搜索路徑
linux系統編譯C++程序時頭⽂件和庫⽂件搜索路徑
C++編譯時,教科書中寫道:#include 「headfile.h」優先在當前⽬錄查找頭⽂件;#include < headfile.h>從系統默認路徑查找頭⽂件。先
前以為系統默認路徑是環境變數$PATH指定的路徑,在系統上⼀查,傻了眼:
-bash-3.2$ echo$PATH
/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/X11R6/bin:/usr/java/j2re1.4.0/bin:/usr/atria/bin:/ccase/bin:/home/devcomp
第 1 頁
全是bin⽬錄,$PATH是運⾏可執⾏⽂件時的搜索路徑,與include頭⽂件的搜索路徑⽆關,可能不少⼈犯了我這樣的錯誤。
頭⽂件:
1. #include「headfile.h」
搜索順序為:
①先搜索當前⽬錄
②然後搜索-I指定的⽬錄
③再搜索gcc的環境變數CPLUS_INCLUDE_PATH(C程序使⽤的是C_INCLUDE_PATH)
展開全文
限免
導長圖
轉存到網盤
發送至微信
下載文檔
北京網路網訊科技有限公司 版本號8.0.70
⑻ 在linux命令界面下怎麼進入C編譯環境
不知道你說的編譯環境是什麼
編輯+編譯 還是 僅僅編譯?
前者 一般使用vim 或者emacs+ gcc
僅僅編譯 gcc就行了
gcc是純命令行方式的, 具體的使用請參考
http://lamp.linux.gov.cn/Linux/optimize_guide.html