使用scintilla编译c++方法

原创 2007年10月05日 15:47:00

     最近发现一个开源文本编辑器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下运行, 配置方法可以参阅我的个人博客
 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Windows下Scintilla的编译,使用

下载了Scintilla的源码,在网上搜索资料自己摸索着编译,出现很多问题,现将解决方法总结: 1.下载Scintilla的源代码。(http://scintilla.sourceforge.n...

VC2010编译源代码编辑控件scintilla

VC2010编译源代码编辑控件scintilla flyfish 代码编辑器notepad++使用了scintilla VS著名的插件Visual Assist X 也使用scint...

c++ scintilla

  • 2011-07-05 23:13
  • 1.08MB
  • 下载

语法高亮编辑控件Scintilla在MFC中的简单使用之完整示例

该示例是一个简单的NC程序编辑器,附件代码在Visual Studio .NET 2003(VC++7.1)下编译通过。 第一部分、修改Scintilla,使其支持NC程序 1.修改SciLexe...

语法高亮编辑控件Scintilla在MFC中的简单使用

项目中要使用代码编辑器,搜索之后,发现了强大的编辑器控件Scintilla。 1.简介 Scintilla是一款开源的语法高亮编辑器控件,官方网站:http://www.scintilla.org...

Scintilla开源库使用指南(编辑器篇)(二)

Scintilla开源库使用指南(二) 上一篇文章介绍了Scintilla的基本应用,这里继续学习Scintilla更多的控制命令和实现细节,完善我们的编辑器; 页边(Ma...

Windows下使用Scintilla

How to use the Scintilla Edit Control in windows? This should be a little step by step explanation ...

语法高亮编辑控件Scintilla在MFC中的简单使用

项目中要使用代码编辑器,搜索之后,发现了强大的编辑器控件Scintilla。 摘自:http://www.qingfengju.com/article.asp?id=14  1.简介 ...

Scintilla开源库使用指南(编辑器篇)(一)

Scintilla开源库使用指南(一) 摘自:http://www.cnblogs.com/superanyi/archive/2011/04/07/2008632.html  ...

Scintilla使用(编辑器篇)(1) - 简介

Scintilla是一个开源的编辑组件,它不仅具有通常的编辑功能,而且还提供了语法样式、代码折叠、标签、代码自动完成和提示等功能。     Windows版本的Scintilla,是一个标准的Win...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)