代码审核工具ReviewBoard在Windows下安装问题
在比较了几款CODE REVIEW的工具之后,决定部署一个Reviewboard。基于PYTHON的环境在WINDOWS下配置是相当的麻烦。在照着文档把每一步做完之后,发现站点还是不能访问。
查看apache的日志后发现如下LOG:
File "C:\\Python27\\lib\\site-packages\\django-1.3.1-py2.7.egg\\django\\core\\handlers\\wsgi.py", line 250, in __call__, referer:
self.load_middleware(), referer:
File "C:\\Python27\\lib\\site-packages\\django-1.3.1-py2.7.egg\\django\\core\\handlers\\base.py", line 47, in load_middleware, referer: raise exceptions.ImproperlyConfigured('Error importing middleware %s: "%s"' % (mw_module, e)), referer: ImproperlyConfigured: Error importing middleware reviewboard.admin.middleware: "cannot import name Random",
在翻遍了整个GOOGLE之后,有老外提示是其中的pycrypto编译的包有问题,需要在Windows下重新编译。
于是乎下载了pycrypto2.5的源码。
在WINDOWS下编译,需要Mingw环境,下载Mingw,安装选C编译器就可以。记得把MSYS也勾上。
安装完之后,进入pycrypto的源码目录,执行:
python setup.py build -c mingw32
结果报错如下:
Traceback (most recent call last):
File "setup.py", line 452, in <module>
core.setup(**kw)
File "C:\Python27\lib\distutils\core.py", line 152, in setup
dist.run_commands()
File "C:\Python27\lib\distutils\dist.py", line 953, in run_commands
self.run_command(cmd)
File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
cmd_obj.run()
File "C:\Python27\lib\distutils\command\build.py", line 127, in run
self.run_command(cmd_name)
File "C:\Python27\lib\distutils\cmd.py", line 326, in run_command
self.distribution.run_command(command)
File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
cmd_obj.run()
File "setup.py", line 247, in run
self.run_command(cmd_name)
File "C:\Python27\lib\distutils\cmd.py", line 326, in run_command
self.distribution.run_command(command)
File "C:\Python27\lib\distutils\dist.py", line 972, in run_command
cmd_obj.run()
File "setup.py", line 269, in run
raise RuntimeError("chmod error")
RuntimeError: chmod error
又翻遍了GOOGLE之后,有人提示说要装ActivePerl。切记注意配置环境变量,把ActivePerl的路径放在Mingw之前。 再执行 python setup.py build -c mingw32python setup.py bdist_wininst
运行后,生成pycrypto-2.5.win32-py2.7.exe
安装后,访问reviewboard网站,发现问题依旧。就在我打算放弃的时候,突然看到有人说pycrypto2.5有问题,用低版本的试试。
于是我就下了一个2.2的源码,重新编译。
在执行到python setup.py bdist_wininst时报错
error: Unable to find vcvarsall.bat
解决方法如下:
在python的lib\distutils目录下,找到distutils.cfg文件(如果没有,就创建一个)。加上下面内容:
[build]
compiler=mingw32
再次执行python setup.py bdist_wininst
BUILD成功,BDIST目录下生成.pycrypto-2.2.win32-py2.7.exe安装文件
删了之前的2.5版本,再装这个2.2的版本。
访问网页:
已经正常运行了。还有点CSS的问题,应该是路径的配置。
因为在创建站点的时候,我用了alias指向,需要找到rb站点的conf目录里的settings_local.py文件
在FORCE_SCRIPT_NAME后,加上alias的名称,
FORCE_SCRIPT_NAME = "/review/"
这样再次访问,
OK!
还是有些小问题,至少都是站点配置问题,慢慢改吧。
后面再写一些使用的经验
安装相关资料:
http://www.razorvine.net/blog/user/irmen/article/2009-12-05/166
我在rb站点上提交的issue
http://code.google.com/p/reviewboard/issues/detail?id=2490
通过 Wiz 发布
转载于:https://blog.51cto.com/515632/791824
代码审核工具ReviewBoard在Windows下安装问题相关推荐
- python开发工具及环境配置_python_在windows下安装配置python开发环境及Ulipad开发工具...
最近开始学习Python,在网上寻找一下比较好的IDE.因为以前用C#做开发的,用Visual Studio作为IDE,鉴于用惯了VS这么强大的IDE,所以对IDE有一定的依赖性. Python的ID ...
- Windows下安装自动化部署工具Fabric
Windows下安装自动化部署工具Fabric 部署应用程序用FTP还是SCP还是rsync复制文件?如果你需要手动复制,用一次两次还行,一天如果部署50次不但慢.效率低,而且容易出错. 正确的部署方 ...
- windows下安装node版本管理工具及nvm use切换不成功问题解决
windows下安装node版本管理工具及nvm use切换不成功问题解决 参考文章: (1)windows下安装node版本管理工具及nvm use切换不成功问题解决 (2)https://www. ...
- windows 下安装Chocolatey(强大的软件包管理工具)
在 Linux 下,大家喜欢用 apt-get 来安装应用程序,如今在 windows 下,大家可以使用 Chocolatey 来快速下载搭建一个开发环境. Chocolatey 的哲学就是完全用命令 ...
- rocketmq安装,内存配置,各种命令说明,windows下安装,控制台工具
1修改内存大小 以下只是设置实例: cd /home/bigdata/installed/rocketmq-all-4.2.0 (140机器) vim bin/runserver.sh (调整name ...
- Windows下安装Objective-C开发环境
Windows下安装Objective-C开发环境 1.首先用GNUstep在windows下模拟object c开发环境. 官方网址:http://www.gnustep.org/ 百度云下载: 链 ...
- Windows下安装配置SubVersion的简明步骤
Windows下安装配置SubVersion的简明步骤 [使用的安装程序和文档说明] svn-1.4.0-setup.exe:Subversion服务端1.4.0安装程序: SubService.ra ...
- java连接rabbitmq_Mac / Windows 下安装 RabbitMQ
Java大联盟 致力于最高效的Java学习 关注 什么是 RabbitMQ ? RabbitMQ 是采用 Erlang 语言实现 AMQP(Advanced Message Queuing Pro ...
- windows下安装VIM
全世界最好的编辑器VIM之Windows配置(gvim),vundle插件管理,NERDTree插件,ctrlp插件,vim-nerdtree-tabs插件等 .vim本来就是很强大,很方便的编辑器, ...
最新文章
- dotweb——go语言的一个微型web框架(二)启动dotweb
- 服务器安全:浏览器同源策略与跨域请求、XSS攻击原理及防御策略、如何防御CSRF攻击
- html所有页面根的对象,在django中显示来自所有用户的对象,无需登录到html页面...
- springboot pom文件添加mysql组件_SpringBoot+Mybatis 通过databaseIdProvider支持多数据库
- 客服顾问的工具箱--走出软件作坊:三五个人十来条枪 如何成为开发正规军(六)[转]...
- 背水一战 Windows 10 (55) - 控件(集合类): SemanticZoom, ISemanticZoomInformation
- 如何从Alfresco中提取Language Pack
- 分享17个网页设计中字体排版的优秀示例
- poj 2741 Colored Cubes(dfs暴力枚举)
- 【Robot Framework】字符串判断,if语句多执行条件,多执行语句
- 关于卷积,池化,前向传播,反向传播,全连接层,通道数的一些概念
- 面试官问如何优化慢 SQL ?(附两万字SQL面试题)
- 一.用matlab生成想要的分布数据——均匀分布
- 使用wagtail搭建cms的安装流程
- 便利店“三方会战”,谁是最后赢家?
- 多角度了解ABeam(德硕)技术架构
- Java 图像处理框架-Marvin
- 三、python调用打印机,打印文字
- SMTP-POP3协议简介以及使用Telnet客户端收/发邮件(163邮箱)
- NLP( 包括语音识别)
热门文章
- PowerShell-6.文件操作
- PowerShell-5.网络请求
- 设计模式-备忘录模式
- POJ1258最小生成树简单题
- hdu4882 水贪心
- 【错误记录】Android Studio 运行报错 ( There is not enough memory to perform the requested operation. )
- 【错误记录】Android 编译时技术报错 ( 注解处理器 process 方法多次调用问题 )
- 【计算机网络】传输层 : 总结 ( TCP / UDP 协议 | 寻址与端口 | UDP 协议 | TCP 协议特点 | TCP 连接释放 | TCP 流量控制 | TCP 拥塞控制 ) ★★★
- Docker常用操作命令
- NOJ——1672剪绳子(博弈)