Re: [bwm-tools-tech] compilation errors
Brought to you by:
nkukard
From: Nick B. <ni...@bu...> - 2003-09-18 18:21:44
|
Excellent, yes, you're right it cannot find the path. Here is the output: root@localhost root]# pkg-config --cflags --libs glib-2.0 Package glib-2.0 was not found in the pkg-config search path. Perhaps you should add the directory containing `glib-2.0.pc' to the PKG_CONFIG_PATH environment variable No package 'glib-2.0' found On Thursday, September 18, 2003, at 11:50 AM, Nigel Kukard wrote: > Hi Nick, > > hrmmmm... this is very strage, bwm_tools uses pkg-config to find out > where the include directories and libraries can be found. > > can you maybe try running this command for me? > > # pkg-config --cflags --libs glib-2.0 > > lets see what we get... > > the problem is bwm_tools' configure script cannot find the glib-2.0 > include or libraries... not too serious, i'll help you sort it out! > > > > Kind Regards > Nigel Kukard > > > On Thu, Sep 18, 2003 at 08:09:40AM -0500, Nick Buraglio wrote: >> -----BEGIN PGP SIGNED MESSAGE----- >> Hash: SHA1 >> >> I've been trying to compile the newest version of bwm-tools (0.1.1) >> and >> I've been been experiencing some errors, I've also tried the older >> versionsand got similar errors. All dependencies should be installed. >> I'm not really a programmer, so the errors really don't mean much to >> me >> (looks like a syntax error maybe?). Running Redhat Linux 9.0 (I'm >> also >> really not a linux user, I stick more to the BSD flavors, so it could >> be a user error) >> >> glib-2.0.0 is installed. >> libxml2-2.5.9 is also installed. >> >> [root@localhost bwm_tools-0.1.1]# uname -a >> Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:18:24 EST 2003 >> i686 athlon i386 GNU/Linux >> >> Any help or insight greatly appreciated. >> >> Thanks, >> nb >> >> Errors follow: >> >> [root@localhost bwm_tools-0.1.1]# make >> for dir in lib bwm_firewall bwm_graph bwmd bwm_monitor; \ >> do \ >> make -C $dir all; \ >> res=$?; \ >> if [ $res != '0' ]; then exit $res; fi \ >> done >> make[1]: Entering directory `/root/bwm_tools-0.1.1/lib' >> make libbwm.a >> make[2]: Entering directory `/root/bwm_tools-0.1.1/lib' >> cc -I/usr/include/libxml2 -Wall -I../include -D_GNU_SOURCE -c >> flow.c >> flow.c:9:18: glib.h: No such file or directory >> In file included from flow.c:14: >> ../include/common.h:12:18: glib.h: No such file or directory >> In file included from flow.c:14: >> ../include/common.h:31: parse error before "GList" >> ../include/common.h:31: warning: no semicolon at end of struct or >> union >> ../include/common.h:32: warning: type defaults to `int' in declaration >> of `lock' >> ../include/common.h:32: warning: data definition has no type or >> storage >> class >> ../include/common.h:33: parse error before '}' token >> ../include/common.h:40: parse error before "GList" >> ../include/common.h:40: warning: no semicolon at end of struct or >> union >> ../include/common.h:41: warning: type defaults to `int' in declaration >> of `flows' >> ../include/common.h:41: warning: data definition has no type or >> storage >> class >> ../include/common.h:42: parse error before '*' token >> ../include/common.h:42: warning: type defaults to `int' in declaration >> of `groups' >> ../include/common.h:42: warning: data definition has no type or >> storage >> class >> ../include/common.h:44: parse error before '*' token >> ../include/common.h:44: warning: type defaults to `int' in declaration >> of `bandSignalCond' >> ../include/common.h:44: warning: data definition has no type or >> storage >> class >> ../include/common.h:45: parse error before '*' token >> ../include/common.h:45: warning: type defaults to `int' in declaration >> of `bandSignalLock' >> ../include/common.h:45: warning: data definition has no type or >> storage >> class >> ../include/common.h:47: parse error before '*' token >> ../include/common.h:47: warning: type defaults to `int' in declaration >> of `queueChangeList' >> ../include/common.h:47: warning: data definition has no type or >> storage >> class >> ../include/common.h:48: parse error before '*' token >> ../include/common.h:48: warning: type defaults to `int' in declaration >> of `waitListLock' >> ../include/common.h:48: warning: data definition has no type or >> storage >> class >> ../include/common.h:50: parse error before '*' token >> ../include/common.h:50: warning: type defaults to `int' in declaration >> of `queueWaitList' >> ../include/common.h:50: warning: data definition has no type or >> storage >> class >> ../include/common.h:53: parse error before '*' token >> ../include/common.h:53: warning: type defaults to `int' in declaration >> of `IPQLock' >> ../include/common.h:53: warning: data definition has no type or >> storage >> class >> ../include/common.h:56: parse error before '}' token >> ../include/common.h:61: parse error before "GList" >> ../include/common.h:61: warning: no semicolon at end of struct or >> union >> ../include/common.h:62: warning: type defaults to `int' in declaration >> of `flows' >> ../include/common.h:62: warning: data definition has no type or >> storage >> class >> ../include/common.h:63: parse error before '*' token >> ../include/common.h:63: warning: type defaults to `int' in declaration >> of `groups' >> ../include/common.h:63: warning: data definition has no type or >> storage >> class >> ../include/common.h:64: parse error before '}' token >> In file included from flow.c:15: >> ../include/flow.h:13:18: glib.h: No such file or directory >> In file included from ../include/flow.h:17, >> from flow.c:15: >> ../include/ipq.h:17:18: glib.h: No such file or directory >> In file included from flow.c:15: >> ../include/flow.h:84: parse error before "GMutex" >> ../include/flow.h:84: warning: no semicolon at end of struct or union >> ../include/flow.h:97: parse error before '*' token >> ../include/flow.h:97: warning: type defaults to `int' in declaration >> of >> `packets' >> ../include/flow.h:97: warning: data definition has no type or storage >> class >> ../include/flow.h:98: parse error before '}' token >> ../include/flow.h:104: parse error before "GMutex" >> ../include/flow.h:104: warning: no semicolon at end of struct or union >> ../include/flow.h:116: conflicting types for `prio' >> ../include/flow.h:86: previous declaration of `prio' >> ../include/flow.h:132: parse error before '*' token >> ../include/flow.h:132: warning: type defaults to `int' in declaration >> of `counterLock' >> ../include/flow.h:132: warning: data definition has no type or storage >> class >> ../include/flow.h:134: parse error before '*' token >> ../include/flow.h:134: warning: type defaults to `int' in declaration >> of `groups' >> ../include/flow.h:134: warning: data definition has no type or storage >> class >> ../include/flow.h:146: parse error before '}' token >> ../include/flow.h:152: parse error before "GMutex" >> ../include/flow.h:152: warning: no semicolon at end of struct or union >> ../include/flow.h:163: parse error before '*' token >> ../include/flow.h:163: warning: type defaults to `int' in declaration >> of `counterLock' >> ../include/flow.h:163: warning: data definition has no type or storage >> class >> ../include/flow.h:172: parse error before '*' token >> ../include/flow.h:172: warning: type defaults to `int' in declaration >> of `flowList' >> ../include/flow.h:172: warning: data definition has no type or storage >> class >> ../include/flow.h:173: parse error before '}' token >> ../include/flow.h:196: parse error before "GList" >> flow.c: In function `createFlow': >> flow.c:36: sizeof applied to an incomplete type >> flow.c:48: dereferencing pointer to incomplete type >> flow.c:48: warning: implicit declaration of function `g_mutex_new' >> flow.c:50: dereferencing pointer to incomplete type >> flow.c:52: dereferencing pointer to incomplete type >> flow.c:53: dereferencing pointer to incomplete type >> flow.c:55: dereferencing pointer to incomplete type >> flow.c:56: dereferencing pointer to incomplete type >> flow.c:57: dereferencing pointer to incomplete type >> flow.c:58: dereferencing pointer to incomplete type >> flow.c:59: dereferencing pointer to incomplete type >> flow.c:60: dereferencing pointer to incomplete type >> flow.c:62: dereferencing pointer to incomplete type >> flow.c:64: dereferencing pointer to incomplete type >> flow.c:65: dereferencing pointer to incomplete type >> flow.c:67: dereferencing pointer to incomplete type >> flow.c:68: dereferencing pointer to incomplete type >> flow.c:71: dereferencing pointer to incomplete type >> flow.c:72: dereferencing pointer to incomplete type >> flow.c:73: dereferencing pointer to incomplete type >> flow.c:74: dereferencing pointer to incomplete type >> flow.c:75: dereferencing pointer to incomplete type >> flow.c:77: dereferencing pointer to incomplete type >> flow.c:79: dereferencing pointer to incomplete type >> flow.c:81: dereferencing pointer to incomplete type >> flow.c:83: dereferencing pointer to incomplete type >> flow.c:83: dereferencing pointer to incomplete type >> flow.c:84: dereferencing pointer to incomplete type >> flow.c:84: dereferencing pointer to incomplete type >> flow.c:88: dereferencing pointer to incomplete type >> flow.c:89: dereferencing pointer to incomplete type >> flow.c:92: dereferencing pointer to incomplete type >> flow.c:94: dereferencing pointer to incomplete type >> flow.c:94: dereferencing pointer to incomplete type >> flow.c:95: dereferencing pointer to incomplete type >> flow.c:95: dereferencing pointer to incomplete type >> flow.c:99: dereferencing pointer to incomplete type >> flow.c:100: dereferencing pointer to incomplete type >> flow.c:103: dereferencing pointer to incomplete type >> flow.c:105: dereferencing pointer to incomplete type >> flow.c:106: dereferencing pointer to incomplete type >> flow.c:107: dereferencing pointer to incomplete type >> flow.c:108: dereferencing pointer to incomplete type >> flow.c:111: dereferencing pointer to incomplete type >> flow.c:112: dereferencing pointer to incomplete type >> flow.c:115: dereferencing pointer to incomplete type >> flow.c:115: dereferencing pointer to incomplete type >> flow.c:115: dereferencing pointer to incomplete type >> flow.c:116: dereferencing pointer to incomplete type >> flow.c:124: dereferencing pointer to incomplete type >> flow.c:126: dereferencing pointer to incomplete type >> flow.c:127: dereferencing pointer to incomplete type >> flow.c:127: dereferencing pointer to incomplete type >> flow.c:129: dereferencing pointer to incomplete type >> flow.c:131: dereferencing pointer to incomplete type >> flow.c:133: dereferencing pointer to incomplete type >> flow.c:134: dereferencing pointer to incomplete type >> flow.c:134: dereferencing pointer to incomplete type >> flow.c:136: dereferencing pointer to incomplete type >> flow.c:140: dereferencing pointer to incomplete type >> flow.c:140: dereferencing pointer to incomplete type >> flow.c:141: dereferencing pointer to incomplete type >> flow.c:141: dereferencing pointer to incomplete type >> flow.c:146: dereferencing pointer to incomplete type >> flow.c:146: sizeof applied to an incomplete type >> flow.c:148: dereferencing pointer to incomplete type >> flow.c:149: dereferencing pointer to incomplete type >> flow.c:150: dereferencing pointer to incomplete type >> flow.c:151: dereferencing pointer to incomplete type >> flow.c:152: dereferencing pointer to incomplete type >> flow.c:153: dereferencing pointer to incomplete type >> flow.c:154: dereferencing pointer to incomplete type >> flow.c:155: dereferencing pointer to incomplete type >> flow.c:156: dereferencing pointer to incomplete type >> flow.c: At top level: >> flow.c:187: parse error before "GList" >> flow.c: In function `createGroup': >> flow.c:189: sizeof applied to an incomplete type >> flow.c:193: dereferencing pointer to incomplete type >> flow.c:195: dereferencing pointer to incomplete type >> flow.c:198: dereferencing pointer to incomplete type >> flow.c:199: dereferencing pointer to incomplete type >> flow.c:202: dereferencing pointer to incomplete type >> flow.c:203: dereferencing pointer to incomplete type >> flow.c:204: dereferencing pointer to incomplete type >> flow.c:205: dereferencing pointer to incomplete type >> flow.c:207: dereferencing pointer to incomplete type >> flow.c:208: dereferencing pointer to incomplete type >> flow.c:209: dereferencing pointer to incomplete type >> flow.c:210: dereferencing pointer to incomplete type >> flow.c:211: dereferencing pointer to incomplete type >> flow.c:214: dereferencing pointer to incomplete type >> flow.c:217: dereferencing pointer to incomplete type >> flow.c:217: `reportTimeout' undeclared (first use in this function) >> flow.c:217: (Each undeclared identifier is reported only once >> flow.c:217: for each function it appears in.) >> flow.c:218: dereferencing pointer to incomplete type >> flow.c:221: dereferencing pointer to incomplete type >> flow.c:224: dereferencing pointer to incomplete type >> flow.c:225: dereferencing pointer to incomplete type >> flow.c:227: dereferencing pointer to incomplete type >> flow.c:227: dereferencing pointer to incomplete type >> flow.c:227: dereferencing pointer to incomplete type >> flow.c:228: dereferencing pointer to incomplete type >> flow.c: In function `createPktQueue': >> flow.c:244: dereferencing pointer to incomplete type >> flow.c:254: dereferencing pointer to incomplete type >> flow.c: In function `updateGroups': >> flow.c:267: `GList' undeclared (first use in this function) >> flow.c:267: `groupItem' undeclared (first use in this function) >> flow.c:267: warning: implicit declaration of function `g_list_first' >> flow.c:267: dereferencing pointer to incomplete type >> flow.c:277: warning: implicit declaration of function `g_mutex_lock' >> flow.c:277: dereferencing pointer to incomplete type >> flow.c:281: dereferencing pointer to incomplete type >> flow.c:283: dereferencing pointer to incomplete type >> flow.c:286: dereferencing pointer to incomplete type >> flow.c:288: dereferencing pointer to incomplete type >> flow.c:291: dereferencing pointer to incomplete type >> flow.c:293: dereferencing pointer to incomplete type >> flow.c:296: dereferencing pointer to incomplete type >> flow.c:298: dereferencing pointer to incomplete type >> flow.c:300: warning: implicit declaration of function `g_mutex_unlock' >> flow.c:300: dereferencing pointer to incomplete type >> flow.c:303: warning: implicit declaration of function `g_list_next' >> flow.c: In function `processPktQueue': >> flow.c:339: `GList' undeclared (first use in this function) >> flow.c:348: dereferencing pointer to incomplete type >> flow.c:349: dereferencing pointer to incomplete type >> flow.c:350: dereferencing pointer to incomplete type >> flow.c:351: dereferencing pointer to incomplete type >> flow.c:357: `pktQueueItem' undeclared (first use in this function) >> flow.c:372: dereferencing pointer to incomplete type >> flow.c:384: dereferencing pointer to incomplete type >> flow.c:384: dereferencing pointer to incomplete type >> flow.c:384: dereferencing pointer to incomplete type >> flow.c:384: dereferencing pointer to incomplete type >> flow.c:384: dereferencing pointer to incomplete type >> flow.c:384: dereferencing pointer to incomplete type >> flow.c:384: dereferencing pointer to incomplete type >> flow.c:384: dereferencing pointer to incomplete type >> flow.c:385: dereferencing pointer to incomplete type >> flow.c:385: dereferencing pointer to incomplete type >> flow.c:385: dereferencing pointer to incomplete type >> flow.c:385: dereferencing pointer to incomplete type >> flow.c:385: dereferencing pointer to incomplete type >> flow.c:385: dereferencing pointer to incomplete type >> flow.c:385: dereferencing pointer to incomplete type >> flow.c:385: dereferencing pointer to incomplete type >> flow.c:388: dereferencing pointer to incomplete type >> flow.c:388: dereferencing pointer to incomplete type >> flow.c:388: dereferencing pointer to incomplete type >> flow.c:388: dereferencing pointer to incomplete type >> flow.c:391: dereferencing pointer to incomplete type >> flow.c:394: dereferencing pointer to incomplete type >> flow.c:394: dereferencing pointer to incomplete type >> flow.c:394: dereferencing pointer to incomplete type >> flow.c:394: dereferencing pointer to incomplete type >> flow.c:394: dereferencing pointer to incomplete type >> flow.c:394: dereferencing pointer to incomplete type >> flow.c:400: dereferencing pointer to incomplete type >> flow.c:406: dereferencing pointer to incomplete type >> flow.c:406: dereferencing pointer to incomplete type >> flow.c:406: dereferencing pointer to incomplete type >> flow.c:406: dereferencing pointer to incomplete type >> flow.c:406: dereferencing pointer to incomplete type >> flow.c:406: dereferencing pointer to incomplete type >> flow.c:406: dereferencing pointer to incomplete type >> flow.c:406: dereferencing pointer to incomplete type >> flow.c:407: dereferencing pointer to incomplete type >> flow.c:407: dereferencing pointer to incomplete type >> flow.c:407: dereferencing pointer to incomplete type >> flow.c:407: dereferencing pointer to incomplete type >> flow.c:407: dereferencing pointer to incomplete type >> flow.c:407: dereferencing pointer to incomplete type >> flow.c:407: dereferencing pointer to incomplete type >> flow.c:407: dereferencing pointer to incomplete type >> flow.c:410: dereferencing pointer to incomplete type >> flow.c:410: dereferencing pointer to incomplete type >> flow.c:410: dereferencing pointer to incomplete type >> flow.c:410: dereferencing pointer to incomplete type >> flow.c:411: dereferencing pointer to incomplete type >> flow.c:411: dereferencing pointer to incomplete type >> flow.c:412: dereferencing pointer to incomplete type >> flow.c:419: dereferencing pointer to incomplete type >> flow.c:421: dereferencing pointer to incomplete type >> flow.c:422: dereferencing pointer to incomplete type >> flow.c:423: dereferencing pointer to incomplete type >> flow.c:424: dereferencing pointer to incomplete type >> flow.c:427: dereferencing pointer to incomplete type >> flow.c:428: dereferencing pointer to incomplete type >> flow.c:430: dereferencing pointer to incomplete type >> flow.c:432: dereferencing pointer to incomplete type >> flow.c:439: dereferencing pointer to incomplete type >> flow.c:448: dereferencing pointer to incomplete type >> flow.c:449: dereferencing pointer to incomplete type >> flow.c:450: dereferencing pointer to incomplete type >> flow.c:461: warning: implicit declaration of function `g_list_remove' >> flow.c:461: warning: assignment makes pointer from integer without a >> cast >> flow.c:466: dereferencing pointer to incomplete type >> flow.c:467: dereferencing pointer to incomplete type >> flow.c:467: warning: implicit declaration of function `g_list_append' >> flow.c:467: dereferencing pointer to incomplete type >> flow.c:468: dereferencing pointer to incomplete type >> flow.c:477: dereferencing pointer to incomplete type >> flow.c:477: dereferencing pointer to incomplete type >> flow.c:480: dereferencing pointer to incomplete type >> flow.c:484: warning: assignment makes pointer from integer without a >> cast >> flow.c:487: dereferencing pointer to incomplete type >> flow.c:488: dereferencing pointer to incomplete type >> flow.c:490: dereferencing pointer to incomplete type >> flow.c:490: dereferencing pointer to incomplete type >> flow.c:492: dereferencing pointer to incomplete type >> flow.c:493: dereferencing pointer to incomplete type >> flow.c:495: dereferencing pointer to incomplete type >> flow.c:496: dereferencing pointer to incomplete type >> flow.c:498: dereferencing pointer to incomplete type >> flow.c:499: dereferencing pointer to incomplete type >> flow.c:502: dereferencing pointer to incomplete type >> flow.c:505: warning: implicit declaration of function `g_list_find' >> flow.c:505: dereferencing pointer to incomplete type >> flow.c:505: dereferencing pointer to incomplete type >> flow.c:506: dereferencing pointer to incomplete type >> flow.c:506: dereferencing pointer to incomplete type >> flow.c:507: dereferencing pointer to incomplete type >> flow.c:507: dereferencing pointer to incomplete type >> flow.c:508: warning: implicit declaration of function `g_cond_signal' >> flow.c:508: dereferencing pointer to incomplete type >> flow.c:509: dereferencing pointer to incomplete type >> flow.c:516: dereferencing pointer to incomplete type >> flow.c:517: dereferencing pointer to incomplete type >> flow.c:518: dereferencing pointer to incomplete type >> flow.c:519: dereferencing pointer to incomplete type >> flow.c:522: dereferencing pointer to incomplete type >> flow.c:525: dereferencing pointer to incomplete type >> flow.c:525: warning: implicit declaration of function `g_list_concat' >> flow.c:525: dereferencing pointer to incomplete type >> flow.c:527: dereferencing pointer to incomplete type >> flow.c:530: dereferencing pointer to incomplete type >> flow.c:530: dereferencing pointer to incomplete type >> flow.c:531: dereferencing pointer to incomplete type >> flow.c:531: dereferencing pointer to incomplete type >> flow.c:531: dereferencing pointer to incomplete type >> flow.c:531: dereferencing pointer to incomplete type >> flow.c:532: dereferencing pointer to incomplete type >> flow.c:533: dereferencing pointer to incomplete type >> flow.c:535: dereferencing pointer to incomplete type >> flow.c:536: dereferencing pointer to incomplete type >> flow.c:538: dereferencing pointer to incomplete type >> flow.c: In function `flowRunner': >> flow.c:552: `GList' undeclared (first use in this function) >> flow.c:554: `GTimeVal' undeclared (first use in this function) >> flow.c:554: parse error before "mytime" >> flow.c:575: dereferencing pointer to incomplete type >> flow.c:581: dereferencing pointer to incomplete type >> flow.c:584: dereferencing pointer to incomplete type >> flow.c:586: warning: implicit declaration of function >> `g_get_current_time' >> flow.c:586: `mytime' undeclared (first use in this function) >> flow.c:587: warning: implicit declaration of function `g_time_val_add' >> flow.c:588: warning: implicit declaration of function >> `g_cond_timed_wait' >> flow.c:588: dereferencing pointer to incomplete type >> flow.c:588: dereferencing pointer to incomplete type >> flow.c:596: dereferencing pointer to incomplete type >> flow.c:598: dereferencing pointer to incomplete type >> flow.c:600: dereferencing pointer to incomplete type >> flow.c:606: dereferencing pointer to incomplete type >> flow.c:608: dereferencing pointer to incomplete type >> flow.c:617: warning: implicit declaration of function `g_list_foreach' >> flow.c:618: warning: implicit declaration of function `g_list_free' >> flow.c: At top level: >> ../include/common.h:55: storage size of `pmem' isn't known >> make[2]: *** [flow.o] Error 1 >> make[2]: Leaving directory `/root/bwm_tools-0.1.1/lib' >> make[1]: *** [all] Error 2 >> make[1]: Leaving directory `/root/bwm_tools-0.1.1/lib' >> make: *** [all] Error 2 >> -----BEGIN PGP SIGNATURE----- >> Version: GnuPG v1.2.1 (Darwin) >> >> iD8DBQE/aa6ZFOm2Sy5bRPQRAkeFAJ9tAu7Hdh/kQWDPIY9iErx8VLjJIQCgiGSw >> eQf6pb+EDqypZwstzp5KOsw= >> =Dj+3 >> -----END PGP SIGNATURE----- > <mime-attachment> ------------ - Nick Buraglio, Network Engineer - Phone: 217.244.6428 - National Center for Supercomputing Applications - CAB 269, 605 E Springfield, Champaign IL 61820 - www: http://www.ncsa.uiuc.edu/People/buraglio/ ------------ |