• 0
cramcram

Having trouble building Adept 2 demo application

Question

Hi,

We have a custom embedded board with a Zynq processor.  There is a JTAG-SMT2 on the board connected to the JTAG chain of other boards.  We want to use this for Fpga configuration as well as remote ChipScope debugging.

I think I've the runtime code installed correctly (/dev/ptmx is created when the JTAG-SMT2 is detected).  But I can't compile the DjtgDemo program to compile:

armv7l-timesys-linux-gnueabi-gcc-color -O3  -Wall  -I../include -I../include -I../drivers -DCPC_TARGET -I ./Digilent/digilent.adept.sdk_2.4.2/inc -L ./Digilent/digilent.adept.runtime_2.19.2-armhf/data/usr/lib/digilent/adept -ldjtg -ldmgr -ldpcutil -ldpcomm -ldepp -ldspi -ldstm -ldpio -ldabs -ldftd2xx -o DjtgDemo DjtgDemo.cpp


./Digilent/digilent.adept.runtime_2.19.2-armhf/data/usr/lib/digilent/adept/libdpcomm.so: undefined reference to `operator delete(void*, unsigned int)@CXXABI_1.3.9'
collect2: error: ld returned 1 exit status

 

That looks like a C++ class operator overload definition even though the sample Makefile uses gcc.  Using g++ instead of gcc doesn't change anything.

Anyway, how can I satisfy this missing reference?

 

Thanks,

Marc Howard

Share this post


Link to post
Share on other sites

6 answers to this question

Recommended Posts

  • 0

Linux cpc1 4.4.0-ts-armv7l-xilinx #8 SMP PREEMPT Fri Jul 29 14:24:19 PDT 2016 armv7l GNU/Linux

I've seen other postings on the net that say to link with -lstdc++ or use -fdefine-sized-deallocation or variants of this.  Nothing gets me past the error message however.

Thanks,

Marc

Share this post


Link to post
Share on other sites
  • 0

Hi @attila

Added it to the Makefile but I got the same result.

armv7l-timesys-linux-gnueabi-g++ '-D_GLIBCXX_USE_CXX11_ABI=0'  -O3  -Wall  -I../include -I../include -I../drivers -DCPC_TARGET -I ./Digilent/digilent.adept.sdk_2.4.2/inc -L ./Digilent/digilent.adept.runtime_2.19.2-armhf/data/usr/lib/digilent/adept -ldjtg -ldmgr -ldpcutil -ldpcomm -ldepp -ldspi -ldstm -ldpio -ldabs -ldftd2xx  -o DjtgDemo DjtgDemo.cpp
./Digilent/digilent.adept.runtime_2.19.2-armhf/data/usr/lib/digilent/adept/libdpcomm.so: undefined reference to `operator delete(void*, unsigned int)@CXXABI_1.3.9'
collect2: error: ld returned 1 exit status
make: *** [Makefile:141: DjtgDemo] Error 1

 

Share this post


Link to post
Share on other sites
  • 0

To be honest I don't think that I've ever used the Adept SDK to compile an application on an embedded Linux target, and have only ever built the Runtime and the utilities on that platform. Since it's been quite a while since the last time I built anything I will have to see if I can get my old Raspbian build setup working again or setup a build environment under Petalinux, which is the easiest thing for me to boot on one of our Zynq based boards.

I'm not sure that any of this is going to be worthwhile in the end because the JTAG-SMT2 is one of our FTDI based programmers and there are a lot of bugs in FTDI's arm driver. Unless FTDI released a new driver we are likely going to find that the same driver bugs that plague the AD2 on Raspberry Pi will also prevent the SMT2 from reliably performing JTAG transactions.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now