⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 oci_sample.mk

📁 适用oracle oci接口读写数据库中的几何实体
💻 MK
字号:
#
# Example for building demo OCI programs:
#
# 1. All OCI demos:
#
#    make -f oci_sample.mk demos
#
# 2. A single OCI demo:
#
#    make -f oci_sample.mk build EXE=demo 
#    e.g. make -f oci_sample.mk build EXE=readgeom 
#
# 3. A single OCI demo with static libraries:
#
#    make -f oci_sample.mk build_static EXE=demo 
#    e.g. make -f oci_sample.mk build_static EXE=readgeom 
#
# 4. To re-generate shared library:
#
#    make -f oci_sample.mk generate_sharedlib
#
#
# NOTE: 1. ORACLE_HOME must be either:
#		   . set in the user's environment
#		   . passed in on the command line
#		   . defined in a modified version of this makefile
#
#       2. If the target platform support shared libraries (e.g. Solaris)
#          look in the platform specific documentation for information
#          about environment variables that need to be properly
#          defined (e.g. LD_LIBRARY_PATH in Solaris).
#


include $(ORACLE_HOME)/rdbms/lib/env_rdbms.mk


RDBMSLIB=$(ORACLE_HOME)/rdbms/lib/

LDFLAGS=-L$(LIBHOME) -L$(ORACLE_HOME)/rdbms/lib
LLIBPSO=`cat $(ORACLE_HOME)/rdbms/lib/psoliblist`

# directory that contain oratypes.h and other oci demo program header files
INCLUDE= -I$(ORACLE_HOME)/rdbms/demo -I$(ORACLE_HOME)/rdbms/public -
I$(ORACLE_HOME)/plsql/public -I$(ORACLE_HOME)/network/public -I.

#
CONFIG = $(ORACLE_HOME)/rdbms/lib/config.o

# module to be used for linking with non-deferred option

# flag for linking with non-deferred option (default is deferred mode)
NONDEFER=false

# libraries for linking oci programs
OCISHAREDLIBS=$(TTLIBS) $(DEF_ON) $(LLIBTHREAD)
OCISTATICLIBS=$(STATICTTLIBS) $(LLIBTHREAD)

PSOLIBLIST=$(ORACLE_HOME)/rdbms/lib/psoliblist
CLEANPSO=rm -f $(PSOLIBLIST); $(GENPSOLIB)

DOLIB=$(ORACLE_HOME)/lib/liborcaccel.a
DUMSDOLIB=$(ORACLE_HOME)/lib/liborcaccel_stub.a
REALSDOLIB=/usr/lpp/orcaccel/liborcaccel.a


LLIBSQL= -lsql
PROLDLIBS= $(LLIBSQL) $(TTLIBS)

DEMO_MAKEFILE = oci_sample.mk
 
DEMOS = readgeom writegeom 

OBJECTS=geomops.o readgeom.o writegeom.o 

OBJ1=geomops.o readgeom.o
OBJ2=writegeom.o

demos: $(DEMOS)

generate_sharedlib:
	$(SILENT)$(ECHO) "Building client shared library ..."
	$(SILENT)$(ECHO) "Calling script $$ORACLE_HOME/bin/genclntsh ..."
	$(GENCLNTSH)
	$(SILENT)$(ECHO) "The library is $$ORACLE_HOME/lib/libclntsh.so... DONE"

$(DEMOS):
	$(MAKE) -f $(DEMO_MAKEFILE) build EXE=$@ 

readgeom: $(OBJ1)

writegeom:$(OBJ2)

$(OBJ1): readgeom.c geomops.c readgeom.h geomops.h

$(OBJ2): writegeom.c writegeom.h

build: $(LIBCLNTSH) $(OBJECTS)
	$(ECHODO) $(CC) $(LDFLAGS) -o readgeom $(OBJ1) $(OCISHAREDLIBS)
	$(ECHODO) $(CC) $(LDFLAGS) -o writegeom $(OBJ2) $(OCISHAREDLIBS)

build_static: $(OBJECTS)
	$(ECHODO) $(CC) $(LDFLAGS) -o readgeom $(OBJ1) $(SSDBED) $(DEF_ON) \
	$(OCISTATICLIBS)
	$(ECHODO) $(CC) $(LDFLAGS) -o writegeom $(OBJ2) $(SSDBED) $(DEF_ON) \
	$(OCISTATICLIBS)
clean:
	$(RM) -f $(DEMOS) *.o *.so


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -