Hello, to be sure I understand properly the issue: you say that the value of the LIBS from Makefile of the module is inherited when compiling the internal library?
Cheers, Daniel On 11/01/2017 04:21, Patrick wrote: > I added a C++ module to kamalio at some point, and now I am trying to > integrate that module with another C++ internal library, but I'm > getting all sorts of headaches when trying to compile. > > The latest problem is during the "make install" part of the build - it > seems like the objects from the module are "infecting" the link line > of the internal library it's dependent on. > > Here is the Makefile for the module. At the time, the only way I > figured to link in the C++ object was adding them to the LIBS. Now, i > think this interferes with the 'make install' dependencies. > > Any thoughs on how to do this properly would be great! > > Thanks > > > *_Module Makefile_* > > # > # db_cassandra module makefile > # > # > # WARNING: do not run this directly, it should be run by the master > Makefile > > include ../../Makefile.defs > > CXX=g++ > LD=g++ > auto_gen= > NAME=db_arl.so > > ifeq ($(CROSS_COMPILE),) > CURL_BUILDER=$(shell \ > if pkg-config --exists libcurl; then \ > echo 'pkg-config libcurl'; \ > else \ > which curl-config; \ > fi) > endif > > DEFS+=-DKAMAILIO_MOD_INTERFACE -DRTC_COMMON_TRACE > *LIBS += db_arl_base.o jsoncpp.o*-lcurl -pthread > > CXXFLAGS=$(CFLAGS:-Wno-deprecated option=) > CXXFLAGS+= -Wno-write-strings -Wno-deprecated -Wno-unused-function > -Wno-sign-compare -Wno-strict-aliasing > CXXFLAGS+= -I ${COL_LOCAL_BUILDS_ROOT}/ExternalLibs/boost/V1.60.0_27/ > CXXFLAGS+= -I ./jsoncpp-dist/ > > SERLIBPATH=../../lib > SER_LIBS+=$(SERLIBPATH)/srdb2/srdb2 > SER_LIBS+=$(SERLIBPATH)/srdb1/srdb1 > *SER_LIBS+=$(SERLIBPATH)/rtctrace/rtctrace* > > include ../../Makefile.modules > > jsoncpp.o: jsoncpp-dist/jsoncpp.cpp > @echo COL_LOCAL_BUILDS_ROOT=${COL_LOCAL_BUILDS_ROOT} > @echo "Compiling $<" > $(CXX) $(CXXFLAGS) $(CFLAGS) $(C_DEFS) $(DEFS) -c $< -o $@ > > db_arl_base.o: db_arl_base.cpp db_arl_base.h > @echo COL_LOCAL_BUILDS_ROOT=${COL_LOCAL_BUILDS_ROOT} > @echo "Compiling $<" > $(CXX) $(CXXFLAGS) $(CFLAGS) $(C_DEFS) $(DEFS) -c $< -o $@ > > db_arl.so: db_arl_base.o jsoncpp.o > > > During 'make install' the objects in *red*have no business in the link > line for the internal library > /opt/rh/devtoolset-4/root/usr/bin/g++ -fPIC -DPIC -g -funroll-loops > -Wcast-align -m64 -minline-all-stringops -falign-loops > -ftree-vectorize -fno-strict-overflow -mtune=opteron -Wall > -I/home/pshea/_localbuilds/RTC/Common/2.0.0_247//Applications_rhel6_x64_dts4_pic/include > -DNAME='"kamailio"' -DVERSION='"4.2.4"' -DARCH='"x86_64"' > -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 4.4.7"' > -D__CPU_x86_64 -D__OS_linux -DSER_VER=4002004 > -DCFG_DIR='"/usr/local/etc/kamailio/"' -DPKG_MALLOC -DSHM_MEM > -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE > -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER > -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DF_MALLOC -DDBG_F_MALLOC > -DMEM_JOIN_FREE -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS > -DMALLOC_STATS -DWITH_AS_SUPPORT -DFAST_LOCK -DADAPTIVE_WAIT > -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 > -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL > -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM > -DHAVE_SCHED_SETSCHEDULER -DUSE_RAW_SOCKS -DHAVE_EPOLL -DHAVE_SIGIO_RT > -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -std=c++0x > -I/home/pshea/_localbuilds/RTC/Common/2.0.0_247//Applications_rhel6_x64_dts4_pic/include > -c rtctrace.c -o rtctrace.o -MMD -MP > /opt/rh/devtoolset-4/root/usr/bin/g++ -shared -m64 -Wl,-O2 -Wl,-E > -Wl,-soname,librtctrace.so.1 rtctrace.o * db_arl_base.o > jsoncpp.o*-lcurl -pthread > -L/home/pshea/_localbuilds/RTC/Common/2.0.0_247//Applications_rhel6_x64_dts4_pic/lib > -lrtccommon > -L/home/pshea/_localbuilds/ExternalLibs/boost/V1.60.0_22/Server_Linux26_x64_dts4_pic/lib > -lboost_system -lboost_thread -lpthread -o librtctrace.so.1.0 > *g++: error: db_arl_base.o: No such file or directory* > *g++: error: jsoncpp.o: No such file or directory* > > > > _______________________________________________ > SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list > sr-users@lists.sip-router.org > http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users -- Daniel-Constantin Mierla www.twitter.com/miconda -- www.linkedin.com/in/miconda Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com
_______________________________________________ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users