KEEP K.I.S.S.

tk's blog

新博客地址

使用 Hexo 搭建的新博客地址:https://tisyang.github.io/

欢迎访问。

ndk-build提示“系统找不到指定的路径”问题

如果是win32系统,使用ndk-build时提示出错,但是在命令行工具中看不到错误信息,进一步使用 ndk-build 2>1.txt 来重定向,发现错误信息是“系统找不到路径”,那么你可能和我遇到相同的问题了。

这个并不是因为ndk-build不在 path 路径中,而是NDK自己的问题。观察 ndk-build 命令输出详细,调用 gcc 的路径实际上并不对。

在命令中使用的是 <ndk_dir>/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86/ 路径,但实际在x86版本的NDK目录中对比,其中只有 <ndk_dir>/toolchains/arm-linux-androideabi-4.9/prebuilt/windows 目录,不是 windows-x86 ,将其重命名为 windows-x86 即可。

这可能是r11b-x86版本NDK的一个bug。

-x86目录即可。

 

这可能是r11b-x86版本NDK的一个问题。

Debian安装后的一些配置备注

由于Sabayon升级后一直有一个奇怪的locale问题,最近又重新安装了 Debian Wheezy,这里记录一下安装后需要做的一些配置工作。

1. 修改源

网上搜到修改源的方法大多都是手动编辑/etc/apt/source.list,其实有更方便的做法。打开新立得包管理器,在设置里的软件库中选择下载源即可,建议同时取消勾选other software中的CD/DVD源。

2. 安装 sudo

输入 su 切换到root,安装sudo后,添加个人用户到sudo组:adduser xxx sudo 然后注销重新登录,sudo即可用。不需要手动编辑sudo配置文件。

3. Xfce 调整双击间隔

默认Xfce窗口是支持双击标题栏最大化最小化窗口的,但是默认安装后基本感觉没有效果,这是因为默认双击间隔是250ms,太短,在设置里的鼠标中调整双击阈值为400,即可。

 

待补充...

推荐一篇文章

Notes on Programming in C

文章讲述C编程里的一些注意点,涉及命名、风格、数据结构。作者是 Rob Pike

其中关于注释、复杂度、数据驱动以及函数指针这几小节特别值得一读。

简要笔记:

注释

作者倾向于少写注释,只写必要的

  1. 代码清晰,命名良好的代码应该是自解释的
  2. 编译器不会检查注释,不能保证注释是正确的,尤其是代码已经修改而注释没有更正
  3. 注释会打乱代码的排版
  4. 注释用于解释全局变量或类型的用法,介绍不寻常或者重要的子程序,将大量计算划分小节
  5. 避免花哨的注释
  6. 给数据写注释要比算法注释有用的多
  7. 如果代码需要注释来帮助理解,那么应该考虑重写以便于理解

复杂度

作者认为大部分程序写的过于复杂源于不好的设计,但是没有讲设计而是给了6条规则

  1. 避免过早优化
  2. 在没有测定程序运行效率前,不要进行优化
  3. 高级算法在数据规模小的时候会变慢,除非确信数据规模很大,不要使用高级算法。就算 数据规模很大,首先考虑规则2
  4. 高级算法比简单算法更难实现,更容易滋生bug,使用简单算法和简单的数据结构
  5. 数据主导。使用了正确的数据结构,那么算法就很清晰明了
  6. 没有规则 6

总结起来2点:杜绝过早优化,数据主导

包含文件

包含文件不应包含已经被包含的文件

避免编译依赖和物理耦合

PS:这里介绍两个技巧

  1. 前向声明,用于避免引用整个头文件
  2. 不透明指针,在C++中常称作 Pimpl idiom,可以完全接偶接口(头文件)和 实现(源文件),修改实现可不必重新编译其他引用了模块的部分,可以用来保证二进制 兼容性(在制作动态库时很有用)。

Windows 下修改 Inkscape 和 Gimp 字体

基于Gtk+的程序运行在Windows下默认字体是很简陋的,修改方法基本是一致的,可以参照这篇文章GTK+ 程序字体的设置(被墙)。

以 Gimp 2.8.6 为例,找到程序安装目录,然后进入 ..\etc\gtk-2.0\ 目录,打开gtkrc.zh_CN(根据系统语言环境后缀名可能不同,比如繁体对应 gtkrc.zh_TW )文件,如果不存在则新建,修改内容为:

style "user-font" { 
font_name = "Microsoft YaHei 10" 
}

widget_class "*" style "user-font"

gtk-font-name="Microsoft YaHei 10"

这样就会使程序的字体变为微软雅黑。

如果不行则说明程序默认没有使用Native Window Syle,这时,打开目录下的 gtkrc 文件,将其内容修改为:

gtk-theme-name = "MS-Windows"

保存后重开程序即可。

PS: 在默认安装下,Gimp 只需前一步即可修改字体,而 Inkscape 则需要第二步才能完成字体修改。