Forums - Symphony SDK Linking Error For Visual Studio

2 posts / 0 new
Last post
Symphony SDK Linking Error For Visual Studio
jtorkelson0
Join Date: 12 Oct 16
Posts: 1
Posted: Tue, 2016-11-29 07:49

I'm trying to use the Symphony CMake project to generate the Visual Studio example projects for compiling and running in windows, so I can develop and test a native application while developing in Windows.

After following the QuickStart instructions found here: https://developer.qualcomm.com/software/symphony-system-manager-sdk/quic...

and running the CMake instructions starting at "On Microsoft Windows (at CMD prompt):", the projects give the same linker error as when I tried to manually set the project up. For example, for the symphony_examples_abort_on_cancel project:

Error    LNK1112    module machine type 'x64' conflicts with target machine type 'X86'    symphony_examples_abort_on_cancel    C:\Qualcomm\SymphonySDK\1.1.0\x86_64-windows\release\examples\x64\Debug\abort_on_cancel.obj    1    
 

I have attempted setting the machine platform to both X86 and X64 in the Configuration Manager and the Linker->Advanced->Target Machine section. I am building with Visual Studio Community 2015.

I could really use help getting past this issue. I'm building directly from the CMake output.


Thanks!

 

  • Up0
  • Down0
ajindal
Join Date: 15 Sep 16
Posts: 2
Posted: Tue, 2017-01-10 09:52

It might be that you are trying to build for 64 bit Windows (linking against 64-bit library) but are using 32-bit generator (which is default). You may want to use 64-bit generator and rebuild the example. 

It can be done by: 

cmake . –DSYMPHONY_LIB_TYPE=release-cpu –G <generator>

where <generator> is:

      "Visual Studio 14 Win64" for 64-bit 

      "Visual Studio 14" for 32-bit

Please note that quotes are necessary. User-guide has been updated to reflect this. Thanks.

 

 

 

  • Up0
  • Down0
or Register

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.