零配置绿色版 Code::Blocks 13.12 + LLVM + 多方案代码高亮
codeblocks吧
全部回复
仅看楼主
level 9
Edison_Canton 楼主
1、本软件是在官方下载包 codeblocks-13.12mingw-setup-TDM-GCC-481.exe 安装后制作的,随配编译器为 tdm-mingw 4.8.1 和 LLVM Clang 3.4。
2、和官方版本相比,没有任何功能削减。
3、和官方版本相比,增加了以下功能:
a、绿色便携零配置,即解即用。
只要你执行 CbLauncher.exe 来启动程序,就能在任何 Windows、任何系统上实现零配置跟随。CbLauncher 是 Code::Blocks 官方推荐的绿色便携实现程序。
由于 CbLauncher.exe 需要抓取 CodeBlock 的在 Windows 系统中的目录结构信息,因此个别安全软件会误报。我是用 360 等软件扫过是没问题的,CbLauncher 的源代码也已经包含在包中,有兴趣的请自己研究。
b、添加了官方 wiki 提供的多种 C/C++ 编辑器代码色彩/高亮方案(来源:http://wiki.codeblocks.org/index.php?title=Syntax_highlighting_custom_colour_themes),例如 Vim、Sublime、Son of Obsidian 等等总共 16 种配置方案。你可以到 settings -> Editor -> Syntax highlighting 中进行选择。
c、修改了 source code formatter 的略干配置,你可以用热键 ctrl-shift-a 实现对代码的格式化,这主要是针对一些对代码编写对齐格式感到麻烦的人以及一些从电子书、网络上复制黏贴过来的代码而设,是一个比较值得一试的工具。
你也可以在 Plugins 中选择执行该功能。
这个功能的热键设置是我添加的,如果和你使用的其他软件有冲突,请到 Settgins -> Editor -> Keyboard shortcut 中进行修改。
d、添加了汉化包,你可以在 Settings -> Environment settings -> View 的 Internationalization 里选择 Chinese (Simplified),重启后就能生效。请注意,这是一个比较有限但是足够的汉化。
Code::Blocks 日常使用所涉及的英文单词对于只有小学英语水平的人来说也是完全能理解的,在这里建议你使用英文界面。
4、修改了略干 debugger 时的界面设置:把 watchs 放置在了主界面右侧,将反汇编代码窗口放置在了右下侧。
5、我把编辑器的字体设置成 fixedsys,这是一种 12 像素的点阵字体。点阵字体的明显优势字体显示结实、清晰、可读性极高,但是它的粗体模式比较难看,因此我对前面的若干种编辑器代码/高亮配置方案中涉及粗体的不分修改为常规字体模式。
觉得不爽的话请到 Settings -> Editor -> General Settings 里修改,事实上我尝试过 Consolas、Courier New 等字体,效果都不如 fixedsys。顺便一提的是,作为一个合格的编程字体,是有几个基本准则,首先是字母、标点不会产生混淆(例如 1 和 l 有明显区别),其次是必须是等宽字体,这在对齐输出的时候尤为有用,第三是字体显示不能发虚或者让人疲劳,所以不要光看某个字体字形很漂亮就拿来用。
6、我设置了 C 文件的默认代码,正如你所看到的,main 函数写法是 int main(void),如果你需要命令行参数的话,请自行修改为 int main(int argc, char * argv[])。在 C99 标准中只有这两种 main 写法。像 int main()、void main() 都并非标准写法,换个编译器可能就运行不了了。
7、这个版本除了官方配备的 TDM-MinGW 4.8.1(GCC 4.8.1)外,还集成了 LLVM CLang 编译器,你可以到 settings -> compiler 里选择 LLVM CLang 并设置为默认编译器即可(对于已有的项目文件需要在项目编译设置里进行 LLVM 编译器选择)。
LLVM CLang 是什么?自己 google 吧。
不过 CLang 对代码要求非常严格,例如 printf 里有中文的话,就会提示字符代码页出错。这时候你需要使用宽字符输出(具体自己到 google 搜索 C语言对宽字符的支持 即可)和使用 utf-8 文件代码页(codeblocks 的 edit-> file encoding,选择 utf-8,关闭文件再打开。CLang 这样设计是有好处的,因为这样的代码无论是 linux 还是任何新版 windows 都能实现中文通吃。
对初学者,我建议使用默认的 GNU GCC Compiler,待你懂得单步调试程序后再试 LLVM CLang。
8、和我修改无关但是大家可能会遇到的问题。
a、要使用 code::blocks 内建的 gdb debugger 调试功能就必须符合两个条件:
a1、必须建立项目才能进行调试,code::blocks 虽然能对独立的 .c 文件进行构建、运行,但是调试的话必须是项目(project)模式。
a2、由于 gdb 当前自身的 bug,code::blocks 中不能对包含有中文、空格等非英文文件名、目录名的文件、项目进行调试,因此这里要求你建立的文件、项目以及所在的目录不能包含有中文。最好是 code::blocks 所在的目录也是纯英文的,例如下载后的包直接放在 d:\ 下解压。
b、我把字符串语法检查关闭了,这个功能只对英文起效,而且和编写代码没有什么实质影响,所以这个功能被我关闭了。不关闭的话,你输入的中文字符串下面都会有一条红色波纹线。虽然关闭了字符串语法检查,但是我把代码自动完成(Code completion)设置得更加敏感了一些(输入两个字母就能激发代码自动提示/完成,响应时间缩短为 0.1 秒),觉得不好用的你可以调成三字母和把时间延长一些,我个人感觉现在这个设置刚刚好。
c、直接打开 .c、.c
bp
(code::blocks 项目文件)或者其他 c/c++ 代码文件无法启用绿色配置。这是因为操作系统把文件关联给了 codeblocks.exe 而不是 CBLauncher.exe,你只需要右键点击这些文件手动选择 CBlauncher.exe 为默认关联就行(其实这是小学生都应该知道的知识)。
d、缺少 graphics.h 等 Turbo-C 中的头文件。这不是我的问题也不是 Code::Blocks 的问题,因为这类头文件都是相当老旧的 dos 时代的图形库,你可以使用 EGE 来替代。
如果一定要用 graphics.h,我推荐你使用 Code::Blocks-EP 版:http://codeblocks.codecutter.org/。下载后,展开文件,同样使用 CBLauncher 来启动 Code::Blocks,然后新建项目,选择 2D Graphics 类别下的 WinBGIm 项目类型,然后在里面新建 C++(不是 C)文件,之后你就能使用 graphics.h 的代码了。
什么,为什么我不把 winbgim 集成到现在这个 code::blocks 里?很遗憾,我不是没试过,不过时间和精力、当前能力所限,所以没去实现,大家知道就是了。
这篇说明并非 Code::Blocks 的使用指南,如果你对使用上还有什么不解的,请 Google 搜索以下字眼: Code::Blocks 指南,不过关于那些配置编译器之类的你完全可以略过,因为你现在下载的就是绿色便携版,零配置马上使用。
你可以参考一下这篇:
http://www.cnblogs.com/-clq/archive/2012/01/31/2333247.html
关于 C 语言的学习资料推荐:
《明解 C 语言》
《C Primer Plus》
《品悟 C》
视频:郝斌的 C 语言讲座(180 讲)
这些自己找吧。
2014年02月02日 13点02分 1
level 8
谢谢楼主的贡献
2014年02月03日 02点02分 3
level 5
LLVM编译错误!如何解决?
2014年02月03日 14点02分 4
等解决!
2014年02月03日 14点02分
level 9
Edison_Canton 楼主
把代码 post 上来试试看,从错误信息看,似乎不是配置问题。
2014年02月03日 16点02分 5
#include <iostream> #
include using namespace std; int main() { auto *a="中国"; cout<
2014年02月03日 17点02分
level 5
#include <iostream>
#include<conio.h>
using namespace std;
int main()
{
auto *a="中国";
cout<<a;
_getch();
return 0;
}
2014年02月03日 17点02分 6
level 9
Edison_Canton 楼主
1、到 settins -> compiler 里,选择 Search directries 标签,作以下添加。
[Compiler] 标签中添加:
$(CODEBLOCKS)\MinGW\include\c++
$(CODEBLOCKS)\MinGW\lib\gcc\mingw32\4.8.1\include\c++
$(CODEBLOCKS)\MinGW\lib\gcc\mingw32\4.8.1\include\c++\mingw32
[Linker] 标签中添加:
$(CODEBLOCKS)\MinGW\lib\gcc\mingw32\4.8.1\include\c++
$(CODEBLOCKS)\MinGW\lib\gcc\mingw32\4.8.1\include\c++\mingw32
2、auto 应该是 c++11 里的东西吧?这样的话需要到 Compiler Settgins 选上 -std=c++11。
3、因为涉及到中文,如果你使用 windows-936 的话,Compiler Settings 标签中的 -pedantic-errors 会提示文件代码页 error,你需要将它前面的勾去掉。
2014年02月04日 04点02分 9
level 5
始终出错:
-------------- Build: Release in newtest (compiler: LLVM Clang Compiler)---------------
clang++.exe -Weverything -fexceptions -O2 -std=c++11 -IE:\CodeBlocks\MinGW\include\c++ -IE:\CodeBlocks\MinGW\lib\gcc\mingw32\4.8.1\include\c++ -IE:\CodeBlocks\MinGW\lib\gcc\mingw32\4.8.1\include\c++\mingw32 -c E:\c\newtest\main.cpp -o obj\Release\main.o
Execution of 'clang++.exe -Weverything -fexceptions -O2 -std=c++11 -IE:\CodeBlocks\MinGW\include\c++ -IE:\CodeBlocks\MinGW\lib\gcc\mingw32\4.8.1\include\c++ -IE:\CodeBlocks\MinGW\lib\gcc\mingw32\4.8.1\include\c++\mingw32 -c E:\c\newtest\main.cpp -o obj\Release\main.o' in 'E:\c\newtest' failed.
2014年02月04日 08点02分 10
已经按照你的说明添加搜索目录
2014年02月04日 08点02分
level 5
2014年02月04日 08点02分 11
level 9
Edison_Canton 楼主
Search Directories 那里是:
[Compiler]
$(CODEBLOCKS)\MinGW\include
$(CODEBLOCKS)\MinGW\include\c++
$(CODEBLOCKS)\MinGW\lib\gcc\mingw32\4.8.1\include\c++
$(CODEBLOCKS)\MinGW\lib\gcc\mingw32\4.8.1\include\c++\mingw32
[Linker]
$(CODEBLOCKS)\MinGW\lib
$(CODEBLOCKS)\MinGW\lib\gcc\mingw32\4.8.1\include\c++
$(CODEBLOCKS)\MinGW\lib\gcc\mingw32\4.8.1\include\c++\mingw32
我这里编译是正常的。
2014年02月04日 09点02分 12
level 5
请求在绿色版本里把llvm编译环境配置好!我现在始终无法正常编译!
2014年02月04日 15点02分 13
如果你写的是 c 代码,符合规范的,并且是使用 cblauncher 启动程序,是能正常编译的。c++ 代码的参看上面的添加。
2014年02月13日 10点02分
回复 天魔666 :下载链接在哪啊?
2014年09月26日 10点09分
level 1
帮顶
2014年02月11日 09点02分 14
http://ww[滑稽]w.pixiv.net/my[勉强]page.php 具体哪张我忘了 不过你应该能找到自己喜欢的图片[太开心]
2014年04月08日 10点04分
level 1
LZ提到的Vim、Sublime、Son of Obsidian 等等总共 16 种配置方案没有啊...只有默认的一种!
2014年02月12日 07点02分 15
问题已解决,运行的codeblocks.exe这个进入的程序,应该是运行CbLauncher.exe的....
2014年02月12日 08点02分
level 8
不能下载了,能再分享下吗?谢谢!
2014年02月14日 14点02分 16
一直都是共享着,没有过期,你试试看文字方式复制连接然后粘贴到地址栏再打开。
2014年02月14日 15点02分
回复 天魔666 :下了,昨天电脑上不行今天手机上就可以了
2014年02月15日 00点02分
回复
天魔666
:在哪层啊?
2016年02月26日 07点02分
level 6
今天不知道怎么了。。。。360一直报错[不高兴]。。。老是要查杀我的CbLauncher.exe。。。。。烦死了。。。。。。。。。。。没办法。。只能恢复然后信任了
2014年02月16日 04点02分 17
level 1
真好用。。谢谢楼主!
2014年02月16日 11点02分 18
level 3
这是怎么回事?按说是按照给的王盼下载解压缩的啊
2014年02月20日 02点02分 19
你执行不是 CBLauncher.exe 来启动程序。
2014年02月20日 05点02分
回复 天魔666 :什么意思?您能教我一下吗?我qq2541781827
2014年02月20日 05点02分
找不到CBLauncher.exe肿么办?
2014年04月01日 11点04分
回复 Djhgggh : 不知道,我也不会用
2014年04月01日 11点04分
level 3
您看这是怎么回事?
2014年02月20日 06点02分 20
和我一样,每次编译完后,运行就提示未编译
2014年06月12日 03点06分
请问你的汉化版哪里下的 ?
2015年05月14日 14点05分
level 9
Edison_Canton 楼主
这是 clang 本身的问题。
我集成在包里的 clang 是 llvm 官方版本,它对 gcc 4.7 以后的 c++ 库支持有问题。
我已经找到了支持新版本 gcc c++ 库的 clang 3.4,打包集成后,上传后(一小时)就可以放出来了。
2014年02月20日 06点02分 21
level 9
Edison_Canton 楼主
新版本上传完成。
改动的地方:
1、采用了网事如风(http://www.godebug.org/index.php/archives/77/)提供的修订版 LLVM 3.4。
2、只提供了 clang.exe 和 clang++.exe,需要完整的修订版 LLVM 请到这个连接下载([无效] http://pan.baidu.com/s/1hq1H7SS),因为都集成的话,包文件会接近 90MiB。
3、改动了一下 son of obsidian 主题的“选择”配色。
程序执行注意要点:
1、第一次执行或者你希望切换到另一个编译器配置方案的话,请执行解压后的目录中所包含的 .bat 文件,每个 .bat 文件对应一种编译器配置方案。
GNU__gcc_c_c99_first_time.bat - GNU GCC C99.(写 C 代码一般选择这个)
GNU__gcc_c++_c++11_first_time.bat - GNU C++11 (写 C++ 代码一般选择这个)
LLVM_CLang_c++11_first_time.bat - LLVM Clang C99(采用 LLVM Clang C 编译器)
LLVM_CLang_c99_first_time.bat - LLVM Clang C++11(采用 LLVM Clang C++ 编译器)
执行完 .bat 后,就进入 Code::Blocks。
2、以后继续采用同样的配置方案,无需再执行 .bat,直接执行 CBLauncher.exe 即可(注意,不是 codeblock.exe)。
下载链接:
[无效] http://pan.baidu.com/s/1CdNgq
最后要说的是,使用这个修订版的 LLVM 编译程序时间其实非常长,你要有心理准备,但是它编译出来的代码是可以正常运行的。
2014年02月20日 07点02分 22
本帖内容不再更新,其中的链接已经被我取消。 请大家移步到更新版的帖子中讨论: https://tieba.baidu.com/p/3242052995?pn=3#post_content_57546114364
2014年09月18日 04点09分
level 11
不错,花了不少心思赞
2014年02月21日 18点02分 23
1 2 3 4 5 6 尾页