Search Suggest

CORBAR




Như đã giới thiệu có hai cách để làm ứng dụng client-server đó là XML-RPCSOAP, chúng đều dựa vào cơ chế RPC và đóng gói/phân tích XML.
Trong bài viết này giới thiệu một phương pháp hoàn toàn khác biệt gọi là CORBAR.
Dưới đây là bảng so sánh giữa Web Services (XML-RPC, SOAP) với CORBAR:
Xem chi tiết tại đây.

Để build một hệ thống client-server chúng ta sử dụng thư viện omniORB.

1. Build omniORB
Thư viện phụ thuộc:
- openssl

Build omniORB-4.2.0 for host:
 yum install openssl-devel  
yum install python-devel

./configure --prefix=/path/to/install

make
make install


Build omniORB-4.2.0 for board:
 export PATH=$PATH:/opt/FriendlyARM/toolschain/4.4.3/bin   
export CROSS=arm-none-linux-gnueabi-
export HOST=arm-none-linux-gnueabi

DEPEND_LIB_DIR=/path/to/dependent/install
export CFLAGS=-I${DEPEND_LIB_DIR}/include
export CPPFLAGS=-I${DEPEND_LIB_DIR}/include
export LDFLAGS=-L${DEPEND_LIB_DIR}/lib
export PKG_CONFIG_PATH=${DEPEND_LIB_DIR}/lib/pkgconfig
export LD_LIBRARY_PATH=${DEPEND_LIB_DIR}/lib
export PATH=$PATH:${DEPEND_LIB_DIR}/bin:${DEPEND_LIB_DIR}/sbin

./configure --prefix=$PREFIX --host=${HOST} --build=x86_64-linux-gnu \
CC=${CROSS}gcc \
CXX=${CROSS}g++

"build cccp, cxx, omkdepend for host"
make CC=gcc -C src/tool/omniidl/cxx/cccp
make CXX=g++ -C src/tool/omniidl/cxx
make CC=gcc -C src/tool/omkdepend


"There are some small changes required in the omniORB build system:
Edit dir.mk file in following directories:"
src/appl/omniMapper/dir.mk
src/appl/omniNames/dir.mk
src/appl/utils/catior/dir.mk
src/appl/utils/convertior/dir.mk
src/appl/utils/genior/dir.mk
src/appl/utils/nameclt/dir.mk

@(libs="$(CORBA_LIB_NODYN)"; $(CXXExecutable))
==> @(libs="$(CORBA_LIB_NODYN) -lstdc++"; $(CXXExecutable))


"cross"
make
make install



































Đăng nhận xét