UHD compiling under Windows, invalid vector<T> error

Hi,
This is mostly a UHD questions.

I have taken the source code of UHD and compiled with the CMAKE option
under Windows 7 using Visual Studio 2010 with Boost 1.51.

Some of the examples (rx_timed_samples and tx_timed_samples) do not work
right giving an “/invalid vector subscript/” error when run.

However, when I add the compile option /Zi (Debug Program information,
Program Database (/Zi)), then they seem to work.

Thanks,
Seth

example without /Zi*
*
C:\uhd\host\build\examples\Release>tx_timed_samples

Win32; Microsoft Visual C++ version 10.0; Boost_105100;
UHD_003.004.004-255-g4c2
254b9

Creating the usrp device with: …
– Opening a USRP2/N-Series device…
– Current recv frame size: 1472 bytes
– Current send frame size: 1472 bytes
– Creating WSA UDP transport for 192.168.10.2:49156
– Creating WSA UDP transport for 192.168.10.2:49158
– Creating WSA UDP transport for 192.168.10.2:49157
– Creating WSA UDP transport for 192.168.10.2:49159
Error: invalid vector subscript

example with /Zi*
*
C:\uhd\host\build\examples\Release>tx_timed_samples.exe
Win32; Microsoft Visual C++ version 10.0; Boost_105100;
UHD_003.004.004-255-g4c2
254b9

Creating the usrp device with: …
– Opening a USRP2/N-Series device…
– Current recv frame size: 1472 bytes
– Current send frame size: 1472 bytes
– Creating WSA UDP transport for 192.168.10.2:49156
– Creating WSA UDP transport for 192.168.10.2:49158
– Creating WSA UDP transport for 192.168.10.2:49157
– Creating WSA UDP transport for 192.168.10.2:49159
Using Device: Single USRP:
Device: USRP2 / N-Series Device
Mboard 0: N210r4
RX Channel: 0
RX DSP: 0
RX Dboard: A
RX Subdev: SBXv3 RX
TX Channel: 0
TX DSP: 0
TX Dboard: A
TX Subdev: SBXv3 TX

Setting TX Rate: 6.250000 Msps…
Actual TX Rate: 6.250000 Msps…

Setting device timestamp to 0…
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 363 samples
Sent packet: 199 samples

Waiting for async burst ACK… success

Done!

On 11/19/2012 08:49 AM, Seth Hollar wrote:

Hi,
This is mostly a UHD questions.

http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

:slight_smile:

I have taken the source code of UHD and compiled with the CMAKE option
under Windows 7 using Visual Studio 2010 with Boost 1.51.

Some of the examples (rx_timed_samples and tx_timed_samples) do not work
right giving an “/invalid vector subscript/” error when run.

However, when I add the compile option /Zi (Debug Program information,
Program Database (/Zi)), then they seem to work.

Sounds like an ABI mismatch. Perhaps you also build the UHD library in
Debug mode. Make sure that the client app and the library build type
match.

-josh