QT 学习笔记

  1. The Q_OBJECT macro at the beginning of the class definition is necessary for all classes that define signals or slots.
  2. Classes that use the Q_OBJECT macro must have moc run on them. This isn’t a problem because qmake automatically adds the necessary rules to the makefile. But if you forget to regenerate your makefile using qmake and moc isn’t run, the linker will complain that some functions are declared but not implemented.

配置apache让用户登录

安装配置svn时得到了启发,当用户访问某页面时,如果要让用户输入用户名和密码,可以配置如下:

<Location /XXX>
  AuthType Basic
  AuthName "AUTH NAME"
  AuthUserFile /etc/auth-file
  Require valid-user
</Location>

auth-file可以通过htpasswd生成, 也可以通过这个命令增加用户:

htpasswd -cm /etc/svn-auth-file gene

htpasswd -m /etc/svn-auth-file pgj

我的svn在httpd.conf里的配置如下:

<Location /svn>
  DAV svn
  SVNPath /var/svn
  AuthType Basic
  AuthName "Subversion repository"
  AuthUserFile /etc/svn-auth-file
  Require valid-user
</Location>

启动apache出错 undefined symbol:sqlite3_open_v2

# service httpd start
Starting httpd: httpd: Syntax error on line 206 of /etc/httpd/conf/httpd.conf: Cannot load /usr/lib/httpd/modules/mod_dav_svn.so into server: /usr/local/svn/lib/libsvn_subr-1.so.0: undefined symbol: sqlite3_open_v2
                                                                                                [FAILED]

安装svn后,启动apache时,出现了上面的错误,

在网上找好久没找到答案,后来把 sqlite lib的路径加入到ld.so.config就行了,

# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf

所以在ld.so.conf.d目录下新建了一个文件sqlite.conf

内容为

/usr/local/sqlite/lib

#ldconfig

# service httpd start
Starting httpd:                                            [  OK  ]

终于重启成功了,搞了好久啊,记录下来,希望对别人有用。