`
king_tt
  • 浏览: 2259557 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

简明教程:如何在Solaris操作系统上开发C 应用程序

 
阅读更多

1,开发C程序的必要工具和设置

A,Solaris下的开发工具

在solaris下开发C应用程序,缺省开发环境是Sun Studio。目前Sun Studio 11是Sun公司最新的C/C++/Fortran开发工具,这个工具已经安装在Unix体验中心的服务器上,我们可以直接使用。在Sun Studio 中,其中C程序的编译工具名称为cc。还有的就是make这个命令,make命令是Solaris安装后就自带了,不需要我们另外安装。

B,设置环境变量

在solaris下开发C应用程序,需要把编译器和make的路径加入到环境变量PATH中去,一般来说,可以使用export命令来进行这个方面的设置。假设您使用的shell为Bourne shell,Sun Studio 11的安装目录为/opt/SunStudio_11/SUNWspro,make通常安装在/usr/ccs/bin目录下,则可以使用如下命令进行设置:

# PATH=/opt/SunStudio_11/SUNWspro/bin:/usr/ccs/bin:$PATH
# export PATH

(需要说明的是,在Unix体验中心的服务器上,这个环境变量已经提前设置好,并不需要用户自行设置。)

2, 开发只有一个文件的简单程序

如果你的C应用程序只包含一个源程序文件,则编译时不需要用Makefile,下面以一个简单的Hello World程序来做为例子,比如我们有个简单的C程序Hello.c,其内容见下:

#include <stdio.h>

int main()
{
printf(”Hello World/n”);
}

在编译这个程序的时候,可以采用如下两种方法,

# cc -o hello hello.c

或者:

# make hello

这两种方法都可以直接生成应用程序hello,前一种方法是直接用编译命令cc来生成目标代码。后一种方式要是用make来生成目标代码,这种方法仅适用于编译一个源文件,注意make后边的参数应该是C源程序的文件名的. 前面的部分,即hello。

3,开发含有多个文件的C应用程序

如果我们有多个源文件的时候,比如有一个是主程序,另一个具体的函数实现,外加一个头文件,这里还是用Hello World做为例子来说明,例子中有三个源程序文件, 两个为C源文件,主程序hello.c和具体函数实现hello_f.c,一个为C头文件,分别为:

如下是源代码hello.h的内容:

void hello();

如下是源代码hello.c的内容:

#include “hello.h”

int main()
{
hello();
}

如下是源代码hello_f.c的内容:

#include <stdio.h>

void hello()
{
printf(”Hello World/n”);
}

我们可以用一个命令就将这个编译任务完成,为:

# cc -o hello hello.c hello_f.c

但在系统中,我们会发现这个命令会产生三个文件,hello,hello.o和hello_f.o,那么这三个文件是如何产生出来的,整个编译过程是如何呢?为了简化起见,我们用以下的三个命令来说明产生这些文件的过程,大概的步骤为:

# cc -c hello.c
# cc -c hello_f.c
# ld -o hello -lc hello.o hello_f.o

4,使用Makefile来开发一个工程

在以上的例子中,我们是用了命令行来直接编译程序,但在实际工作中,一个项目只有一个或两个源代码文件的情况非常少,大的项目往往会有上千个源代码文件,如果我们只是用简单的命令行去编译这些文件,不但每次要写一堆的命令,容易出错,而且难于保持编译选项的一致,对于这种情况,我们会采用Makefile来做相应的编译组织和管理。还是以上面的Hello World为例来说明如何写出一个简单的Makefile来编译程序。

我们写一个简单的Makefile来编译这个简单的项目HelloWorld.

如下是我们的Makefile的内容:

all:hello

hello: hello.o hello_f.o
cc -o hello hello.o hello_f.o
hello.o: hello.c
cc -c hello.c
hello_f.o: hello_f.c
cc -c hello_f.c
clean:
rm -f *.o hello

这只是一个非常简单的Makefile,实际项目中,我们遇到的是更加复杂的Makefile,关于Makefile的语法以及规则,可以得到很多有帮助的教程来学习,这里就不做为重点介绍了。

Makefile生成后,我们就可以用它来编译程序了,如下

# make
cc -c hello.c
cc -c hello_f.c
cc -o hello hello.o hello_f.o

从而顺利的生成了目标代码。

作者:Sun 中国工程研究院 张文龙

转载声明:本文转自 http://www.unix-center.net/?p=16

分享到:
评论

相关推荐

    Oracle Solaris 8 Solaris 8 Installation Supplement-60

    * 兼容性强: Oracle Solaris 8 操作系统能够运行在多种硬件平台上,包括SPARC和x86架构。 * 安全性高: Oracle Solaris 8 操作系统具有严格的安全机制,保护用户的数据和应用程序。 * 可靠性高: Oracle Solaris 8 ...

    操作系统\Solaris操作系统\Solaris

    7. **Solaris Zones**:类似轻量级虚拟化技术,Solaris Zones允许在单一操作系统实例上创建和隔离多个独立的执行环境,提高了硬件资源利用率。 8. **OpenSolaris社区**:Sun Microsystems曾开放源代码,成立了...

    Solaris操作系统介绍

    Solaris操作系统是Sun Microsystems公司(现已被Oracle公司收购)开发的一款基于UNIX的高级操作系统,主要用于服务器和工作站。它以其稳定性、安全性、可扩展性和高性能而受到广泛认可。本课程主要涵盖了Solaris操作...

    solaris操作系统基础知识.pdf

    - **SUN工作站上的软件**:SUN工作站主要采用Solaris操作系统,这是Sun Microsystems开发的一款基于Unix的工作站操作系统。它支持多种硬件平台,包括SPARC和x86架构。 - **SUN系统硬件**:SUN工作站通常配备高性能...

    solaris操作系统课件——与windows的对比

    在 Solaris 操作系统课件中,我们将详细介绍 Solaris 操作系统的各个方面,包括计算机系统概念、操作系统目标功能和作用、Solaris 操作系统结构和机制、Solaris 操作系统的优点和缺点等。同时,我们也将与 Windows ...

    solaris操作系统基础培训讲义

    Solaris操作系统,作为UNIX系统家族的一员,自1982年由Sun Microsystems发布以来,一直以其稳定性、安全性和高性能受到广泛欢迎,特别是在企业级应用领域。本章节旨在提供对Solaris系统管理的全面了解,涵盖硬盘管理...

    Solaris操作系统和常用命令

    Solaris操作系统是Oracle/Sun公司开发的一个基于Unix的高级操作系统,尤其以其稳定性和安全性而闻名。自1969年Unix由肯·汤普森和丹尼斯·里奇开创以来,Unix经历了多个演变阶段,逐渐形成了不同的变种,如Redhat、...

    Solaris操作系统多线程安全机制的研究和应用

    多线程在Solaris操作系统下的应用,不仅能充分利用多核处理器的能力,还能优化资源分配,提升程序性能。然而,多线程编程并非没有挑战,尤其在安全性方面。本文将深入探讨在Solaris操作系统环境下多线程的安全性问题...

    solaris操作系统做c应用程序开发步骤

    在solaris下开发C应用程序,缺省开发环境是Sun Studio。目前Sun Studio 11是Sun公司最新的C/C++/Fortran开发工具,这个工具已经安装在Unix体验中心的服务器上,我们可以直接使用。在Sun Studio 中,其中C程序的编译...

    solaris教程 solaris安装

    在IT领域,Solaris操作系统以其稳定性、安全性和高性能而闻名,尤其在企业级服务器市场占据一席之地。本教程将深入讲解如何进行Solaris的安装,主要关注的是Solaris 8版本的技术细节。 【描述】:在“Solaris教程”...

    Linux到Solaris 10操作系统迁移指南

    将基于 Linux 的应用程序迁移到 Solaris 10 操作系统时,开发人员需要关注多个方面,包括处理器架构问题、多线程编程、编译器差异、开发工具和内存管理等。通过仔细规划和准备,大多数迁移挑战都可以被克服。Solaris...

    SUNSparc服务器串口字符界面solaris操作系统安装指导.doc

    HP C7000 刀片服务器 Solaris 操作系统安装指导是指在 HP C7000 刀片服务器上安装 Solaris 操作系统的步骤指导。该指导适用于 HP C7000 刀片服务器,在安装 Solaris 操作系统时无法使用图形界面安装的场景。 在 HP ...

    VMware Workstation下安装Solaris 10操作系统史上最详细.doc

    "VMware Workstation下安装Solaris 10操作系统" 以下是从给定的文件中生成的相关知识点: ...15. 使用 VMware Workstation 可以在 Windows 平台上安装 Solaris 10 操作系统,提供了一个方便的虚拟机环境。

    solaris开发环境

    - **应用开发流程**:在Solaris OS中开发应用程序涉及到多个步骤,包括但不限于: - **打包应用程序**:使用特定的工具将应用程序及其依赖项打包成可安装的格式。 - **运行时链接程序和链接编辑器**:用于管理和...

    solaris项目开发课件

    【标题】"solaris项目开发课件"涵盖了Solaris操作系统平台上的软件开发与项目实施相关的知识体系。Solaris是由Sun Microsystems(后被Oracle收购)开发的一款强大的Unix操作系统,广泛应用于企业级服务器和数据中心...

    819-7033.pdf-Oracle Solaris 9 - Solaris 9 9/05 HW Package List-7

    Oracle Solaris 9 是一种基于 UNIX 的操作系统,开发和维护 bởi Sun Microsystems,Inc.。在这个文档中,我们将详细介绍 Oracle Solaris 9 的硬件包列表,包括软件组件、硬件要求、安装和配置等方面的信息。 软件...

    Solaris操作系统的备份与恢复.pdf

    Solaris 9和10引入的Flash安装是一种创新的安装方式,它允许在一台主机(主系统)上创建Solaris操作系统的镜像,然后可以将这个镜像复制到相同架构的其他系统(克隆系统)上,实现快速部署。然而,经过测试发现,...

    Solaris 公用桌面环境:高级用户和系统管理员指南

    Solaris是Sun Microsystems开发的一款高性能、稳定且安全的Unix操作系统,广泛应用于服务器、工作站以及高性能计算领域。 ### Solaris公用桌面环境概览 Solaris公用桌面环境,基于OpenWindows和OPEN LOOK图形用户...

    Solaris操作系统的使用

    本课程介绍了Solaris操作系统的使用,具体介绍了Solaris系统的常见操作和简单的系统维护知识,主要包括UNIX的结构、Solaris系统常用操作、UNIX常用工具与实用程序、网络通信等内容。 知识点1:UNIX系统的特点 UNIX...

Global site tag (gtag.js) - Google Analytics