[分享]scintilla + bcc55打造简洁的c++开发环境
你也可以用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 内容如下:
编辑完后保存,选择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下运行, 配置方法可以参阅我的个人博客