1.å¦ä½å¨å·²å®è£
çsuselinux10.2ä¸ å®è£
g++
2.Sublime Text 3.0 正式发布!安装安装提供 Linux 软件包仓库支持
3.linux安装软件命令
å¦ä½å¨å·²å®è£ çsuselinux10.2ä¸ å®è£ g++
EMAIL:mangohappy@qq.com
ä½ ç¡®å®éé¢æ²¡æå®è£ G++å
ç¨å½ä»¤æ¥çæ¯å¦å·²ç»å®è£ äº
rpm -qa|grep gcc
æ人ç»äºrpmçï¼æç»ä¸ªdebç,源码å¨è¿æ¥ç½ç»çæ åµä¸,ç¨root
apt-get install build-essential
æ
g++ *.cpp -o runfile //ç¼è¯C++ç¨åº
gcc *.c -o runfile //ç¼è¯Cç¨åº
cygwinæ¬æ¥å°±èªä»£äºgccç¼è¯å¨.
å½ä»¤è¡æ¨¡å¼è¿è¡ gcc 1.cç¼è¯æåå./a.outæ§è¡.
å®è£ g++ åæ¾ä¸å°g++å½ä»¤
ä½ å¯è½åå° /usr/bin/g++4.1 æè 类似çæ件 cd /usr/bin/ sudo ln -s g++4.1 g++ è¿æ ·å°±å¯ä»¥æ¾å°g++å½ä»¤äºã
ä½ ç¨LINUXåãå®è£ åç´æ¥å¯ä»¥å¨å½ä»¤è¡ä½¿ç¨ã
gccç®ä»
Linuxç³»ç»ä¸çgccï¼GNU C Compilerï¼æ¯GNUæ¨åºçåè½å¼ºå¤§ãæ§è½ä¼è¶çå¤å¹³å°ç¼è¯å¨ï¼æ¯GNUç代表ä½åä¹ä¸ãgccæ¯å¯ä»¥å¨å¤ç§ç¡¬ä½å¹³å°ä¸ç¼è¯åºå¯æ§è¡ç¨åºçè¶ çº§ç¼è¯å¨ï¼å ¶æ§è¡æçä¸ä¸è¬çç¼è¯å¨ç¸æ¯å¹³åæçè¦é«%~%ã
gccç¼è¯å¨è½å°CãC++è¯è¨æºç¨åºãæ±ç¨å¼ååºåç®æ ç¨åºç¼è¯ãè¿æ¥æå¯æ§è¡æ件ï¼å¦æ没æç»åºå¯æ§è¡æ件çååï¼gccå°çæä¸ä¸ªå为a.outçæ件ãå¨Linuxç³»ç»ä¸ï¼å¯æ§è¡æ件没æç»ä¸çåç¼ï¼ç³»ç»ä»æ件çå±æ§æ¥åºåå¯æ§è¡æ件åä¸å¯æ§è¡æ件ãègccåéè¿åç¼æ¥åºå«è¾å ¥æ件çç±»å«ï¼ä¸é¢æ们æ¥ä»ç»gccæéµå¾ªçé¨å约å®è§åã
.c为åç¼çæ件ï¼Cè¯è¨æºä»£ç æ件ï¼
.a为åç¼çæ件ï¼æ¯ç±ç®æ æ件ææçæ¡£æ¡åºæ件ï¼
.Cï¼.ccæ.cxx 为åç¼çæ件ï¼æ¯C++æºä»£ç æ件ï¼
.h为åç¼çæ件ï¼æ¯ç¨åºæå å«ç头æ件ï¼
.i 为åç¼çæ件ï¼æ¯å·²ç»é¢å¤çè¿çCæºä»£ç æ件ï¼
.ii为åç¼çæ件ï¼æ¯å·²ç»é¢å¤çè¿çC++æºä»£ç æ件ï¼
.m为åç¼çæ件ï¼æ¯Objective-Cæºä»£ç æ件ï¼
.o为åç¼çæ件ï¼æ¯ç¼è¯åçç®æ æ件ï¼
.s为åç¼çæ件ï¼æ¯æ±ç¼è¯è¨æºä»£ç æ件ï¼
.S为åç¼çæ件ï¼æ¯ç»è¿é¢ç¼è¯çæ±ç¼è¯è¨æºä»£ç æ件ã
gccçæ§è¡è¿ç¨
è½ç¶æ们称gccæ¯Cè¯è¨çç¼è¯å¨ï¼ä½ä½¿ç¨gccç±Cè¯è¨æºä»£ç æ件çæå¯æ§è¡æ件çè¿ç¨ä¸ä» ä» æ¯ç¼è¯çè¿ç¨ï¼èæ¯è¦ç»åå个ç¸äºå ³èçæ¥éª¤â¶é¢å¤ç(ä¹ç§°é¢ç¼è¯ï¼Preprocessing)ãç¼è¯(Compilation)ãæ±ç¼(Assembly)åè¿æ¥(Linking)ã
å½ä»¤gccé¦å è°ç¨cppè¿è¡é¢å¤çï¼å¨é¢å¤çè¿ç¨ä¸ï¼å¯¹æºä»£ç æ件ä¸çæ件å å«(include)ãé¢ç¼è¯è¯å¥(å¦å®å®ä¹defineç)è¿è¡åæãæ¥çè°ç¨cc1è¿è¡ç¼è¯ï¼è¿ä¸ªé¶æ®µæ ¹æ®è¾å ¥æ件çæ以.o为åç¼çç®æ æ件ãæ±ç¼è¿ç¨æ¯é对æ±ç¼è¯è¨çæ¥éª¤ï¼è°ç¨asè¿è¡å·¥ä½ï¼ä¸è¬æ¥è®²ï¼.S为åç¼çæ±ç¼è¯è¨æºä»£ç æ件åæ±ç¼ã.s为åç¼çæ±ç¼è¯è¨æ件ç»è¿é¢ç¼è¯åæ±ç¼ä¹åé½çæ以.o为åç¼çç®æ æ件ãå½ææçç®æ æ件é½çæä¹åï¼gccå°±è°ç¨ldæ¥å®ææåçå ³é®æ§å·¥ä½ï¼è¿ä¸ªé¶æ®µå°±æ¯è¿æ¥ãå¨è¿æ¥é¶æ®µï¼ææçç®æ æ件被å®æå¨å¯æ§è¡ç¨åºä¸çæ°å½çä½ç½®ï¼åæ¶ï¼è¯¥ç¨åºæè°ç¨å°çåºå½æ°ä¹ä»åèªæå¨çæ¡£æ¡åºä¸è¿å°åéçå°æ¹ã
gccçåºæ¬ç¨æ³åé项
å¨ä½¿ç¨gccç¼è¯å¨çæ¶åï¼æä»¬å¿ é¡»ç»åºä¸ç³»åå¿ è¦çè°ç¨åæ°åæ件å称ãgccç¼è¯å¨çè°ç¨åæ°å¤§çº¦æå¤ä¸ªï¼å ¶ä¸å¤æ°åæ°æ们å¯è½æ ¹æ¬å°±ç¨ä¸å°ï¼è¿éåªä»ç»å ¶ä¸æåºæ¬ãæ常ç¨çåæ°ã
gccæåºæ¬çç¨æ³æ¯â¶gcc [options] [filenames]
å ¶ä¸optionså°±æ¯ç¼è¯å¨æéè¦çåæ°ï¼filenamesç»åºç¸å ³çæ件å称ã
-cï¼åªç¼è¯ï¼ä¸è¿æ¥æ为å¯æ§è¡æ件ï¼ç¼è¯å¨åªæ¯ç±è¾å ¥ç.cçæºä»£ç æ件çæ.o为åç¼çç®æ æ件ï¼é常ç¨äºç¼è¯ä¸å å«ä¸»ç¨åºçåç¨åºæ件ã
-o output_filenameï¼ç¡®å®è¾åºæ件çå称为output_filenameï¼åæ¶è¿ä¸ªå称ä¸è½åæºæ件ååãå¦æä¸ç»åºè¿ä¸ªé项ï¼gccå°±ç»åºé¢è®¾çå¯æ§è¡æ件a.outã
-gï¼äº§ç符å·è°è¯å·¥å ·(GNUçgdb)æå¿ è¦ç符å·èµè®¯ï¼è¦æ³å¯¹æºä»£ç è¿è¡è°è¯ï¼æä»¬å°±å¿ é¡»å å ¥è¿ä¸ªé项ã
-Oï¼å¯¹ç¨åºè¿è¡ä¼åç¼è¯ãè¿æ¥ï¼éç¨è¿ä¸ªé项ï¼æ´ä¸ªæºä»£ç ä¼å¨ç¼è¯ãè¿æ¥è¿ç¨ä¸è¿è¡ä¼åå¤çï¼è¿æ ·äº§ççå¯æ§è¡æ件çæ§è¡æçå¯ä»¥æé«ï¼ä½æ¯ï¼ç¼è¯ãè¿æ¥çé度就ç¸åºå°è¦æ ¢ä¸äºã
-O2ï¼æ¯-Oæ´å¥½çä¼åç¼è¯ãè¿æ¥ï¼å½ç¶æ´ä¸ªç¼è¯ãè¿æ¥è¿ç¨ä¼æ´æ ¢ã
-Idirnameï¼å°dirnameææåºçç®å½å å ¥å°ç¨åºå¤´æ件ç®å½å表ä¸ï¼æ¯å¨é¢ç¼è¯è¿ç¨ä¸ä½¿ç¨çåæ°ãCç¨åºä¸ç头æ件å å«ä¸¤ç§æ åµâ¶
A)#include
B)#include âmyinc.hâ
å ¶ä¸ï¼A类使ç¨å°æ¬å·(< >)ï¼B类使ç¨åå¼å·(â â)ã对äºAç±»ï¼é¢å¤çç¨åºcppå¨ç³»ç»é¢è®¾å å«æ件ç®å½(å¦/usr/include)ä¸æ寻ç¸åºçæ件ï¼è对äºBç±»ï¼cppå¨å½åç®å½ä¸æ寻头æ件ï¼è¿ä¸ªé项çä½ç¨æ¯åè¯cppï¼å¦æå¨å½åç®å½ä¸æ²¡ææ¾å°éè¦çæ件ï¼å°±å°æå®çdirnameç®å½ä¸å»å¯»æ¾ãå¨ç¨åºè®¾è®¡ä¸ï¼å¦ææ们éè¦çè¿ç§å å«æ件åå«åå¸å¨ä¸åçç®å½ä¸ï¼å°±éè¦é个使ç¨-Ié项ç»åºæ索路å¾ã
-Ldirnameï¼å°dirnameææåºçç®å½å å ¥å°ç¨åºå½æ°æ¡£æ¡åºæ件çç®å½å表ä¸ï¼æ¯å¨è¿æ¥è¿ç¨ä¸ä½¿ç¨çåæ°ãå¨é¢è®¾ç¶æä¸ï¼è¿æ¥ç¨åºldå¨ç³»ç»çé¢è®¾è·¯å¾ä¸(å¦/usr/lib)寻æ¾æéè¦çæ¡£æ¡åºæ件ï¼è¿ä¸ªé项åè¯è¿æ¥ç¨åºï¼é¦å å°-Læå®çç®å½ä¸å»å¯»æ¾ï¼ç¶åå°ç³»ç»é¢è®¾è·¯å¾ä¸å¯»æ¾ï¼å¦æå½æ°åºåæ¾å¨å¤ä¸ªç®å½ä¸ï¼å°±éè¦ä¾æ¬¡ä½¿ç¨è¿ä¸ªé项ï¼ç»åºç¸åºçåæ¾ç®å½ã
-lnameï¼å¨è¿æ¥æ¶ï¼è£ è½½åå为âlibname.aâçå½æ°åºï¼è¯¥å½æ°åºä½äºç³»ç»é¢è®¾çç®å½æè ç±-Lé项确å®çç®å½ä¸ãä¾å¦ï¼-lm表示è¿æ¥å为âlibm.aâçæ°å¦å½æ°åºã
ä¸é¢æ们ç®è¦ä»ç»äºgccç¼è¯å¨æ常ç¨çåè½å主è¦åæ°é项ï¼æ´ä¸ºè¯¦å°½çèµæå¯ä»¥åçLinuxç³»ç»çèæºå¸®å©ã
åå®æ们æä¸ä¸ªç¨åºå为test.cçCè¯è¨æºä»£ç æ件ï¼è¦çæä¸ä¸ªå¯æ§è¡æ件ï¼æç®åçåæ³å°±æ¯â¶
gcc test.c
è¿æ¶ï¼é¢ç¼è¯ãç¼è¯è¿æ¥ä¸æ¬¡å®æï¼çæä¸ä¸ªç³»ç»é¢è®¾çå为a.outçå¯æ§è¡æ件ï¼å¯¹äºç¨ä¸ºå¤æçæ åµï¼æ¯å¦æå¤ä¸ªæºä»£ç æ件ãéè¦è¿æ¥æ¡£æ¡åºæè æå ¶ä»æ¯è¾ç¹å«çè¦æ±ï¼å°±è¦ç»å®éå½çè°ç¨é项åæ°ãåçä¸ä¸ªç®åçä¾åã
æ´ä¸ªæºä»£ç ç¨åºç±ä¸¤ä¸ªæ件testmain.c åtestsub.cç»æï¼ç¨åºä¸ä½¿ç¨äºç³»ç»æä¾çæ°å¦åºï¼åæ¶å¸æç»åºçå¯æ§è¡æ件为testï¼è¿æ¶çç¼è¯å½ä»¤å¯ä»¥æ¯â¶
gcc testmain.c testsub.c â¡lm â¡o test
å ¶ä¸ï¼-lm表示è¿æ¥ç³»ç»çæ°å¦åºlibm.aï¼è¿ä¸ªè¿ç¨å¯ä»¥ç¨å¾-1æ¡å¾æè¿°ã
gccçé误类åå对ç
gccç¼è¯å¨å¦æåç°æºç¨åºä¸æé误ï¼å°±æ æ³ç»§ç»è¿è¡ï¼ä¹æ æ³çææç»çå¯æ§è¡æ件ã为äºä¾¿äºä¿®æ¹ï¼gccç»åºé误èµè®¯ï¼æä»¬å¿ é¡»å¯¹è¿äºé误èµè®¯é个è¿è¡åæãå¤çï¼å¹¶ä¿®æ¹ç¸åºçè¯è¨ï¼æè½ä¿è¯æºä»£ç çæ£ç¡®ç¼è¯è¿æ¥ãgccç»åºçé误èµè®¯ä¸è¬å¯ä»¥å为å大类ï¼ä¸é¢æ们åå«è®¨è®ºå ¶äº§ççåå å对çã
第ä¸ç±»â¶Cè¯æ³é误
é误èµè®¯â¶æ件source.cä¸ç¬¬nè¡æè¯æ³é误(syntex errror)ãè¿ç§ç±»åçé误ï¼ä¸è¬é½æ¯Cè¯è¨çè¯æ³é误ï¼åºè¯¥ä»ç»æ£æ¥æºä»£ç æ件ä¸ç¬¬nè¡å该è¡ä¹åçç¨åºï¼ææ¶ä¹éè¦å¯¹è¯¥æ件æå å«ç头æ件è¿è¡æ£æ¥ãæäºæ åµä¸ï¼ä¸ä¸ªå¾ç®åçè¯æ³é误ï¼gccä¼ç»åºä¸å¤§å é误ï¼æ们æ主è¦çæ¯è¦ä¿ææ¸ éç头èï¼ä¸è¦è¢«å ¶ååï¼å¿ è¦çæ¶åååèä¸ä¸Cè¯è¨çåºæ¬ææã
第äºç±»â¶å¤´æ件é误
é误èµè®¯â¶æ¾ä¸å°å¤´æ件head.h(Can not find include file head.h)ãè¿ç±»é误æ¯æºä»£ç æ件ä¸çå å«å¤´æ件æé®é¢ï¼å¯è½çåå æ头æ件åé误ãæå®ç头æ件æå¨ç®å½åé误çï¼ä¹å¯è½æ¯é误å°ä½¿ç¨äºåå¼å·åå°æ¬å·ã
第ä¸ç±»â¶æ¡£æ¡åºé误
é误èµè®¯â¶è¿æ¥ç¨åºæ¾ä¸å°æéçå½æ°åºï¼ä¾å¦â¶
ld: -lm: No such file or directory
è¿ç±»é误æ¯ä¸ç®æ æ件ç¸è¿æ¥çå½æ°åºæé误ï¼å¯è½çåå æ¯å½æ°åºåé误ãæå®çå½æ°åºæå¨ç®å½å称é误çï¼æ£æ¥çæ¹æ³æ¯ä½¿ç¨findå½ä»¤å¨å¯è½çç®å½ä¸å¯»æ¾ç¸åºçå½æ°åºåï¼ç¡®å®æ¡£æ¡åºåç®å½çå称并修æ¹ç¨åºä¸åç¼è¯é项ä¸çå称ã
第åç±»â¶æªå®ä¹ç¬¦å·
é误èµè®¯â¶ææªå®ä¹ç符å·(Undefined symbol)ãè¿ç±»é误æ¯å¨è¿æ¥è¿ç¨ä¸åºç°çï¼å¯è½æ两ç§åå â¶ä¸æ¯ä½¿ç¨è èªå·±å®ä¹çå½æ°æè å ¨å±åéæå¨æºä»£ç æ件ï¼æ²¡æ被ç¼è¯ãè¿æ¥ï¼æè å¹²èè¿æ²¡æå®ä¹ï¼è¿éè¦ä½¿ç¨è æ ¹æ®å®é æ åµä¿®æ¹æºç¨åºï¼ç»åºå ¨å±åéæè å½æ°çå®ä¹ä½ï¼äºæ¯æªå®ä¹ç符å·æ¯ä¸ä¸ªæ åçåºå½æ°ï¼å¨æºç¨åºä¸ä½¿ç¨äºè¯¥åºå½æ°ï¼èè¿æ¥è¿ç¨ä¸è¿æ²¡æç»å®ç¸åºçå½æ°åºçå称ï¼æè æ¯è¯¥æ¡£æ¡åºçç®å½å称æé®é¢ï¼è¿æ¶éè¦ä½¿ç¨æ¡£æ¡åºç»´æ¤å½ä»¤aræ£æ¥æ们éè¦çåºå½æ°å°åºä½äºåªä¸ä¸ªå½æ°åºä¸ï¼ç¡®å®ä¹åï¼ä¿®æ¹gccè¿æ¥é项ä¸ç-lå-L项ã
æé¤ç¼è¯ãè¿æ¥è¿ç¨ä¸çé误ï¼åºè¯¥è¯´è¿åªæ¯ç¨åºè®¾è®¡ä¸æç®åãæåºæ¬çä¸ä¸ªæ¥éª¤ï¼å¯ä»¥è¯´åªæ¯å¼äºä¸ªå¤´ãè¿ä¸ªè¿ç¨ä¸çé误ï¼åªæ¯æ们å¨ä½¿ç¨Cè¯è¨æè¿°ä¸ä¸ªç®æ³ä¸æ产ççé误ï¼æ¯æ¯è¾å®¹ææé¤çãæ们åä¸ä¸ªç¨åºï¼å°ç¼è¯ãè¿æ¥éè¿ä¸ºæ¢ï¼åºè¯¥è¯´ååå¼å§ï¼ç¨åºå¨è¿è¡è¿ç¨ä¸æåºç°çé®é¢ï¼æ¯ç®æ³è®¾è®¡æé®é¢ï¼è¯´å¾æ´çç¹æ¯å¯¹é®é¢ç认è¯åç解ä¸å¤ï¼è¿éè¦æ´å æ·±å ¥å°æµè¯ãè°è¯åä¿®æ¹ãä¸ä¸ªç¨åºï¼ç¨ä¸ºå¤æçç¨åºï¼å¾å¾è¦ç»è¿å¤æ¬¡çç¼è¯ãè¿æ¥åæµè¯ãä¿®æ¹ãä¸é¢æ们å¦ä¹ çç¨åºç»´æ¤ãè°è¯å·¥å ·åçæ¬ç»´æ¤å°±æ¯å¨ç¨åºè°è¯ãæµè¯è¿ç¨ä¸ä½¿ç¨çï¼ç¨æ¥è§£å³è°æµé¶æ®µæåºç°çé®é¢ã
å¸æå¯¹ä½ æ帮å©ã
Sublime Text 3.0 正式发布!提供 Linux 软件包仓库支持
Sublime Text 3.0 正式版终于发布了!安装安装历经4年半的源码开发,Sublime Text 编辑器的安装安装作者 Jon Skinner 宣布这一消息。新版本带来了崭新的源码e4a声音源码UI主题、颜色主题、安装安装图标,源码以及在格式高亮方面的安装安装重大改进。此外,源码3.0版本支持Windows上的安装安装触摸板输入、macOS的源码Touch Bar,并为Linux用户提供了软件包仓库支持。安装安装
相对于Sublime Text 2版本,源码3.0在每一个方面都进行了重大的安装安装手机 表单 源码改变,几乎每一个功能都有显著的提升。拼写检查得到了改进,自动缩进更完善,自动换行处理源代码更佳,高分屏支持更好,任意跳转更智能。3.0版本的jdk源码实现性能也得到了大幅度的提升,启动、打开文件、内容滚动都明显快于之前的版本。尽管体积比2版本更大,但使用体验更加流畅。
在下载方面,Sublime Text 3提供了自动更新机制。桌面开花源码对于Linux用户,可以通过软件仓库安装Sublime Text 3。具体的安装步骤如下:
在Linux上安装 Sublime Text 3,需要先安装GPG公钥,然后选择要使用的频道(Stable或Dev),更新源,最后执行安装命令。仿携程网源码对于不同发行版的Linux,安装命令略有不同,包括使用apt、pacman、yum、dnf或zypper。
Sublime Text 3并非免费软件或自由软件,而是一款试用软件。用户可以一直试用,但需要购买许可证,单个许可证的费用为美元。
linux安装软件命令
在Linux中,软件可以通过包管理器安装。不同的Linux发行版使用不同的包管理器,如apt-get、yum、dnf等。下面是一些常用的Linux软件安装命令:
1. 使用apt-get安装软件(适用于Debian、Ubuntu等发行版):
```
sudo apt-get update # 更新软件包列表
sudo apt-get install # 安装指定软件包
```
2. 使用yum安装软件(适用于CentOS、Fedora等发行版):
```
sudo yum update # 更新软件包列表
sudo yum install # 安装指定软件包
```
3. 使用dnf安装软件(适用于最新的Fedora发行版):
```
sudo dnf update # 更新软件包列表
sudo dnf install # 安装指定软件包
```
4. 使用zypper安装软件(适用于openSUSE等发行版):
```
sudo zypper refresh # 更新软件包列表
sudo zypper install # 安装指定软件包
```
5. 使用pacman安装软件(适用于Arch Linux等发行版):
```
sudo pacman -Syu # 更新软件包列表
sudo pacman -S # 安装指定软件包
```
6. 使用源代码编译安装软件:
```
./configure # 配置编译选项
make # 编译源代码
sudo make install # 安装编译后的软件
```
请注意,安装软件可能需要root权限,所以在命令前加上sudo以获取管理员权限。此外,上述命令中的""是需要替换为实际的软件包名称。
希望以上信息对您有所帮助!