UC故事2011/12/16 build linux servers

来源:互联网 发布:人工智能如何入门 编辑:程序博客网 时间:2024/05/16 19:25


在Redhat上编译InfoServer


1. 安装mysql

# rmp -ivh  mysql-5.0.45-7.el5.i386.rpm

[root@localhost software-repository]# rpm -ivh mysql-5.0.45-7.el5.i386.rpm
warning: mysql-5.0.45-7.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID e8562897
error: Failed dependencies:
        perl(DBI) is needed by mysql-5.0.45-7.el5.i386

serach


安装mysql
1. 安装perl-DBI-1.52-1.fc6.i386.rpm
2. 安装perl-DBD-MySQL-3.0007-1.fc6.i386.rpm
3. 安装mysql-5.0.45-7.el5.i386.rpm
4. 安装mysql-server-5.0.45-7.el5.i386.rpm
启动服务器
service mysqld start
修改root密码
mysqladmin -u root password '123456'


[root@localhost software-repository]# rpm -ivh perl-DBI-1.52-1.fc6.i386.rpm
warning: perl-DBI-1.52-1.fc6.i386.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...                ########################################### [100%]
   1:perl-DBI               ########################################### [100%]
[root@localhost software-repository]# rpm -ivh mysql-5.0.45-7.el5.i386.rpm
warning: mysql-5.0.45-7.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID e8562897
Preparing...                ########################################### [100%]
   1:mysql                  ########################################### [100%]

2. Info server

# make 

Begin: 19:11  end: 19:19


SAME ERROR AS AT OFFICE


make[2]: Leaving directory `/root/project-space/box-infoserver-trunk-20111116/src/Server/PSTN/TelephoneMeeting'
make[1]: Leaving directory `/root/project-space/box-infoserver-trunk-20111116/src/Server/InfoSvr4.2'
g++ -Wall -Wpointer-arith -pipe -D_REENTRANT -D_GNU_SOURCE -Wall -Wpointer-arith -pipe -D_REENTRANT -D_GNU_SOURCE -g -g -g -g -O3 -O3 -DRT_UNIX  -DRT_LINUX -DRT_UNIX  -DRT_LINUX -D__MYSQL__ -D_Support_Dump_ -DSNMP_SUPPORT -D__INFO_ENABLE_FLOW_CONTROL__  -DRT_DEBUG -DRT_DISABLE_ASSERTE -I../../../src/util/h -I../../../src/h -I../../../src/common/h -I../../../src/Server/InfoSvr4.2/gcc -I../../../src/Server/InfoSvr4.2/mcs -I../../../src/Server/InfoSvr4.2/sdd -I../../../src/Server/InfoSvr4.2/h -I../../../src/Server/InfoSvr4.2/application -I../../../h -I../../../src/Server/h -I../../../src/Server/common -I../../../src/Server/InfoSvr4.2/ServerInternalPdu -I../../../src/Server/InfoSvr4.2/application -I/usr/include/mysql -I../../../src/Server/messageBus -I../../../src/Server/SvrConfProxy -I../../../src/Server/PSTN/TelephoneMeeting        -c -o ../../../bin/Server/InfoServer/InfoServer.o InfoServer.cpp
g++ -Wall -Wpointer-arith -pipe -D_REENTRANT -D_GNU_SOURCE -Wall -Wpointer-arith -pipe -D_REENTRANT -D_GNU_SOURCE -g -g -g -g -O3 -O3 -DRT_UNIX  -DRT_LINUX -DRT_UNIX  -DRT_LINUX -D__MYSQL__ -D_Support_Dump_ -DSNMP_SUPPORT -D__INFO_ENABLE_FLOW_CONTROL__  -DRT_DEBUG -DRT_DISABLE_ASSERTE -I../../../src/util/h -I../../../src/h -I../../../src/common/h -I../../../src/Server/InfoSvr4.2/gcc -I../../../src/Server/InfoSvr4.2/mcs -I../../../src/Server/InfoSvr4.2/sdd -I../../../src/Server/InfoSvr4.2/h -I../../../src/Server/InfoSvr4.2/application -I../../../h -I../../../src/Server/h -I../../../src/Server/common -I../../../src/Server/InfoSvr4.2/ServerInternalPdu -I../../../src/Server/InfoSvr4.2/application -I/usr/include/mysql -I../../../src/Server/messageBus -I../../../src/Server/SvrConfProxy -I../../../src/Server/PSTN/TelephoneMeeting        -c -o ../../../bin/Server/InfoServer/InfoSvrConfigLoader.o InfoSvrConfigLoader.cpp
g++ -Wall -Wpointer-arith -pipe -D_REENTRANT -D_GNU_SOURCE -Wall -Wpointer-arith -pipe -D_REENTRANT -D_GNU_SOURCE -g -g -g -g -O3 -O3 -DRT_UNIX  -DRT_LINUX -DRT_UNIX  -DRT_LINUX -D__MYSQL__ -D_Support_Dump_ -DSNMP_SUPPORT -D__INFO_ENABLE_FLOW_CONTROL__  -DRT_DEBUG -DRT_DISABLE_ASSERTE -I../../../src/util/h -I../../../src/h -I../../../src/common/h -I../../../src/Server/InfoSvr4.2/gcc -I../../../src/Server/InfoSvr4.2/mcs -I../../../src/Server/InfoSvr4.2/sdd -I../../../src/Server/InfoSvr4.2/h -I../../../src/Server/InfoSvr4.2/application -I../../../h -I../../../src/Server/h -I../../../src/Server/common -I../../../src/Server/InfoSvr4.2/ServerInternalPdu -I../../../src/Server/InfoSvr4.2/application -I/usr/include/mysql -I../../../src/Server/messageBus -I../../../src/Server/SvrConfProxy -I../../../src/Server/PSTN/TelephoneMeeting         -o ../../../bin/InfoServer ../../../bin/Server/InfoServer/InfoServer.o ../../../bin/Server/InfoServer/InfoSvrConfigLoader.o  -ldl -lpthread -lrt -ldl -lpthread -lrt ../../../bin/libgcc.a ../../../bin/libapplication.a ../../../bin/libInfoTelMeeting.a ../../../bin/libmcs.a ../../../bin/libsdd.a ../../../bin/libsdcommon.a ../../../bin/libfilemanager.a ../../../bin/libinfosessioncommon.a ../../../bin/libSvrConfProxy.a ../../../bin/libmessagebus.a ../../../bin/libinfofilecache.a ../../../bin/libconnmgr.a ../../../bin/libdblog.a ../../../bin/libs/libdbthread.a ../../../bin/libinfoapppdu.a ../../../bin/libfilerecord.a ../../../bin/libaudiomixengine.a ../../../bin/libServerInternalPdu.a ../../../bin/libinfoapppdu.a ../../../bin/common/GcServerPdu.o ../../../bin/common/GcClientPdu/GcClientPdu.o ../../../bin/libmonitor.a  ../../../bin/libs/libaudiocodec32.a ../../../bin/libsecurity.a ../../../bin/libnetwork.a ../../../bin/libframework.a  -lmysqlclient -lz
../../../bin/libs/libdbthread.a: could not read symbols: File format not recognized
collect2: ld 返回 1
make: *** [../../../bin/InfoServer] 错误 1

