| 环境:VM+Solaris9 for x86 软件:httpd-2.0.52 mysql-4.0.16 php-4.3.9 Discuz-2.2F 参考的文档有: http://bbs.chinaunix.net/forum/viewtopic.php?t=343241&highlight=llzqq http://bbs.chinaunix.net/forum/viewtopic.php?t=43778 http://bbs.chinaunix.net/forum/viewtopic.php?t=329698 http://bbs.chinaunix.net/forum/viewtopic.php?t=129215&highlight=sql_lex.cc http://bbs.chinaunix.net/forum/viewtopic.php?t=265341 http://bbs.chinaunix.net/forum/viewtopic.php?t=193717 http://bbs.chinaunix.net/forum/6/040921/411198.html 所需安装的软件包括: bison-1.875d perl-5.8.5 ncurse-5.4 autoconf-2.59 automake-1.9 make-3.80 zlib-1.2.1 gcc-3.4.1(libgcc-3.4.1在这其中) 上述软件可以从http://www.sunfreeware.com/下载 一、修改路径 vi /etc/profile 在最后写入: PATH=$PATH:/usr/ccs/bin:/usr/local/lib:/usr/local/bin:/usr/lib:/usr/local/httpd/bin:/usr/local/mysql/share/mysql:/usr/local/mysql/bin CC=gcc CFLAGS="-O6" CXX=gcc CXXFLAGS="-O6 -felide-constructors -fno-exceptions -fno-rtti" 保存退出 执行. /etc/profile 使修改立即生效。 二、编译MYSQL useradd mysql groupadd mysql #./configure --prefix=/usr/local/mysql --with-mysqld-user=mysql --with-charset=gb2312 --with-extra-charsets=all --with-unix-socket-path=/usr/local/mysql/var/mysql.sock 如在编译过程中出现: In file included from /usr/include/sys/reg.h:13, from /usr/include/sys/regset.h:24, from /usr/include/sys/ucontext.h:21, from /usr/local/lib/gcc/i386-pc-solaris2.9/3.4.0/include/sys/signal.h:249, from /usr/include/signal.h:27, from mysql.cc:40: /usr/include/ia32/sys/reg.h:300: error: `upad128_t' does not name a type /usr/include/ia32/sys/reg.h:301: error: `upad128_t' does not name a type /usr/include/ia32/sys/reg.h:331: error: `upad128_t' does not name a type make[2]: *** [mysql.o] Error 1 make[2]: Leaving directory `/export/home/z3j/mysql-4.0.18/client' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/export/home/z3j/mysql-4.0.18' make: *** [all] Error 2 请修改/usr/include/ia32/sys/reg.h 在第245行 写入 typedef union { long _q; uint32_t _l[4]; } upad128_t; 如果出现: sql_lex.cc: In function `void lex_init()': sql_lex.cc:85: `symbols' undeclared (first use this function) sql_lex.cc:85: (Each undeclared identifier is reported only once sql_lex.cc:85: for each function it appears in.) sql_lex.cc:87: `sql_functions' undeclared (first use this function) sql_lex.cc: In function `int find_keyword(LEX *, unsigned int, bool)': sql_lex.cc:171: implicit declaration of function `int get_hash_symbol(...)' sql_lex.cc:171: initialization to `SYMBOL *' from `int' lacks a cast 解决办法: cd sql make gen_lex_hash ./gen_lex_hash > lex_hash.h (如果提示xx文件找不到,就把/usr/local/lib/的xx文件cp到/usr/lib下) make # cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf # /usr/local/mysql/bin/mysql_install_db # chmod -R 1777 /usr/local/mysql/var # chown -R mysql /usr/local/mysql/ # chgrp -R mysql /usr/local/mysql/ 启动MYSQL: # /usr/local/mysql/share/mysql/mysql.server start # /usr/local/mysql/bin/mysqladmin -u root password 123456 # cp /usr/local/lib/libncurses.so.5 /usr/local/mysql/lib/mysql # /usr/local/mysql/bin/mysql -uroot -p123456 三、编译APACHE #./configure --prefix=/usr/local/httpd --enable-track-vars --enable-cgi --with-config-file-path=/usr/local/httpd/conf --with-charset=gb2312 --with-extra-charsets=all --enable-so;make;make install 修改配置文件: vi /usr/local/httpd/conf/httpd.conf 将Group #-1改为Group nobody 找到#AddType application/x-tar .tgz 这行,在下面加一行。前面不要加#号。 AddType application/x-httpd-php .php 找到下面一行在后面加上index.php,这表示网站的默认页也能够为index.php DirectoryIndex index.html index.html.var index.php 在行AddDefaultCharset ISO-8859-1下加入: AddDefaultCharset GB2312 并注释掉AddDefaultCharset ISO-8859-1 四、编译PHP #./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/httpd/bin/apxs --enable-track-vars --enable-force-cgi-redirect --with-config-file-path=/usr/local/php/etc;make;make install vi /usr/local/httpd/htdocs/index.php 写入:<? phpinfo(); ?> #chmod 755 index.php #apachectl start 然后在IE中输入ip,测试一下是否成功了。 五、安装Discuz论坛 将下载下来的包中的Discuz!目录下的文件考到APACHE的网页根目录 在mysql中创建一个数据库bbs: mysql>create database bbs; 重启一下APACHE: #apachectl restart 在IE地址栏输入:http://ip/install.php 按提示操作: # chmod 707 config.php # chmod 777 ./tem* # chmod 777 ./for* # chmod 777 ./foru*/templ* # chmod 777 ./foru*/cache 接下来自己看提示操作就OK了。 最后删除网页根目录下的install.php 这是我的第一个准原创吧(参考了一下DX们的贴子,然后总结出来的),大家鼓励一下吧!:) |








