Peter Budny <pbudny <at> unicoi.com> writes: > > -----Original Message----- > From: vapierfilter <at> gmail.com [mailto:vapierfilter <at> gmail.com] On Behalf Of > Mike Frysinger > Sent: Friday, June 24, 2011 2:13 PM > To: Peter Budny > Cc: urjtag-development <at> lists.sourceforge.net > Subject: Re: [UrJTAG-dev] Cannot link with FTD2XX > > On Thu, Jun 16, 2011 at 09:18, Peter Budny wrote: > >> When trying to compile UrJTAG with ftd2xx support, it fails to link > >> the executables. This seems to be because @FTD2XXLIB@ is being added > >> to liburjtag_la_LIBADD in src/Makefile.am (where it does not help > >> define any > >> symbols) instead of jtag_LDADD in src/apps/jtag/Makefile.am (where the > >> EXE is linked). > > > > libtool should look at all the libraries encoded in liburjtag.la and pull > them in as needed when linking jtag since jtag depends on the .la file. so > what you describe does not sound incorrect, but expected behavior. > otherwise, the change you're proposing would break shared library creation > as it is liburjtag that is using FTDI symbols and not the jtag app. > > Looking at the .la file that libtool generates (and this is strictly from > toolchain SVN, no modification) I don't see any mention of ftd2xx.lib. The > dependency_libs variable is empty, which is where I would naively expect to > find it listed. (In fact all the variable are empty, except > old_library='liburjtag.a' and libdir='/usr/local/lib'.) > > Unless I'm missing something, it appears that including ftd2xx.lib doesn't > define any symbols (which makes sense to me, because there's no compilation > involved in creating an archive, so how could it resolve symbols?), nor does > it put ftd2xx.lib into the archive in any way.
I am having the same problem as Peter (compiling source from svn, using ftd2xx, under cygwin). As far as I can tell the problem is with libtool 'harvesting' the symbols when building liburjtag.la. during that step libtool prints a message (output copied manually as I don't have the source/build env. on this machine) make[3]: Entering directory `/home/adyer/urjtag/urjtag/src' /bin/sh ../libtool --tag=CC --mode=link gcc -std=gnu99 -Wall -Wmissing- prototypes -Wstrict-prototypes -Wpointer-arith -g -O2 -I/home/adyer/ftdi-cdm- driver -version-info 0:0:0 -o liburjtag.la -rpath /usr/local/lib tap/libtap.la part/libpart.la lib/libjtaglib.la flash/libflash.la bfin/libbfin.la bus/libbus.la cmd/libcmd.la pld/libpld.la global/libglobal.la -lm /home/adyer/ftdi-cdm-driver/i386/ftd2xx.lib -lintl svf/libsvf.la svf/libsvf_flex.la bsdl/libbsdl.la bsdl/libbsdl_flex.la -lioperm -lreadline libtool: link: warning: undefined symbols not allowed in i686-pc-cygwin shared libraries I am not that familiar with the ins and outs of libraries, dlls & windows, but I wonder if the problem is some update in the FTDI D2XX driver library breaking things. I pulled the library from their site yesterday, version is 2.08.24 ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ UrJTAG-development mailing list UrJTAG-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/urjtag-development