Re: argus-clients rasql/rasqlinsert compile/make errors
Drew Dixon <[email protected]> Sun, 8 Apr 2018 13:30:34 -0400
| Newsgroups | gmane.network.argus |
|---|---|
| Message-ID | <CA+pNqTPLQ_5UTSCTqWU4sJyGnqiHvfGLOp9GBk2zuidrfODvqQ@mail.gmail.com> |
Running "make distclean" did the trick Eric so assuming a mixture of object files compiled with and without debug logging must have been the problem. Many thanks gentlemen. Cheers, -Drew On Sat, Apr 7, 2018 at 8:01 PM, Eric Kinzie <[email protected]> wrote: > On April 7, 2018 7:23:29 PM EDT, Drew Dixon <[email protected]> wrote: > >Thanks Carter, so I actually had the .debug file in the root directory > >already and still having the issue in my previous email, not sure > >what's up: > > > >argus-clients-3.0.8.2-umich]$ ls -ltha > >total 944K > >drwxr-xr-x. 15 dwdixon users 4.0K Apr 7 18:21 . > >*-rw-r--r--. 1 root root 0 Apr 7 18:21 .threads* > >drwxr-xr-x. 5 dwdixon users 4.0K Mar 5 15:28 .. > >-rw-r--r--. 1 root root 319K Feb 28 17:42 config.log > >drwxr-xr-x. 6 dwdixon users 4.0K Feb 28 17:42 include > >drwxr-xr-x. 24 dwdixon users 4.0K Feb 28 17:42 examples > >drwxr-xr-x. 2 dwdixon users 4.0K Feb 28 17:42 lib > >drwxr-xr-x. 2 dwdixon users 4.0K Feb 28 17:42 clients > >drwxr-xr-x. 2 dwdixon users 4.0K Feb 28 17:42 common > >-rw-r--r--. 1 root root 9.8K Feb 28 17:42 Makefile > >-rwxr-xr-x. 1 root root 35K Feb 28 17:42 config.status > >*-rw-r--r--. 1 dwdixon users 0 Feb 28 17:41 .debug* > >drwxr-xr-x. 2 dwdixon users 4.0K Feb 28 17:37 bin > >drwxr-xr-x. 2 dwdixon users 75 Dec 18 11:49 .idea > >-rw-r--r--. 1 dwdixon users 6.1K Oct 30 11:20 .DS_Store > >drwxr-xr-x. 5 dwdixon users 39 Oct 30 09:00 man > >drwxr-xr-x. 4 dwdixon users 61 Oct 30 09:00 pkg > >drwxr-xr-x. 6 dwdixon users 61 Oct 30 09:00 support > >drwxr-xr-x. 2 dwdixon users 79 Oct 30 09:00 config > >drwxr-xr-x. 3 dwdixon users 4.0K Oct 30 09:00 debian > >drwxr-xr-x. 3 dwdixon users 101 Oct 30 08:59 cmake-build-debug > >-rw-r--r--. 1 dwdixon users 140 Oct 30 08:58 CMakeLists.txt > >-rw-r--r--. 1 dwdixon users 26K Jun 5 2016 MANIFEST > >-rw-r--r--. 1 dwdixon users 36K Jun 5 2016 ChangeLog > >-rw-r--r--. 1 dwdixon users 59K Jun 1 2016 acsite.m4 > >-rw-r--r--. 1 dwdixon users 517 Jun 1 2016 AUTHORS > >-rw-r--r--. 1 dwdixon users 11K Jun 1 2016 configure.ac > >-rw-r--r--. 1 dwdixon users 8.4K Jun 1 2016 INSTALL > >-rw-r--r--. 1 dwdixon users 3.8K Jun 1 2016 README > >-rw-r--r--. 1 dwdixon users 9.0K Jun 1 2016 Makefile.in > >-rw-r--r--. 1 dwdixon users 3.9K Jun 1 2016 CREDITS > >-rw-r--r--. 1 dwdixon users 6.9K Jun 1 2016 CHANGES > >-rw-r--r--. 1 dwdixon users 8 Jun 1 2016 VERSION > >-rwxr-xr-x. 1 dwdixon users 298K Apr 10 2015 configure > >-rw-r--r--. 1 dwdixon users 7.7K Nov 14 2012 aclocal.m4 > >-rw-r--r--. 1 dwdixon users 35K Nov 3 2011 COPYING > > > > > >Many thanks in advance, > > > >-Drew > > > > > >On Sat, Apr 7, 2018 at 7:14 PM, Carter Bullard <[email protected]> > >wrote: > > > >> Hey Drew, > >> Create the file .debug in the root directory and run configure and > >make > >> again. > >> Shiuld get you closer. > >> Carter > >> > >> > >> On Apr 7, 2018, at 6:33 PM, Drew Dixon <[email protected]> wrote: > >> > >> Thank you Eric- somehow the .threads file disappeared from my source > >code > >> directory...however I'm still having issues after fixing that...still > >can't > >> seem to get any of the rasql* clients to install... > >> > >> ...snip.... > >> making in ./ramysql > >> make[2]: Entering directory `/home/argus/argus-clients-3. > >> 0.8.2-umich/examples/ramysql' > >> gcc -O -I. -I../../include -I../../common -I/usr/include/mysql > >> -DHAVE_CONFIG_H -c ./rasqlinsert.c > >> gcc -O -I. -I../../include -I../../common -I/usr/include/mysql > >> -DHAVE_CONFIG_H -c ./raclient.c > >> gcc -O -o ../../bin/rasqlinsert raclient.o rasqlinsert.o > >> -L/usr/lib64/mysql -lmysqlclient ../../lib/argus_parse.a > >> ../../lib/argus_common.a ../../lib/argus_client.a -lm -lpthread > >-lGeoIP > >> -lz -lncurses -lreadline > >> raclient.o: In function `RaParseComplete': > >> raclient.c:(.text+0x41): undefined reference to `ArgusDebug' > >> raclient.c:(.text+0xc7): undefined reference to `ArgusDebug' > >> raclient.o: In function `ArgusThreadsInit': > >> raclient.c:(.text+0x27c): undefined reference to `ArgusDebug' > >> raclient.o: In function `RaProcessThisEventRecord': > >> raclient.c:(.text+0xb38): undefined reference to `ArgusDebug' > >> raclient.o: In function `RaProcessManRecord': > >> raclient.c:(.text+0xb5f): undefined reference to `ArgusDebug' > >> raclient.o:raclient.c:(.text+0xcea): more undefined references to > >> `ArgusDebug' follow > >> collect2: error: ld returned 1 exit status > >> make[2]: *** [../../bin/rasqlinsert] Error 1 > >> make[2]: Leaving directory `/home/argus/argus-clients-3. > >> 0.8.2-umich/examples/ramysql' > >> make[1]: *** [all] Error 2 > >> make[1]: Leaving directory `/home/argus/argus-clients-3. > >> 0.8.2-umich/examples' > >> make: *** [all] Error 2 > >> ...snip.... > >> > >> bin]$ pwd > >> /usr/local/bin > >> > >> bin]$ ls -ltha ras* > >> -rwxr-xr-x. 1 root root 670K Apr 7 18:13 rastrip > >> -rwxr-xr-x. 1 root root 684K Apr 7 18:13 rastream > >> -rwxr-xr-x. 1 root root 666K Apr 7 18:13 raservices > >> -rwxr-xr-x. 1 root root 679K Apr 7 18:13 rasplit > >> -rwxr-xr-x. 1 root root 670K Apr 7 18:13 rasort > >> > >> > >> bin]$ ls -ltha ra* | sort -d > >> -rwxr-xr-x. 1 root root 11K Apr 7 18:13 radark > >> -rwxr-xr-x. 1 root root 1.1M Apr 7 18:13 radump > >> -rwxr-xr-x. 1 root root 4.0K Apr 7 18:13 raports > >> -rwxr-xr-x. 1 root root 5.4K Apr 7 18:13 rahosts > >> -rwxr-xr-x. 1 root root 5.8K Apr 7 18:13 radecode > >> -rwxr-xr-x. 1 root root 63K Apr 7 18:13 ragraph > >> -rwxr-xr-x. 1 root root 666K Apr 7 18:13 rafilteraddr > >> -rwxr-xr-x. 1 root root 666K Apr 7 18:13 ralabel > >> -rwxr-xr-x. 1 root root 666K Apr 7 18:13 raservices > >> -rwxr-xr-x. 1 root root 670K Apr 7 18:13 raevent > >> -rwxr-xr-x. 1 root root 670K Apr 7 18:13 ragrep > >> -rwxr-xr-x. 1 root root 670K Apr 7 18:13 rasort > >> -rwxr-xr-x. 1 root root 670K Apr 7 18:13 rastrip > >> -rwxr-xr-x. 1 root root 670K Apr 7 18:13 ratemplate > >> -rwxr-xr-x. 1 root root 670K Apr 7 18:13 ratimerange > >> -rwxr-xr-x. 1 root root 674K Apr 7 18:13 racluster > >> -rwxr-xr-x. 1 root root 674K Apr 7 18:13 rahisto > >> -rwxr-xr-x. 1 root root 674K Apr 7 18:13 rarpwatch > >> -rwxr-xr-x. 1 root root 675K Apr 7 18:13 rapath > >> -rwxr-xr-x. 1 root root 675K Apr 7 18:13 rauserdata > >> -rwxr-xr-x. 1 root root 678K Apr 7 18:13 ra > >> -rwxr-xr-x. 1 root root 679K Apr 7 18:13 rasplit > >> -rwxr-xr-x. 1 root root 680K Apr 7 18:13 racount > >> -rwxr-xr-x. 1 root root 684K Apr 7 18:13 rastream > >> -rwxr-xr-x. 1 root root 688K Apr 7 18:13 ranonymize > >> -rwxr-xr-x. 1 root root 691K Apr 7 18:13 raconvert > >> -rwxr-xr-x. 1 root root 699K Apr 7 18:13 rabins > >> -rwxr-xr-x. 1 root root 703K Apr 7 18:13 rapolicy > >> -rwxr-xr-x. 1 root root 760K Apr 7 18:13 ratop > >> > >> Many thanks, > >> > >> -Drew > >> > >> On Sat, Apr 7, 2018 at 4:46 PM, Eric Kinzie <[email protected]> wrote: > >> > >>> On Sat Apr 07 15:48:31 -0400 2018, Drew Dixon wrote: > >>> > I've been wanting to experiment with rasqlinsert so where I have > >my > >>> > radium->racluster->archives test/dev server I realized I needed to > >>> install > >>> > some mysql packages to satisfy the dependencies for building the > >rasql* > >>> > client tools...I have all the required dependencies installed and > >so I > >>> went > >>> > to re-compile argus-clients (our umich version with IPFIX > >compatibility > >>> up > >>> > to the Netflow v9 field level) and pretty certain we've only > >modified > >>> > argus_import.c > >>> > to create the new v10 routines etc. (incase that might have any > >>> > side-effects or implications here I wanted to mention that) > >>> > > >>> > *Installed:* > >>> > mysql-community-client.x86_64 (5.7.21-1.el7) > >>> > mysql-community-common.x86_64 (5.7.21-1.el7) > >>> > mysql-community-devel.x86_64 (5.7.21-1.el7) > >>> > mysql-community-libs.x86_64 (5.7.21-1.el7) > >>> > mysql-community-libs-compat.x86_64 (5.7.21-1.el7) > >>> > mysql-community-server.x86_64 (5.7.21-1.el7) > >>> > > >>> > gcc.x86_64 (4.8.5-16.el7_4.2) > >>> > make.x86_64 (1:3.82-23.el7) > >>> > > >>> > Anyhow, so I went to recompile and make/make install the clients > >again > >>> to > >>> > get the rasql* tools and ran into the following errors with > >>> rasqlinsert.c, > >>> > it's flagging on some areas within the last 30ish lines of code: > >>> > > >>> > **************************************************************** > >>> > making in ./ramysql > >>> > make[2]: Entering directory > >>> > > >`/home/argus/downloads/argus-clients-3.0.8.2-umich/examples/ramysql' > >>> > gcc -O -I. -I../../include -I../../common -I/usr/include/mysql > >>> > -DHAVE_CONFIG_H -c ./rasql.c > >>> > gcc -O -o ../../bin/rasql rasql.o -L/usr/lib64/mysql > >-lmysqlclient > >>> > ../../lib/argus_parse.a ../../lib/argus_common.a > >>> ../../lib/argus_client.a > >>> > -lm -lGeoIP -lz > >>> > gcc -O -I. -I../../include -I../../common -I/usr/include/mysql > >>> > -DHAVE_CONFIG_H -c ./rasqlinsert.c > >>> > *./rasqlinsert.c: In function ‘ArgusScheduleSQLQuery’:* > >>> > *./rasqlinsert.c:7881:54: error: ‘struct ArgusListStruct’ has no > >member > >>> > named ‘cond’* > >>> > * pthread_cond_signal(&ArgusSQLInsertQueryList->cond);* > >>> > * ^* > >>> > *./rasqlinsert.c:7886:54: error: ‘struct ArgusListStruct’ has no > >member > >>> > named ‘cond’* > >>> > * pthread_cond_signal(&ArgusSQLUpdateQueryList->cond);* > >>> > * ^* > >>> > *./rasqlinsert.c:7890:54: error: ‘struct ArgusListStruct’ has no > >member > >>> > named ‘cond’* > >>> > * pthread_cond_signal(&ArgusSQLSelectQueryList->cond);* > >>> > * ^* > >>> > **************************************************************** > >>> > > >>> > *From rasqlinsert.c:* > >>> > > >>> > **************************************************************** > >>> > case RAGETTINGw: { > >>> > *struct ArgusListStruct* *wlist = > >>> ArgusParser->ArgusWfileList; > >>> > > >>> > ...snip... > >>> > > >>> > int ArgusProcessSQLQueryList(struct ArgusParserStruct *, *struct > >>> > ArgusListStruct **); > >>> > > >>> > > >>> > int > >>> > ArgusProcessSQLQueryList(struct ArgusParserStruct *parser, *struct > >>> > ArgusListStruct *ArgusSQLQueryList*) > >>> > > >>> > ....snip.... > >>> > > >>> > switch (ns->status & ARGUS_SQL_STATUS) { > >>> > case ARGUS_SQL_INSERT: > >>> > ArgusPushBackList (ArgusSQLInsertQueryList, (struct > >>> > ArgusListRecord *)&sqry->nxt, ARGUS_LOCK); > >>> > *pthread_cond_signal(&ArgusSQLInsertQueryList->cond);* > >>> > break; > >>> > > >>> > case ARGUS_SQL_UPDATE: > >>> > ArgusPushBackList (ArgusSQLUpdateQueryList, (struct > >>> > ArgusListRecord *)&sqry->nxt, ARGUS_LOCK); > >>> > *pthread_cond_signal(&ArgusSQLUpdateQueryList->cond);* > >>> > break; > >>> > case ARGUS_SQL_DELETE: > >>> > ArgusPushBackList (ArgusSQLSelectQueryList, (struct > >>> > ArgusListRecord *)&sqry->nxt, ARGUS_LOCK); > >>> > *pthread_cond_signal(&ArgusSQLSelectQueryList->cond);* > >>> > break; > >>> > } > >>> > ns->status &= ~(ARGUS_SQL_STATUS); > >>> > > >>> > free(tmpbuf); > >>> > free(mbuf); > >>> > > >>> > if (rbuf != NULL) free(rbuf); > >>> > > >>> > return (retn); > >>> > } > >>> > > >>> > ....snip.... > >>> > **************************************************************** > >>> > > >>> > Any idea why this is throwing this error or what the issue is? Am > >I > >>> > missing something obvious? > >>> > > >>> > Many thanks, > >>> > > >>> > -Drew > >>> > >>> > >>> Drew, I don't see -lpthread in the link step. The sql examples > >>> will not work without thread support (they should really just be > >>> skipped during the build if threads are disabled). > >>> > >>> Did you run "configure --without-threads" or remove the .threads > >>> file? Either of those seems to trigger the error above. > >>> > >>> Eric > >>> > >> > >> > > It looks like there may be a mixture of object files compiled with, and > some compiled without, debug logging. You could try running "make > distclean", then configure and make again. >