关闭

使用scintilla编译c++方法

标签: c++borlandiostreamgcclinux文本编辑
655人阅读 评论(0) 收藏 举报
分类:

     最近发现一个开源文本编辑器scintilla,速度快,提供语法高亮等功能,可以用来编程.不过编译程序要自己配置,这个比较麻烦.在网上寻得此文,讲的不错.  十分感谢原作者.

[分享]scintilla + bcc55打造简洁的c++开发环境  转自www.LiDuan.com

你也可以用DEV-C++, 但是gc++在windows环境下表现得并不好。比如, 写个很简单的代码,只包括一条cout,
用dev-cpp编译出来有500k, 用bc5.5编译只有111k, 我写的unix时间戳转换用dev-cpp编译900k,
bcc5.5编译200k(g++在linux下编译14k).  因此,我建议初学者在windows下使用别的编译器。

borland c++ compile 5.5(bcc55)就是很好的选择, 免费下载使用。

borland c++ compile 5.5下载:
http://www.codegear.com/Do...

borland c++ compile 5.5 sp2 下载:
http://info.borland.com/de...

scintilla1.73 (sc)下载:
http://prdownloads.sourcef.../

bcc55的安装很简单,直接解压缩到一个目录下, 我放到c:/bcc 下面, 然后是配置bcc55,  需要在c:/bcc/bin下创建两个文件  ilink32.cfg和bcc32.cfg,可以用记事本,也可以用sc. 文件的内容如下

ilink32.cfg

程序代码:

-v-
-x
-L"C:/BCC/LIB;C:/BCC/LIB/PSDK"

(路径根据自己的情况修改)

bcc32.cfg
程序代码:

-I"C:/BCC/INCLUDE"
-L"C:/BCC/LIB;C:/BCC/LIB/PSDK"
-P
-v-
-w
-DWINVER=0x0400
-D_WIN32_WINNT=0x0400

(路径根据自己的情况修改)

配置完毕后就开始安装sc.  解压缩下载的zip文件,然后将所有的文件(不是目录)复制到c:/bcc/bin  下。 双击SciTE.exe运行sc. 然后开始sc的配置。

sc的配置完全是linux风格的。 它将所有的选项写在文本文件里。 只需要修改文本文件就可以配置sc。

首先要对c语言的命令格式进行修改。sc的命令格式仅仅支持gcc, 需要修改为bcc的命令格式, 打开Options 选择 Open cpp.properties  



在这个文件中查询一下代码(应该在文件的后半部分接近底部)。
程序代码:

ccopts=-pedantic -Os
cc=g++ $(ccopts) -c $(FileNameExt) -o $(FileName).o
ccc=gcc $(ccopts) -c $(FileNameExt) -o $(FileName).o

make.command=make
command.compile.*.c=$(ccc) -std=c99
command.build.*.c=$(make.command)
command.go.*.c=$(FileName)
# To make the Go command both compile (if needed) and execute, use this setting:
#command.go.needs.*.c=gcc $(ccopts) -std=c99 $(FileNameExt) -o $(FileName)

command.compile.$(file.patterns.cplusplus)=$(cc)
command.build.$(file.patterns.cplusplus)=$(make.command)
command.go.$(file.patterns.cplusplus)=./$(FileName)
command.go.needs.$(file.patterns.cplusplus)=g++ $(ccopts) $(FileNameExt) -o $(FileName)

command.build.*.h=$(make.command)

command.name.0.$(file.patterns.cpp)=Indent
command.0.$(file.patterns.cpp)=astyle -tapOK -M8 $(FileNameExt)
command.is.filter.0.$(file.patterns.cpp)=1

command.name.1.$(file.patterns.cplusplus)=Lint
command.1.$(file.patterns.cplusplus)=g++ -W -Wall -Wshadow -Wwrite-strings -Wold-style-cast /
    -Woverloaded-virtual -pedantic -Os -fno-exceptions -c $(FileNameExt)

全部替换为下列代码:
程序代码:

cc=bcc32 -v- -w -O1 $(FileNameExt)

command.compile.*.c=$(cc)
command.build.*.c=make
command.go.*.c=$(FileName)

command.compile.*.cc=$(cc)
command.build.*.cc=make
command.go.*.cc=$(FileName)

command.compile.*.cpp=$(cc)
command.build.*.cpp=make
command.go.*.cpp=$(FileName)

command.compile.*.cxx=$(cc)
command.build.*.cxx=make
command.go.*.cxx=$(FileName)

保存关闭sc, 现在sc就可以进行c++的开发了。但是不能直接运行SciTE.exe  需要将其置于系统路径下运行。 运行方法是在c:/bcc下面建立一个cmd文件。
比如start.cmd内容如下:
程序代码:

path=C:/BCC/BIN;%PATH%
DOSKEY /INSERT
START C:/BCC/BIN/SciTE.EXE
exit


(注意 系统路径 c:/bcc/bin根据自己的情况修改)

保存, 然后点击start.cmd运行sc, 可以编写cpp文件进行测试。
比如test.cpp  内容如下:

#include <iostream>
using namespace std;

int main()
{
    cout << "Welcome www.LiDuan.com" << endl;
}

编辑完后保存,选择tools 里面的compile进行编译。 在选择 go运行, 就可以在右面看到程序的输出结果了。



然而,这个编辑器还不够人性化, 比如本人喜欢给每行编号。  还有当前行高亮显示。 这些需要对sc的全局进行设置
在Options 选择 Open SciTEGlobal.properties

行号码,找到:
程序代码:

#line.margin.visible=1
line.margin.width=4
margin.width=16

改为:
程序代码:

line.margin.visible=1
line.margin.width=4+
margin.width=16


当前行高亮 找到:
程序代码:

#caret.fore=#FF0000
#caret.width=2
#caret.line.back=#FFFED8
#caret.line.back.alpha=63


改为:
程序代码:

caret.fore=#FF0000
caret.width=2
caret.line.back=#FFFED8
caret.line.back.alpha=63

起始窗口大小 修改:
程序代码:

position.width=576
position.height=740


关闭重新启动就行了。当然你也可以配置一个sc + gcc的编辑器。  配置方法基本相同。 只是不用修改cpp.properties文件。 下图是配置的两种环境对比。 上面是bcc,下面是gcc.


scintilla也可以在linux下运行, 配置方法可以参阅我的个人博客
 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:38060次
    • 积分:843
    • 等级:
    • 排名:千里之外
    • 原创:37篇
    • 转载:16篇
    • 译文:1篇
    • 评论:2条
    文章分类