生活随笔
收集整理的這篇文章主要介紹了
ICE 迁移64位安装问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
昨天手賤,在apt-get install 后有一大堆,上百個安裝包not upgrade, 發現有提示apt-get autoremove,猶豫了很久后還是忍不住執行了autoremove;這個命令是帶著auto的,想著應該沒事。到網上搜羅下autoremove,嚇我一跳。。。
然后這個debian,堅如磐石,從沒出過任何問題的OS,突然沒網絡了,ifconfig下;eth0的網卡沒了,折騰了一兩個小時也沒恢復,想想應該與我autoremove相關;
哎,手賤。。。
然后,幸運的發現我所有的與編程相關的都是獨立放在一塊虛擬硬盤上的,謝天謝地,還好還好。
正好也是我把開發環境轉到64位的機會吧,然后把這個掛到debian64的機器下;重新部署安裝ice環境;
1 openssl的安裝
sudo apt-get install libssl-dev
這個命令后,頭文件部署最新的,會報BN_開頭的函數未定義;
如果使用openssl源碼編譯安裝,但是默認編譯生成的是靜態庫.a的(libcrypto.a, libssl.a),ice需要.so動態庫;
修改了幾次config文件沒生效,就用上面的apt-get命令得到了動態庫
git clone --recursive https://github.com/openssl/openssl.git
cd ./openssl
make
sudo make install
#opensssl?
sudo apt-get install libssl-dev
sudo cp /usr/local/ssl/include/openssl/ /usr/local/include/ -r
#bzip2 安裝
sudo apt-get install ?libbz2-dev
sudo apt-get install libexpat1-dev
sudo apt-get install liblmdb-dev
#for php,?
sudo apt-get install python-dev
ICE 3.7現在只支持php5.6, 對php7.0有幾個函數參數不一致,還不能編譯
php7.0與ICE3.7編譯錯誤如下
[cpp] view plain
copy berli@server:~/Dev/Ice/ice/php$?make??making?all?in?src??make[1]:?Entering?directory?'/home/berli/Dev/Ice/ice/php/src'??making?all?in?IcePHP??make[2]:?Entering?directory?'/home/berli/Dev/Ice/ice/php/src/IcePHP'??g++?-c?-I.??-I../../../cpp/include?-I/usr/local/include/php?-I/usr/local/include/php/main?-I/usr/local/include/php/TSRM?-I/usr/local/include/php/Zend?-I/usr/local/include/php/ext?-I/usr/local/include/php/ext/date/lib?-m64?-fvisibility=hidden?-Wall?-Werror?-pthread?-fPIC?-g?Communicator.cpp??In?file?included?from?/usr/local/include/php/Zend/zend.h:39:0,???????????????????from?/usr/local/include/php/main/php.h:35,???????????????????from?./Config.h:53,???????????????????from?./Communicator.h:13,???????????????????from?Communicator.cpp:10:??./Util.h:?In?destructor?‘IcePHP::AutoDestroy::~AutoDestroy()’:??/usr/local/include/php/Zend/zend_variables.h:122:76:?error:?cannot?convert?‘zval**?{aka?_zval_struct**}’?to?‘zval*?{aka?_zval_struct*}’?for?argument?‘1’?to?‘void?_zval_ptr_dtor(zval*)’???#define?zval_ptr_dtor(zval_ptr)?_zval_ptr_dtor((zval_ptr)?ZEND_FILE_LINE_CC)??????????????????????????????????????????????????????????????????????????????^??./Util.h:157:30:?note:?in?expansion?of?macro?‘zval_ptr_dtor’???????~AutoDestroy()?{?if(_zv)?zval_ptr_dtor(&_zv);?}????????????????????????????????^??Communicator.cpp:?At?global?scope:??Communicator.cpp:181:8:?error:?‘zend_object_value’?does?not?name?a?type???static?zend_object_value?handleAlloc(zend_class_entry*?TSRMLS_DC);??????????^??Communicator.cpp:183:8:?error:?‘zend_object_value’?does?not?name?a?type???static?zend_object_value?handleClone(zval*?TSRMLS_DC);??????????^??Communicator.cpp:?In?function?‘void?zim_Ice_Communicator_proxyToString(zend_execute_data*,?zval*)’:??Communicator.cpp:285:10:?error:?‘RETURN_STRINGL’?was?not?declared?in?this?scope???????????(RETURN_STRINGL)(STRCAST(str.c_str()),?static_cast<int>(str.length()),?1);????????????^??Communicator.cpp:?In?function?‘void?zim_Ice_Communicator_identityToString(zend_execute_data*,?zval*)’:??Communicator.cpp:418:10:?error:?‘RETURN_STRINGL’?was?not?declared?in?this?scope???????????(RETURN_STRINGL)(STRCAST(str.c_str()),?static_cast<int>(str.length()),?1);????????????^??Communicator.cpp:?At?global?scope:??Communicator.cpp:768:8:?error:?‘zend_object_value’?does?not?name?a?type???static?zend_object_value??????????^??Communicator.cpp:797:8:?error:?‘zend_object_value’?does?not?name?a?type???static?zend_object_value??????????^??In?file?included?from?/usr/local/include/php/main/php.h:39:0,???????????????????from?./Config.h:53,???????????????????from?./Communicator.h:13,???????????????????from?Communicator.cpp:10:??Communicator.cpp:?In?function?‘void?zif_Ice_initialize(zend_execute_data*,?zval*)’:??/usr/local/include/php/Zend/zend_API.h:258:59:?error:?cannot?convert?‘zval***?{aka?_zval_struct***}’?to?‘zval*?{aka?_zval_struct*}’?for?argument?‘2’?to?‘int?_zend_get_parameters_array_ex(int,?zval*)’????_zend_get_parameters_array_ex(param_count,?argument_array)?????????????????????????????????????????????????????????????^??Communicator.cpp:901:8:?note:?in?expansion?of?macro?‘zend_get_parameters_array_ex’???????if(zend_get_parameters_array_ex(ZEND_NUM_ARGS(),?args)?==?FAILURE)??????????^??Communicator.cpp:923:29:?error:?‘Z_TYPE_PP’?was?not?declared?in?this?scope???????????if(Z_TYPE_PP(args[0])?==?IS_ARRAY)???????????????????????????????^??Communicator.cpp:933:73:?error:?‘Z_OBJCE_PP’?was?not?declared?in?this?scope???????????????????if(Z_TYPE_PP(args[1])?!=?IS_OBJECT?||?Z_OBJCE_PP(args[1])?!=?initClass)???????????????????????????????????????????????????????????????????????????^??Communicator.cpp:942:70:?error:?‘Z_OBJCE_PP’?was?not?declared?in?this?scope???????????else?if(Z_TYPE_PP(args[0])?==?IS_OBJECT?&&?Z_OBJCE_PP(args[0])?==?initClass)????????????????????????????????????????????????????????????????????????^??Communicator.cpp:965:116:?error:?cannot?convert?‘char*’?to?‘zend_string*?{aka?_zend_string*}’?for?argument?‘2’?to?‘zval*?zend_hash_find(const?HashTable*,?zend_string*)’???????????if(zend_hash_find(Z_OBJPROP_P(zvinit),?STRCAST(member.c_str()),?static_cast<uint>(member.size()?+?1),?&data)?==?SUCCESS)??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????^??Communicator.cpp:975:116:?error:?cannot?convert?‘char*’?to?‘zend_string*?{aka?_zend_string*}’?for?argument?‘2’?to?‘zval*?zend_hash_find(const?HashTable*,?zend_string*)’???????????if(zend_hash_find(Z_OBJPROP_P(zvinit),?STRCAST(member.c_str()),?static_cast<uint>(member.size()?+?1),?&data)?==?SUCCESS)??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????^??Communicator.cpp:993:37:?error:?‘PZVAL_IS_REF’?was?not?declared?in?this?scope???????if(zvargs?&&?PZVAL_IS_REF(zvargs))???????????????????????????????????????^??Communicator.cpp:?In?function?‘bool?IcePHP::communicatorInit()’:??Communicator.cpp:1421:24:?error:?‘handleAlloc’?was?not?declared?in?this?scope???????ce.create_object?=?handleAlloc;??????????????????????????^??Communicator.cpp:1424:27:?error:?‘handleClone’?was?not?declared?in?this?scope???????_handlers.clone_obj?=?handleClone;?????????????????????????????^??Communicator.cpp:?In?member?function?‘virtual?void?IcePHP::CommunicatorInfoI::getZval(zval*)’:??Communicator.cpp:1564:17:?error:?lvalue?required?as?left?operand?of?assignment???????Z_TYPE_P(z)?=?IS_OBJECT;???????????????????^??Communicator.cpp:?In?member?function?‘virtual?void?IcePHP::CommunicatorInfoI::addRef()’:??Communicator.cpp:1573:20:?error:?‘const?zend_object_handlers’?has?no?member?named?‘add_ref’???????Z_OBJ_HT_P(p)->add_ref(p?TSRMLS_CC);??????????????????????^??Communicator.cpp:?In?member?function?‘virtual?void?IcePHP::CommunicatorInfoI::decRef()’:??Communicator.cpp:1580:19:?error:?‘const?zend_object_handlers’?has?no?member?named?‘del_ref’???????Z_OBJ_HT(zv)->del_ref(p?TSRMLS_CC);?????????????????????^??Communicator.cpp:?In?member?function?‘bool?IcePHP::CommunicatorInfoI::findObjectFactory(const?string&,?zval*)’:??Communicator.cpp:1636:22:?error:?‘INIT_PZVAL’?was?not?declared?in?this?scope???????????INIT_PZVAL(zv);????????????????????????^??Communicator.cpp:?In?member?function?‘bool?IcePHP::CommunicatorInfoI::findValueFactory(const?string&,?zval*)’:??Communicator.cpp:1651:22:?error:?‘INIT_PZVAL’?was?not?declared?in?this?scope???????????INIT_PZVAL(zv);????????????????????????^??In?file?included?from?/usr/local/include/php/Zend/zend.h:39:0,???????????????????from?/usr/local/include/php/main/php.h:35,???????????????????from?./Config.h:53,???????????????????from?./Communicator.h:13,???????????????????from?Communicator.cpp:10:??Communicator.cpp:?In?member?function?‘void?IcePHP::CommunicatorInfoI::destroyObjectFactories()’:??/usr/local/include/php/Zend/zend_variables.h:122:76:?error:?cannot?convert?‘_zval_struct**’?to?‘zval*?{aka?_zval_struct*}’?for?argument?‘1’?to?‘void?_zval_ptr_dtor(zval*)’???#define?zval_ptr_dtor(zval_ptr)?_zval_ptr_dtor((zval_ptr)?ZEND_FILE_LINE_CC)??????????????????????????????????????????????????????????????????????????????^??Communicator.cpp:1669:9:?note:?in?expansion?of?macro?‘zval_ptr_dtor’???????????zval_ptr_dtor(&p->second);???????????^??Communicator.cpp:?In?member?function?‘void?IcePHP::CommunicatorInfoI::destroyValueFactories()’:??/usr/local/include/php/Zend/zend_variables.h:122:76:?error:?cannot?convert?‘_zval_struct**’?to?‘zval*?{aka?_zval_struct*}’?for?argument?‘1’?to?‘void?_zval_ptr_dtor(zval*)’???#define?zval_ptr_dtor(zval_ptr)?_zval_ptr_dtor((zval_ptr)?ZEND_FILE_LINE_CC)??????????????????????????????????????????????????????????????????????????????^??Communicator.cpp:1679:9:?note:?in?expansion?of?macro?‘zval_ptr_dtor’???????????zval_ptr_dtor(&p->second);???????????^??Communicator.cpp:?In?member?function?‘virtual?Ice::ObjectPtr?IcePHP::ObjectFactoryI::create(const?string&)’:??Communicator.cpp:1744:26:?error:?‘MAKE_STD_ZVAL’?was?not?declared?in?this?scope???????????MAKE_STD_ZVAL(arg);????????????????????????????^??Communicator.cpp:1745:10:?error:?‘ZVAL_STRINGL’?was?not?declared?in?this?scope???????????(ZVAL_STRINGL)(arg,?STRCAST(id.c_str()),?static_cast<int>(id.length()),?1);????????????^??Communicator.cpp:1752:128:?error:?cannot?convert?‘zval**?{aka?_zval_struct**}’?to?‘zval*?{aka?_zval_struct*}’?for?argument?‘1’?to?‘zval*?zend_call_method(zval*,?zend_class_entry*,?zend_function**,?const?char*,?size_t,?zval*,?int,?zval*,?zval*)’???????????????zend_call_method(&factory,?0,?0,?const_cast<char*>(func),?static_cast<int>(strlen(func)),?&obj,?1,?arg,?0?TSRMLS_CC);??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????^??In?file?included?from?/usr/local/include/php/Zend/zend.h:39:0,???????????????????from?/usr/local/include/php/main/php.h:35,???????????????????from?./Config.h:53,???????????????????from?./Communicator.h:13,???????????????????from?Communicator.cpp:10:??/usr/local/include/php/Zend/zend_variables.h:122:76:?error:?cannot?convert?‘zval**?{aka?_zval_struct**}’?to?‘zval*?{aka?_zval_struct*}’?for?argument?‘1’?to?‘void?_zval_ptr_dtor(zval*)’???#define?zval_ptr_dtor(zval_ptr)?_zval_ptr_dtor((zval_ptr)?ZEND_FILE_LINE_CC)??????????????????????????????????????????????????????????????????????????????^??Communicator.cpp:1760:9:?note:?in?expansion?of?macro?‘zval_ptr_dtor’???????????zval_ptr_dtor(&arg);???????????^??Communicator.cpp:1792:22:?error:?‘MAKE_STD_ZVAL’?was?not?declared?in?this?scope???????MAKE_STD_ZVAL(obj);????????????????????????^??Communicator.cpp:?At?global?scope:??Communicator.cpp:786:1:?error:?‘void?handleFreeStorage(void*)’?defined?but?not?used?[-Werror=unused-function]???handleFreeStorage(void*?p?TSRMLS_DC)???^??cc1plus:?all?warnings?being?treated?as?errors??../../config/Make.rules.php:161:?recipe?for?target?'Communicator.o'?failed??make[2]:?***?[Communicator.o]?Error?1??make[2]:?Leaving?directory?'/home/berli/Dev/Ice/ice/php/src/IcePHP'??Makefile:17:?recipe?for?target?'all'?failed??make[1]:?***?[all]?Error?1??make[1]:?Leaving?directory?'/home/berli/Dev/Ice/ice/php/src'??Makefile:34:?recipe?for?target?'all'?failed??make:?***?[all]?Error?1?? http://prdownloads.sourceforge.net/mcpp/mcpp-2.7.2.tar.gz?download
tar xvf mcpp-2.7.2.tar.gz ?
? cd mcpp-2.7.2 ?
? patch -p0 < ../mcpp/patch.mcpp.2.7.2 ?
? ./configure CFLAGS=-fPIC --enable-mcpplib --disable-shared ?
? make && make install ?
#2) ?安裝BerkeleyDB ?
? tar db-5.3.21.NC.tar.gz ?
? cd db-5.3.21.NC ?
? patch -p0 < ../db/patch.db.5.3.21 ?
? cd build_unix ?
? ../dist/configure --enable-cxx ?
? make && make install ?
版權聲明:架構 ICE 微服務 討論群【469331966】 ; 本文為博主原創文章,未經博主允許不得轉載。
來源:http://blog.csdn.net/chary8088/article/details/50414577
總結
以上是生活随笔為你收集整理的ICE 迁移64位安装问题的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。