Damon Getsman <[email protected]> writes: > I've got a system that I'm trying to get connected to another fidonet hub > [again], but I'm having issues now that I'm having to connect to a new > coordinator. Previously I was able to connect via binkd-0.9.4, but I'm > having issues that I can't get resolved between several people very > experienced with binkd; it appears to be an incompatibility between more > recent versions and 0.9.4, not a configuration issue. > > Unfortunately, when attempting to get binkd-1.1 to compile on my OpenBSD > 5.3 system, there appears to be some issues either locating a library or > finding the correct library to install on my system. There is a rather > large lack of information for my situation available; as far as anybody > experienced with fidonet or binkd (as far as I know) knows, I'm the only > person that has had binkd running on OpenBSD, let alone run into these > incompatibilities and tried to get binkd-1.1 to compile in this environment. > > Here is the problem that I've been getting, starting with the 'configure' > shell script output that seems to be applicable: > -=-=- > checking for ns_initparse... no > checking for ns_msg._msg_ptr... no > checking for ns_msg._ptr... no > -=-=- > > and then, compilation seems to go fine until I hit the last few files > before final linkage; 'make' errors follow: > -=-=- > Compiling srv_gai.c... > srv_gai.c: In function 'srv_getaddrinfo': > srv_gai.c:82: error: 'ns_msg' undeclared (first use in this function) > srv_gai.c:82: error: (Each undeclared identifier is reported only once > srv_gai.c:82: error: for each function it appears in.) > srv_gai.c:82: error: expected ';' before 'nsb' > srv_gai.c:83: error: 'ns_rr' undeclared (first use in this function) > srv_gai.c:83: error: expected ';' before 'rrb' > srv_gai.c:137: error: 'ns_c_in' undeclared (first use in this function) > srv_gai.c:137: error: 'ns_t_srv' undeclared (first use in this function) > srv_gai.c:151: warning: implicit declaration of function 'ns_initparse' > srv_gai.c:151: error: 'nsb' undeclared (first use in this function) > srv_gai.c:163: warning: implicit declaration of function 'ns_msg_count' > srv_gai.c:163: error: 'ns_s_an' undeclared (first use in this function) > srv_gai.c:164: warning: implicit declaration of function 'ns_parserr' > srv_gai.c:164: error: 'rrb' undeclared (first use in this function) > srv_gai.c:168: warning: implicit declaration of function 'ns_rr_class' > srv_gai.c:171: warning: implicit declaration of function 'ns_rr_type' > srv_gai.c:173: warning: implicit declaration of function 'ns_rr_rdlen' > srv_gai.c:178: warning: implicit declaration of function 'ns_rr_rdata' > srv_gai.c:178: warning: assignment makes pointer from integer without a cast > *** Error 1 in /usr/src/binkd-1.1 (Makefile:76 'srv_gai.o': @gcc -c > -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACK...) > -=-=-
You need stuff that was moved from base to the net/libbind package. > Now, I will be the first one to admit that my knowledge of Makefile syntax > and operations is pretty limited. I can fumble my way through general > modifications, but I'm not sure I'm doing things correctly. I've gotten > some difficult packages to compile that haven't wanted to on particular > systems, but I find these solutions pretty much by educated guess. I know > C/C++, but I can't say that I've ever coded anything more than a few > hundred (<600) lines long in that language. So as far as porting to a new > operating system, taking into account SYSV/BSD differences and anything > else, I'm pretty lost. > > My web searching for the ns_msg and associated functions seemed to indicate > that this is a part of libspf2, Well, libspf2 depends on libbind. > which I then installed via pkg_add to my > system. Right off the bat I attempted a freshly started 'configure' and > 'make'. The configuration still indicated success, but with the same 'not > found' messages that I indicated in my first cut 'n paste in this message. > I then made several modifications to the Makefile and even attempted > manual compilation of srv_gai.c with different command lines, trying to > manually specify -lspf2. No luck. I even tried switching the order of the > compilation in order to compile unix/ns_parse.c prior to srv_gai.c, > thinking (strictly due to the superficial resemblance of the name of this > file and hints that I saw in the source code) that perhaps an ns_msg may > reside in there. Yeah, it was desperation time by this point. No go. So... you need to add /usr/local/include/bind/ to the include search list, /usr/local/lib/libbind/ to the lib search list (with -L and -R), you need to link against libbind (-lbind), and you need to patch srv_gai.c so that it includes arpa/nameser.h. The provided Makefile.in doesn't honor CPPFLAGS / LDFLAGS. > At this point I'm totally out of ideas. I'd be grateful for anything that > anybody might be able to suggest. Well, with possible exception of > switching operating systems. My machine that has ports forwarded to it > from the internet will always be OpenBSD due to my affinity for privacy and > system integrity. > > Am I trying to add the wrong library? Is there any other place I could > somehow insert this ns_msg and other associated code? Many thanks in > advance for anything you can offer. I really need to get this system > working as a binkd server and client asap. > > Also, if anybody is interested in the BBS scene, I'd be happy to drop the > address for my system just as soon as I've got the ports forwarded at my > new location again. ;) If building binkd on OpenBSD is so painful then a port could be useful. > -Damon Getsman > -- jca | PGP: 0x06A11494 / 61DB D9A0 00A4 67CF 2A90 8961 6191 8FBF 06A1 1494

