vs2013 编译 notepad++ 源代码

一、官方网站下载源代码,解压后得到scintilla和powereditor文件夹。

二、安装vs2013。直接打开powereditor\visual.net\notepadplus.vcxproj.

三、执行操作:生成->重新生成解决方案。

1.遇到 Error C2220 警告被视为错误的问题,解决方法是

右键->属性->配置属性->C/C++->常规,修改“将警告视为错误”的值为“否”即可。

2.遇到找不到Notepad++.exe的问题,解决方法是

右键->属性->配置属性->链接器->常规,将“输出文件”后改为“$(OutDir)NotePad++.exe”

3.遇到LNK2019找不到符号的问题,jsonXXX.lib的问题。这时要自己编译jsonxxx.lib库。

具体过程是:找到powereditor\src\jsoncpp\makefiles\vs71\jsoncpp.sln文件,

双击jsoncpp.sln文件,直接打开json项目

生成->重新生成解决方案。这时就生成了新的jsonxx.lib库文件。

回到notepad项目,重新执行:  生成->重新生成解决方案。应该就可以生成Notepad++.exe了

四、notepad项目依赖于scintilla项目,但也可以不自己编译。

具体方法是,直接在系统上安装notepad。再找到notepad所在的文件夹,找到SciLexer.dll文件,

复制该文件到刚才新生成的Notepad++.exe文件夹下。运行Notepad++.exe即可!

针对第四步,由于NotePad++已经提供了SciLexer的源码,我直接编译了源码,但是发现在解压后得到的scintilla编译不过去,然后发现在PowerEditor下有一个scintilla.original.forUpdating目录,于是我用vs2013打开了scintilla.original.forUpdating\scintilla.356\win32\SciLexer.vcxproj,我可编译通过,然后将编译生成的SciLexer.dll拷贝到Notepad++.exe文件夹下即可。

 

posted @ 2015-09-13 19:09  摩斯电码  阅读(611)  评论(0编辑  收藏  举报