软硬件使用

github克隆项目中的子模块submodule时遇到的问题

GitHub真是个开源大宝库,不只能学习代码,还能学习git的使用!

最近在研究Off-the-Record-iOS项目(https://github.com/chrisballinger/Off-the-Record-iOS)时,学习实践了git submodule的用法!

这个项目中有一个Submodules文件夹,包含了该项目所引用到的其他GitHub上的开源项目,最开始没注意到,直接Download ZIP拿下来的,发现XCode项目中一堆红色文件名,才发现原来还有很多依赖项目,仔细看了一下还挺不少,于是果断放弃手动挨个下载…

搜索了一下,发现项目的issue #87有人问到了类似的问题:https://github.com/chrisballinger/Off-the-Record-iOS/issues/87,按照下面的回答,重新git clone了项目,并使用git submodule init && git submodule update(1.6以后版本也可以直接用git clone –recursive代替)来更新项目中的依赖子模块,更了前几个之后又出现了新的错误:

Submodule path ‘Submodules/DAKeyboardControl’: checked out ‘5352d1ff2d1131d974d94406ed8fcf8eb068aa72’
Cloning into ‘Submodules/LibOrange’…
Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
Clone of ‘git@github.com:ChatSecure/LibOrange.git’ into submodule path ‘Submodules/LibOrange’ failed
Continue reading…

DD-WRT使用DNSMasq时设置静态DNS服务器的方法

几个月前为了能让路由器支持自定义DDNS服务,于是给自己的Buffalo刷了DD-WRT的第三方固件(Buffalo自带固件中也有DDNS,但是那几个服务提供商现在不是倒了就是转提供付费服务了…),版本:DD-WRT v24-sp2 (08/07/10) std。DDNS倒是支持了,但最近想修改路由器DHCP给客户端的DNS解析服务器地址却发现不那么管用了,一番折腾后,发现原因如下:
Continue reading…

使用Uncrustify强化Xcode的源代码自动格式化功能

Xcode的源代码自动格式化比起Eclipse和Visual Studio(尤其是再挂上Visual Assist X)来说可以说是比较弱智,除了Structure里的简单Re-Indent外就没有什么能美化代码格式的方法了,今天由于实在忍受不了默认的大括号位置,决定找找有没有能代码格式美化的方法。

首先,看了下Xcode的偏好设置,果然没有像Eclipse那样自带设置代码格式的选项,于是开始查找有没有像AStyle之类的外挂工具能整合进Xcode用的,最后,幸运的发现了这个叫Uncrustify的工具,看网上很多人提到用这个配合Xcode进行源代码格式化处理。 Continue reading…

在Windows下删除Mac系统硬盘中的200mb EFI分区

把一块曾经装过Mac系统的硬盘挂到Win上用,在设备管理中可以删除默认200mb EFI分区以外的其他分区,虽然这200mb也不算多,但看着还是别扭,查了下发现可以通过如下操作进行删除

打开cmd命令行,运行命令diskpart,进入提示符后先执行list disk,然后看下显示出得列表中哪个编号的硬盘是这个包含EFI分区的,然后执行 select disk N,把N替换为刚才查到的对应磁盘的索引号,选中磁盘后,执行clean,清除掉整个磁盘的分区,然后再次打开磁盘管理工具,会提示进行初始化操作,选MBR还是GPT,选好后就可以使用完整硬盘空间了!

修复由于误改系统盘权限导致的白苹果Mac无法启动的问题

由于一次误改Mac系统盘根目录权限,导致重启时一直停在灰苹果界面,虽然前面的“转菊花”可以通过,但是始终不能看到桌面,解决方法如下:

按照Apple说明,开机时按Command+R进入修复模式,打开磁盘工具,修复了系统盘的权限和错误,以为就可以了,结果发现重启后问题依旧!再次查找资料, Continue reading…

使用StartSSL免费SSL证书为SubversionEdge添加受信任的https访问

以前搭建SVN服务器时一直是用纯手动添加svnserve服务命令行的方式做的,最近发现CollabNet推出了一款叫做SubversionEdge的整合SVN服务器一键安装程序,试了一下还是很方便的,自带一个web方式的管理界面,查日志啊,创建资源库之类的操作都可以以可视化的方式进行,很是方便!

SubversionEdge默认安装的是http方式的SVN访问方式,当然也包含https方式访问,为了提高网络传输安全性,准备尝试一下带SSL的http访问方式,在设置中勾上https访问方式直接重启就可以了,但是浏览器访问的时候会提示SSL证书错误,这是因为SubversionEdge的https使用的是自带默认的SSL证书,域名和自己架设的对不上号,当然就证书错误了,下面要做的就是申请一个正式的SSL证书修正这个错误!

Continue reading…

Win7 Win8的默认共享C$之类无法访问的解决方法

今天突然发现家里的两台电脑(一台Win7 64bit Ultimate,一台Win8 64bit Pro)互相之间都不能通过默认共享,如C$, D$之类进行访问了,普通UNC链接后会提示输入用户名和密码,接着输入管理员账密后只可访问一般共享,地址栏中输入默认共享地址C$后会一直提示输入账密,取消后提示无权访问!

以前在XP时代一直使用这种管理员账密配合默认共享的方式管理远程电脑的文件,很是方便!于是查了万能的互联网,找到了个应该算是比较完美的解决方法,用注册表编辑器regedit在如下位置加入如下键值:

Continue reading…

EDUP EP-N8513 (RTL8188CUS芯片)在Ubuntu 12.10下的wifi不能连接问题解决方法

EDUP EP-N8513这款USB微型无线网卡在我刚装上的64位Ubuntu 12.10下虽然能被系统识别出来,但是并不能正常连接无线AP,具体表现为可以看到AP列表,尝试连接后不停的询问密码,即使输入正确的密码也会反复不断的提示输入密码(据说如果把热点的密码去掉,完全Open的话还是可以连上的,但这么解决岂不是太不靠谱了)。

导致这问题的原因是系统自带的RTL8192cu驱动对这个芯片的兼容性不是非常好,所以还是得去Realtek官方拿驱动源码来现编译安装:http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=48&PFid=48&Level=5&Conn=4&DownTypeID=3&GetDown=false&Downloads=true#RTL8192CU 下载这个linux用的7m多的zip:RTL8192xC_USB_linux_v3.4.4_4749.20121105.zip

在开工之前可以先用lshw -c network命令检查一下无线网卡是不是被识别为RTL8192cu,理论上只要被识别为这个型号的设备都可以用本文的方法解决连接问题。

Continue reading…

我遇到的An error occurred uploading to the itunes store问题

最近一次更新App版本到itunes时遇到了An error occurred uploading to the itunes store,用的是XCode自带的Organizer做的归档上传操作,提示这个问题后存档被归为validating失败,感觉很奇怪,于是手动validate了一次,顺利pass,没有任何问题!

然后开始怀疑是网络问题,retry了3、4次,问题依旧,看来不是偶然,于是开始google,发现遇到同样问题的人还真是不少!

问题的根源就是XCode需要的Java环境出现了问题,网上找到的解决方案是这样:

cd /System/Library/Frameworks/JavaVM.framework/Versions
sudo ln -s CurrentJDK /System/Library/Frameworks/JavaVM.framework/Versions/1.5
sudo ln -s CurrentJDK /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0

试了一下,问题依旧!
Continue reading…