Thread: [Hamlib-developer] CVS compilation problem
Library to control radio transceivers and receivers
Brought to you by:
n0nb
|
From: Nate B. <n0...@ne...> - 2002-10-23 23:19:36
|
Hi all.
I'm tinkering with Hamlib a bit as I'm also tinkering with the TLF
logging program. I'm having trouble getting register.c to compile.
Here is the output:
register.c: In function `rig_load_backend':
register.c:297: `HAMLIB_MODULE_DIR' undeclared (first use in this
function)
register.c:297: (Each undeclared identifier is reported only once
register.c:297: for each function it appears in.)
make[1]: *** [register.lo] Error 1
Okay, so I locate the appriate line in src/register.c:
lt_dladdsearchdir(HAMLIB_MODULE_DIR);
Okay, nothing spectacular there so I did a grep for HAMLIB_MODULE_DIR
and find it is defined in src/Makefile at line 112:
libhamlib_la_CFLAGS = -DIN_HAMLIB $(AM_CFLAGS)
-DHAMLIB_MODULE_DIR=\"$(libdir)\"
Looking through the gcc man page I see that HAMLIB_MODULE_DIR is being
defined as a macro with the value of /usr/local/lib yet I am unclear as
to just how this makes it onto the gcc command line as the one in my
rxvt makes no sense!
I've built the configuration per the directions in README.betatester and
README.developer as I'd like to try and add my FT-920 to Hamlib. But I
first wanted to be sure that things build before mucking around.
73, de Nate >>
--
Wireless | Amateur Radio Station N0NB | "We have awakened a
Internet | n0...@ne... | sleeping giant and
Location | Bremen, Kansas USA EM19ov | have instilled in him
Amateur radio exams; ham radio; Linux info @ | a terrible resolve".
http://www.qsl.net/n0nb/ | - Admiral Yamomoto
|
|
From: Stephane F. <f8...@fr...> - 2002-10-24 07:08:52
|
Hi Nate! On Wed, Oct 23, 2002, Nate Bargmann wrote: > I'm tinkering with Hamlib a bit as I'm also tinkering with the TLF > logging program. I'm having trouble getting register.c to compile. Looks like CQWW is getting closer ;-) > Here is the output: > register.c: In function `rig_load_backend': > register.c:297: `HAMLIB_MODULE_DIR' undeclared (first use in this > function) > register.c:297: (Each undeclared identifier is reported only once > register.c:297: for each function it appears in.) > make[1]: *** [register.lo] Error 1 What does your gcc command line look like? Mine is as follow: /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../src -I../lib -I../libltdl -DIN_HAMLIB -DHAMLIB_MODULE_DIR=\"/usr/local/lib\" -g -O2 -Wall -c -o libhamlib_la-register.lo `test -f 'register.c' || echo './'`register.c gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../src -I../lib -I../libltdl -DIN_HAMLIB -DHAMLIB_MODULE_DIR=\"/usr/local/lib\" -g -O2 -Wall -c register.c -Wp,-MD,.deps/libhamlib_la-register.TPlo -fPIC -DPIC -o libhamlib_la-register.lo > Okay, so I locate the appriate line in src/register.c: > > lt_dladdsearchdir(HAMLIB_MODULE_DIR); > > Okay, nothing spectacular there so I did a grep for HAMLIB_MODULE_DIR > and find it is defined in src/Makefile at line 112: > > libhamlib_la_CFLAGS = -DIN_HAMLIB $(AM_CFLAGS) > -DHAMLIB_MODULE_DIR=\"$(libdir)\" > > Looking through the gcc man page I see that HAMLIB_MODULE_DIR is being > defined as a macro with the value of /usr/local/lib yet I am unclear as > to just how this makes it onto the gcc command line as the one in my > rxvt makes no sense! libdir is defined in Makefile.in by automake/autoconf, you can check its value by greppig in Makefile. FYI, its value will change if you specify is different --prefix= to ./configure. > I've built the configuration per the directions in README.betatester and > README.developer as I'd like to try and add my FT-920 to Hamlib. But I > first wanted to be sure that things build before mucking around. Hey, great news for the FT-920! On my side, I'm going to add the FT-1000MP for a friend. If you have any doubts on your cvs checkout, you may try the cvs snapshot at http://hamlib.org/bleeding-edge/ which comes ready for ./configure && make BTW, what are your autoconf/automake versions (--version) ? Make sure it's at least 2.50 for autoconf, and 1.5 for automake. Debian supports different versions, and try to autodetect. Sometimes, it's not clever enough, and you have to run with version suffixes "aclocal-1.7 ; autoheader2.50; automake-1.7 -a ; autoconf2.50 " hint: modify your autogen.sh accordingly 73s Stephane |
|
From: Nate B. <n0...@ne...> - 2002-10-24 12:06:37
|
* Stephane Fillod <f8...@fr...> [2002 Oct 24 05:58 -0500]: > > Looks like CQWW is getting closer ;-) Maybe I'll get on for that, but I really have my eye on the ARRL Sweepstakes November 2 and 3. :-) > What does your gcc command line look like? Mine is as follow: > > /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../src -I../lib -I../libltdl -DIN_HAMLIB -DHAMLIB_MODULE_DIR=\"/usr/local/lib\" -g -O2 -Wall -c -o libhamlib_la-register.lo `test -f 'register.c' || echo './'`register.c > gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../src -I../lib -I../libltdl -DIN_HAMLIB -DHAMLIB_MODULE_DIR=\"/usr/local/lib\" -g -O2 -Wall -c register.c -Wp,-MD,.deps/libhamlib_la-register.TPlo -fPIC -DPIC -o libhamlib_la-register.lo > To compare: make[1]: Entering directory `/home/nate/test/hamlib/src' /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../src -I../lib -I../libltdl -g -O2 -Wall -c register.c gcc -DHAVE_CONFIG_H -I. -I. -I../include -I../include -I../src -I../lib -I../libltdl -g -O2 -Wall -Wp,-MD,.deps/register.pp -c register.c -fPIC -DPIC -o register.lo > libdir is defined in Makefile.in by automake/autoconf, you can check its > value by greppig in Makefile. FYI, its value will change if you specify is > different --prefix= to ./configure. That was my assumption and it appears that it will be set /usr/local/lib when that macro gets on the gcc command line like it does in your case. > Hey, great news for the FT-920! On my side, I'm going to add the FT-1000MP > for a friend. Well, I'm going to give it a try. If I had the FIF-232 I could try and add the FT-890 as well. I believe I can build a module that may work as a translator and somebody is selling an after market version as well on ebay. > If you have any doubts on your cvs checkout, you may try the cvs snapshot at > http://hamlib.org/bleeding-edge/ which comes ready for ./configure && make Okay, thanks for the tip. > BTW, what are your autoconf/automake versions (--version) ? Make sure > it's at least 2.50 for autoconf, and 1.5 for automake. > Debian supports different versions, and try to autodetect. Sometimes, > it's not clever enough, and you have to run with version suffixes > "aclocal-1.7 ; autoheader2.50; automake-1.7 -a ; autoconf2.50 " > hint: modify your autogen.sh accordingly Hmmm, I think I have a problem right here with regard to versions. It appears Debian Testing is a bit old: Autoconf version 2.13 automake (GNU automake) 1.4-p6 I see that additional automake versions are available, namely 1.5 and 1.6. I'll give 1.5 a try since it seems to satsify several dependencies. I had both autoconf 2.54 and 2.13 installed. 2.13 is heading to the bit bucket! I now have automake 1.5.3 and autoconf 2.54 as defaults, so I shall try again. This should be a lesson for me to RTFM and test my own system first. Sigh... I just finished building and installing the latest CVS, so it does work. The problem was between the chair and the keyboard on my end! 73, de Nate >> -- Wireless | Amateur Radio Station N0NB | "We have awakened a Internet | n0...@ne... | sleeping giant and Location | Bremen, Kansas USA EM19ov | have instilled in him Amateur radio exams; ham radio; Linux info @ | a terrible resolve". http://www.qsl.net/n0nb/ | - Admiral Yamomoto |