在RHEL5下使用Code::Blocks编译基于Tuxedo的Pro*C程序

来源:互联网 发布:华为 python 编辑:程序博客网 时间:2024/05/25 20:01

         公司项目的后台是使用Tuxedo作为中间件,以及Pro*C来实现业务功能,后台服务器系统为RHEL。

         Linux编程我想一般的大牛都是使用VI或者Emacs。我不是大牛,虽然Vi也会,确实好用,不过介于项目代码量太大,代码跳转查看不方便,我还是选择使用IDE来进行编程吧。

         Linux下有六款比较常用的C的IDE:Anjuta,netbeans,Eclipse;Qt;Code::Blocks;Geany。特性我就不介绍了,感兴趣自己Google。

         为什么我要选择Code::Blocks呢,本来想用Qt的,最好用的跨平台IDE,可是能力有限。。。在RHEL5.4下装了半天没装成。netbeans,Eclipse,启动什么的太慢,还是算了吧,然后就选择了可定制性比较高的Code::Blocks。

1、安装Code::Blocks

         首先是安装,在RedHat下最简单的安装方式就是找到rpm包进行安装了。由于Code::Blocks是需要安装wxWidget才能使用。。所以安装wxWidget。

1.1、安装wxWidget   

         需要两个包wxBase,wxGTK。

         可能你看到的时候版本更新了,可以直接到 http://mirror.facebook.net/fedora/epel/5/i386去查询

         下载地址 http://mirror.facebook.net/fedora/epel/5/i386/wxBase-2.8.12-1.el5.i386.rpm

                            http://mirror.facebook.net/fedora/epel/5/i386/wxGTK-2.8.12-1.el5.i386.rpm

         安装

         rpm-ivh wxBase-2.8.12-1.el5.i386.rpm

         rpm -ivh wxGTK-2.8.12-1.el5.i386.rpm

1.2、安装Code::Blocks

         同样两个包
         下载地址 http://mirror.facebook.net/fedora/epel/5/i386/codeblocks-10.05-1.el5.i386.rpm        

                             http://mirror.facebook.net/fedora/epel/5/i386/codeblocks-libs-10.05-1.el5.i386.rpm        

         安装

         rpm -ivh codeblocks-10.05-1.el5.i386.rpm

         rpm -ivh    codeblocks-libs-10.05-1.el5.i386.rpm

2、安装中文包

         地址就不放了,在csdn上搜索codeblocks 10.05 汉化 就能找到。

         安装方法

    mkdir/usr/share/codeblocks/locale/

    mv ./zh_*/usr/share/codeblocks/locale/

   在codeblocks的主菜单 Settings-->Environment-->view 选上Internationalization (need restart)并选择Chinese(Simplifed)即可,当然这汉化是不全的。

 

3、Tuxedo Pro*C程序编译

3.1、建立工程

    选择Empty project 空项目,然后新建*.pc文件和*.h,或者添加已有的文件。

    Code::Blocks是不支持pc文件高亮显示的,需要 设置-->编辑器-->语法高亮-->文件掩码 添加*.pc

 

 

 

3.2手动建立*.c文件

    Pro*C文件最后是转为C文件进行编译的,为了让Code::Blocks能找到转换后的C文件,我们手动新建添加进工程(此时还没有C文件),另外C文件要和同名的PC文件在同一目录下。C文件是空的,不用管它。

3.3自定义链接器

    因为涉及到Tuxedo,Tuxedo在服务端程序链接是用buildserver命令生成的,而Code::Blocks默认是不支持的,但Code::Blocks的扩展性实在强大,我们可以自己定义。

    选择设置-->编译器和调节器,在选择编译器中点击复制(按GNUGCC复制),命名为Tuxedo Compiler

 

 

然后就选择可执行工具链,在动态链接器中选择Tuxedo安装目录的bin目录下的buildserver。

 

接下去点击其他设置最下面的高级设置,在Command中选择最下面的LinkObject files to native excutable,命令行宏中填写$linker$link_option 这是配置链接器执行命令

 

这样链接器就配置好了

 

3.4项目设置

    接下去是对项目设置,使项目按照正确的顺序执行正确的命令。

    首先右击项目——>属性 ,构建目标,类型选Native。

    然后右击项目——>构建选项,左边选择项目或者Debug都可以。

    选择的编译器为刚才建立的Tuxedo Compiler 转到链接器在 其他链接器选项中 输入 buildserver命令应该需要的选项 。这个如果用Makefile编译Tuxedo程序应该都知道怎么填写,不知道请自行查阅Tuxedo资料。这里可以用自定义变量(在定制变量页中添加),也可以使用Code::Blocks内置的宏,相关宏请参考上图,编译器高级选项。

    转到搜索路径也,添加编译时需要寻找源文件的目录,必要的两个应该是Tuxedo的include目录和oracle的precomp  下的public目录,其他有需要自行添加。

    然后转到构建前后附加步骤这一tab页,这里在构建前步骤中填写proc命令,目的是在编译链接前将pc文件转成c文件。请自行参考proc命令写法。或者直接将预编译写成Makefile,然后这里填写make,在文件很多的时候比较省事。

 

   

 

4、总结

以上就是所有步骤,如果没有错误的话,就应该能编译,链接产生Tuxedo可执行文件。

 


原创粉丝点击