3. mysql的安装目录

http://hi.baidu.com/%D7%F3%C6%B2%D7%D3%B5%CE%C5%BC/blog/item/8c8915501059544e1038c2f1.html

mysql的安装:http://linux.chinaunix.net/techdoc/database/2007/04/27/956470.shtml

从源代码开始编译安装MySQL:http://wanglq.blog.51cto.com/783560/192205


4. 再次build

主要问题:

* libdbthread.a有问题,单独build它

.a ../../../bin/libnetwork.a ../../../bin/libframework.a  -lmysqlclient -lz
../../../bin/libs/libdbthread.a: could not read symbols: File format not recognized

* libdbthread.a,对mysql的位置进行修改

* -lmysqlclient找不到,增加-L/usr/local/mysql/lib/mysql

* 最后问题:大量的编译错误:


/root/project-space/box-infoserver-trunk-20111116/src/Server/InfoSvr4.2/mcs/ChannelPort.cpp:49: undefined reference to `CInfoSvrSyncChannelInfoRequestPdu::Decode(CRtMessageBlock&)'
/root/project-space/box-infoserver-trunk-20111116/src/Server/InfoSvr4.2/mcs/ChannelPort.cpp:54: undefined reference to `CInfoSvrSyncChannelInfoRequestPdu::~CInfoSvrSyncChannelInfoRequestPdu()'
/root/project-space/box-infoserver-trunk-20111116/src/Server/InfoSvr4.2/mcs/ChannelPort.cpp:81: undefined reference to `CInfoSvrServerJoinChannelRequestPdu::CInfoSvrServerJoinChannelRequestPdu()'
/root/project-space/box-infoserver-trunk-20111116/src/Server/InfoSvr4.2/mcs/ChannelPort.cpp:82: undefined reference to `CInfoSvrServerJoinChannelRequestPdu::D