ubuntu下如何编译C语言

 
 
如果没有gcc编译器的话,使用以下命令获取 ~# sudo apt-get install gcc同时要下载辅助工具 ~# sudo apt-get install binutils 头文件库 ~# sudo apt-get install Llibc6-dev CLibrary (用来查询语法使用方式的文档) ~# sudo apt-get install glibc-docLinux下C语言编程参考文档 ~# sudo apt-get install glibc-doc-referenc函数的用法说明文档 ~# sudo apt-get install manpages-dev用来连接多个源文件生成的目标文件的程序make ~# sudo apt-get install makemake程序的使用说明文档 ~# man getch~# man make查看完帮助后,按q退出文档 2.程序编写、编译与运行 安装好之后,你可以在应用程序>其他里找到Kate,打开后在工具菜单的语法加亮和缩进中设置成c样式,然后就可以写自己的C程序了,如: #include int main(int argc, char **argv){ system("clear"); printf("Hello World!\n"); return 0;}输入完程序后用ctrl+S保存,我这里假设保存路径为/home/user1/桌面/helloworld/hello.c 然后就是编译,打开终端,进入目录 # cd /home/user1/桌面/helloworld/然后用gcc进行编译 # gcc -Wall hello.cgcc会显示编译过程中发现的问题于错误,若无错误出现则会编译成文件a.out 运行程序(a.out为编译生成的文件) # ./a.out这时候屏幕会显示 -------------------其它说明:ubuntu8.04默认不支持getch(),getchar();gets()等函数,如果大家想使用则需要安装curses库文件# sudo apt-get install libncurses5-dbg# sudo apt-get isntall libncurses5-dev并且在写源代码时要加上#include或者在用gcc编译时加上-lcurses参数,例如:# gcc -Wall ./hello.c -lcurses就可以使用getch等函数了注意:getch函数在linux控制台下无法起到暂停程序的作用,大家可以用getchar替代getch实现这个功能-------------------------- 小技巧:如果编写一个比较大的程序,需要很长时间完成的话,大家可以建立一个启动器,以便快速方便的进行编译,比如你要花很多天编写一个源程序,就可以在桌面上建立一个启动器,指向c程序所在的目录,起动器命令如下(这里以C源程序在/home/user1/桌面/hello/目录下为例)gnome-terminal --working-directory=/home/user1/桌面/hello/以后每次进行编译时打开此起动器,就可以直接使用gcc对源程序文件名进行编译而无需输入很长的路径了~# gcc -Wall hello.c
 
 
在终端中运行,切换到文件目录,输入 ./a.out 运行 ,其中a.out为执行文件。(linux中生成的文件是后缀为.out的,后缀为out的也不一定是可执行文件)

ubuntu下如何编译C语言的更多相关文章

  1. linux终端下 编译c语言程序

    linux终端下,编译C语言程序步骤为: 采用vi进行源代码编写,编写完成后,:wq存盘退出,如: vi test.c 在命令行下,运行gcc编译程序,生成执行码,如: gcc  -o test te ...

  2. ubuntu下boost编译安装

    ubuntu下boost编译安装 boost 安装 1.依赖安装 apt-get install mpi-default-dev libicu-dev python-dev python3-dev l ...

  3. Ubuntu下怎么编译并运行C、C++和Pascal语言?

    很多同学在安装了Ubuntu的环境后,发现在Windows下的许多东西都打不开了,但是用网站上的在线IDE又不是很方便. 所以,ljn教你如何在Ubuntu下编译并运行C.C++和Pascal. 一. ...

  4. 64位ubuntu下重新编译hadoop2.2流水账

    hadoop官方网站中只提供了32位的hadoop-2.2.0.tar.gz,如果要在64位ubuntu下部署hadoop-2.2.0,就需要重新编译源码包,生成64位的部署包.建议以下操作使用roo ...

  5. Ubuntu下Android编译环境的配置

    从安装操作系统到编译程序结束,过程大致如下. 1. Ubuntu Linux操作系统安装软件包.使用 Ubuntu 14.04 Desktop系统.安装Linux系统到VMWare虚拟机上. 2. 完 ...

  6. 关于ubuntu下qt编译显示Cannot connect creator comm socket /tmp/qt_temp.xxx/stub-socket的解决的方法

    今天在ubuntu下安装了qtcreator,准备測试一下能否用.果然一測试就出问题了,简单编写后F5编译在gnome-terminal中出现 Cannot connect creator comm ...

  7. 关于ubuntu下qt编译显示Cannot connect creator comm socket /tmp/qt_temp.xxx/stub-socket的解决办法

    今天在ubuntu下安装了qtcreator,准备测试一下是否能用,果然一测试就出问题了,简单编写后F5编译在gnome-terminal中出现 Cannot connect creator comm ...

  8. C++下混合编译c语言方法总结

    最近在读SGI STL源码,感觉对C++的学习很有帮助,之前对于泛型.iterator.traits等等各种特性的概念非常模糊,通过这两天的琢磨,再加上<STL 源码剖析>的帮助,对C++ ...

  9. Linux/Ubuntu下 静态编译Qt程序

    一般情况下,我们用Qt编译出来的程序是要依赖于系统Qt库的,也就是这个程序移到别的没有安装Qt库的系统上是不能使用的.会提示缺少……库文件之类的错误.这就是动态编译的结果. 但是如果我们想编译一个程序 ...

随机推荐

  1. Python学习笔记-随机数

    IronPython的random 只能在0-0.5之间,所以最后调用了C#的Random. #!/usr/bin/python #coding=utf-8 import random import ...

  2. 20165231 2017-2018-2 《Java程序设计》第6周学习总结

    教材学习内容总结 第八章 String类 Java专门提供了用来处理字符序列的String类. String类在java.lang包中,由于java.lang包中的类被默认引入,因此程序可以直接使用S ...

  3. python使用PDB进行调试

    参考链接:https://www.cnblogs.com/xiaohai2003ly/p/8529472.html 调入包:import pdb 调试时的一些命令: (1)p  变量名:查看变量:(p ...

  4. Memcache的安装和使用【转】

    转自:https://www.cnblogs.com/caoxiaojian/p/5715573.html Memcache是高性能,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问 ...

  5. Python备份MySQL数据库【转】

    #!/usr/bin/env python # coding: utf- import os import time ''' defined variable ''' databases=['hch' ...

  6. Python运维开发基础05-语法基础【转】

    上节作业回顾(讲解+温习90分钟) #!/usr/bin/env python # -*- coding:utf-8 -*- # author:Mr.chen import os,time Tag = ...

  7. SQL Server Profiler 常见问题总结

    1.跟踪指定数据库 SELECT DB_ID('数据名称') 原文:https://jingyan.baidu.com/article/647f0115be128a7f2048a87d.html 2. ...

  8. 【转】Java并发编程:并发容器之CopyOnWriteArrayList

    Copy-On-Write简称COW,是一种用于程序设计中的优化策略.其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改, ...

  9. 使用Vagrant搭建本地python开发环境

    使用Vagrant搭建本地python开发环境 关于vagrant:Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境,它使用Oracle的开源VirtualBox虚拟化系统也可以使 ...

  10. 【进阶3-4期】深度解析bind原理、使用场景及模拟实现(转)

    这是我在公众号(高级前端进阶)看到的文章,现在做笔记  https://github.com/yygmind/blog/issues/23 bind() bind() 方法会创建一个新函数,当这个新函 ...