This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA2EVM5777: issues in rebuilding TIDL import tool both using command and bash file

Part Number: TDA2EVM5777

Hi everybody , 

In this page : https://e2e.ti.com/support/processors/f/791/t/689876 is mentioned that by updating the "tidl_tfImport.cpp" and re-building the import tool in the release package we can modify or add layers.   We tried to rebuild the import tool as described in the TIDeepLearningLibrary_UserGuide.pdf (section 3.6.1).

I get errore both on command and on bashTIDL import compiling issue.docx ( see screenshot attached )  .How can I proceed  ?

I m on WIN10 64 bits 

best regrads

Carlo

  • Hi Carlo,

    First run "vcvarsall.bat" batch file from that folder and then run gmake commands.

    https://e2e.ti.com/support/processors/f/791/t/808662

    Thanks,

    Praveen

  • Hi Praveen,

    I run the "vcvarsall.bat" file as mentioned in the link you provided. The batch file executed correctly but I'm having the same issue while trying to rebuild the importTool of TIDL.

    As described in the User Guide, I have to  go to {TIDL_install_path}\utils\tidlModelImport and run

    gmake

    The error I have is : 

    The system cannot find the path specified.
    gmake: *** [..\\.gitignore] Error 1


    The only difference from the User guide, is the path that I'm running gmake, since the folder tidlModelImport is located inside \ti_dl\utils\importTool\

  • Hi,

    Hope you have set the correct path for "gmake" command.

    Also, you have downloaded the protobuf library version 3.2.0rc2 as indicated in the user guide. 

    Please try this below command and check? 

    >>gmake PROTOBUF_LIB_DIR=C:\ti\protobuf-3.2.0rc2\Release PROTOBUF_INC_DIR=C:\ti\protobuf-3.2.0rc2\src all

    Thanks,

    Praveen

  • Hi Praveen,

    Thanks for your reply. I had installed the recent release of protobuf library (3.8.0). I removed it and built the version 3.2.0rc2. I compiled it using Visual Studio so the paths are a bit different from what you have written in your comment. In this case, the release folder would be under:

    C:\Path\to\protobuf-3.2.0rc2\cmake\build\solution\Release (I've uploaded a picture below showing the content of the files, to be sure we are pointing to the same folder)

    and the src folder

    C:\Path\to\protobuf-3.2.0rc2\src

    So in this case the command would be:

    >gmake PROTOBUF_LIB_DIR=C:\Path\to\protobuf-3.2.0rc2\cmake\build\solution\Release PROTOBUF_INC_DIR=C:\Path\to\protobuf-3.2.0rc2\src all


    Anyway the output remains the same as in the previous tries. 

    Thank you

    Aleksander


  • Hi Aleksander,

    Could please run gmake with SHOW_COMMANDS=1 and share the log file ?

    >> gmake SHOW_COMMANDS=1 PROTOBUF_LIB_DIR=C:\Path\to\protobuf-3.2.0rc2\cmake\build\solution\Release PROTOBUF_INC_DIR=C:\Path\to\protobuf-3.2.0rc2\src  all >> build_log.txt 

    Thanks,

    Praveen

  • Hi Praveen,

    I uploaded the log file.

    "C:\ti\ccsv5\utils\cygwin"\mkdir -p  ..\\
    

  • Hi Aleksander,

    Let us try below steps and check.. 

    1. Install code composer studio version 7.4.0 from http://software-dl.ti.com/ccs/esd/documents/ccs_downloads.html  to the C drive "ti" folder, if you have not installed it already. Even CCSv5 is also okay if you have it already .

    2.Please  install all the tools by following steps in section 3.3 Building Sample Test Application in the TIDL user guide

    3. Follow section 3.3.4 to update the all environment variables in config.mk file in the makerules folder as shown as example below...

    DSP_TOOLS ?="C:\ti\ccsv7\tools\compiler\ti-cgt-c742"
    ARP32_TOOLS ?="C:\ti\ccsv7\tools\compiler\arp32_1.0.7"
    TIARM_TOOLS ?="/datalocal1/ti_components/cg_tools/linux/ti-cgt-arm_5.2.5"
    XDAIS_PATH ?="C:\ti\xdais_7_24_00_04"
    UTILS_PATH ?="C:\ti\ccsv7\utils\cygwin"

    4. Then run gmake command (use from CCS) as below..

    >> C:\ti\ccsv7\utils\bin\gmake PROTOBUF_LIB_DIR=C:\Path\to\protobuf-3.2.0rc2\cmake\build\solution\Release PROTOBUF_INC_DIR=C:\Path\to\protobuf-3.2.0rc2\src  all

    Please try above steps and let us know the results.

    Thanks,

    Praveen

  • Hi Praveen ,

    I downloaded and installed v7.4 of CCS. From the paths you specified it seems like DSP_TOOLS and ARP32_TOOLS are part of CCS since they are located inside ccsv7 folder. In my case these two folders do not exist. Following the User guide I installed Code Generation Tools, and the only folder added is:

    • C:\ti\ti-cgt-c6000_8.3.1 (screenshot of folder below)

  • Hi Aleksander,

    These DSP_TOOLS and ARP32_TOOLS are NOT part of CCS installation, I downloaded them separately and installed in "C:\ti\ccsv7\tools\compiler\" folder as mentioned in the user guide section 3.3.2 Installing Code Generation Tools..

    1. DSP_TOOLS (cg tools) version 7.4.2 can be downloaded from below link

    http://software-dl.ti.com/codegen/non-esd/downloads/download.htm

    2. ARP32_TOOLS can be downloaded from the same CDDS link where TIDL release is downloaded, because these tools are not pubically available.

    3. After that set all the paths properly in config.mk file as mentioned in my previous post and then try to build.

    Thanks,

    Praveen     

  • Hi Praveen,

    I think the paths now are set correctly inside config.mk.

    DSP_TOOLS           ?="C:\ti\ccsv7\tools\compiler\c6000_7.4.24"
    ARP32_TOOLS         ?="C:\SDK\ti_components\cg_tools\windows\arp32_1.0.7"
    TIARM_TOOLS         ?="/datalocal1/ti_components/cg_tools/linux/ti-cgt-arm_5.2.5"
    XDAIS_PATH          ?="C:\ti\xdais_7_24_00_04"
    UTILS_PATH          ?="C:\ti\ccsv5\utils\cygwin"

    Still, the build gives same error (see screenshot)

  • Hi Aleksander,

    Set UTILS_PATH also from ccsv7 folder, after that run "vcvarsall.bat" batch file then run gmake command.

    UTILS_PATH          ?="C:\ti\ccsv7\utils\cygwin"

    Thanks,

    Praveen

  •  Thanks for your quick answers,

    Now the building seems to start correctly until this point:

    libprotocd.lib is not located in the folder. I think I uploaded a screenshot of that folder in the threads above.

  • Hi Aleksander,

    This is Debug build Vs Release build issue... I think you have built protobuf libraries only for Release build but the import tool is building for Debug mode so this issue...

    Could try below gmake command..

    >>gmake TARGET_BUILD=release PROTOBUF_LIB_DIR=C:\Path\to\protobuf-3.2.0rc2\cmake\build\solution\Release PROTOBUF_INC_DIR=C:\Path\to\protobuf-3.2.0rc2\src  all

    Thanks,

    Praveen

  • Thank you Praveen,

    That solved the problem, but another error came up:

  • This could because of the protobuf libraries may not be built with the same machine or compiler that import tool is building. Could you please re-build the protobuf libraries with visual studio 2012 and check?

    Thanks,

    Praveen    

  • Both import tool and protobuf libraries are buit on the same machine running win10 on 64 bits. I am using Visual studio 2017 to build the protobuf library. Is it ok?

  • Are you using "vcvarsall.bat" batch file also from Visual studio 2017 to build Import tool?

  • Yes from:

    "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat"

  • Okay, in that case I am not sure about this behavior with Visual studio 2017. 

    Only suggestion I can give is try once by building both protobuf and Import with Visual studio 2012 as mentioned in user guide.

    Thanks,

    Praveen

  • Ok I will try, but can the library be built on 64 bit machine?

  • Hi Praveen,

    Even after building the protobuf library with VS 2012, I still have the same error:

    libprotobuf.lib(coded_stream.cc.obj) : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'
    gmake: *** [outfile] Error 1112


  • Are you using "vcvarsall.bat" batch file also from Visual studio 2012?

  • Yes, this is the command which I run:

    "C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\vcvarsall.bat"

  • Okay.

    Could please run gmake with SHOW_COMMANDS=1 and share the build log, I will check and come back

    Thanks,

    Praveen

  • Thank you.

    "C:\ti\ccsv7\utils\cygwin"\mkdir -p  "out" || cd "out"
    if exist ..\tidl_model_import.out.exe del ..\tidl_model_import.out.exe
    LINK C:\Path\to\protobuf-3.2.0rc2\cmake\build\Release/libprotoc.lib C:\Path\to\protobuf-3.2.0rc2\cmake\build\Release/libprotobuf.lib    /DEBUG  /nologo /MACHINE:X86 /OUT:..\tidl_model_import.out.exe  C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\..\..\..\common\configparser.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\tidl_import_main.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\tidl_import_config.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\tidl_import_common.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\tidl_tfImport.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\tidl_caffeImport.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\allocation_description.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\attr_value.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\cost_graph.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\device_attributes.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\function.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\graph.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\kernel_def.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\log_memory.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\node_def.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\op_def.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\resource_handle.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\step_stats.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\summary.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\tensor.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\tensor_description.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\tensor_shape.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\tensor_slice.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\types.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\variable.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\tfImportCc\proto_cc\tensorflow\core\framework\versions.pb.obj C:\SDK\ti_components\algorithms\REL.TIDL.01.01.03.00\out\PC\dsp\release\modules\ti_dl\utils\importTool\tidlModelImport\..\..\caffeImportCc\caffe.pb.obj 
    libprotobuf.lib(coded_stream.cc.obj) : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'
    

  • Hi Aleksander,

    The error is because of protobuf library could be built for 64 bit (X64) target, but the importTool is building for X86 (32-bit) target. 

    Could you please re-build protobuf library for X86 and check.

    Thanks,

    Praveen

     

     

  • Hi Praveen,

    After many trials, I was not able to build that version of protobuf for x86. When I changed configuration Visual studio complained:

     LNK1112: module machine type 'x64' conflicts with target machine type 'X86'

    Do you have any suggestion on how to build the protobuf x86 on a x64 machine? Or another workaround? 

    Thank you,

    Aleksander

  • Hi Aleksander,

    Okay, I will come back on the steps to build protobuf for x86.

    Meanwhile as a workaround you can try to build importTool for X64 ( as you had protobuf library for X64) by changing /MACHINE:X86 to /MACHINE:X64 in rules.mk file in makerules folder, but note that we haven't validated this X64 executable.

    Thanks,

    Praveen

  • Hi Aleksander,

    For building protobuf for x86, we selected x86 compiler while creating visual studio project for protobuf.

    Could you please try using x86 compiler to build protobuf?

    Thanks,

    Praveen  

  • Hi Praveen,

    What do you mean by  x86 compiler? While creating VS project there are two oprions for the parameter: Win64 or ARM. There is also the other possibility where it can be changed inside VS by changing the platform in configuration properties. If you are refering to the second case, this gave me the same error: LNK1112: module machine type 'x86' conflicts with target machine type 'x64'

  • Cmake shall show win32 also as an option if you have installed the MSVC tool chains for x86

  • Hi Kumar,

    I found out that is was enough to not specify any argument while generating VS project, and the generated project is for x86. In the manual of protobuf library it was wirtten to secify Win64 as option.

    Anyway I installed the library for x86 successfully, and now while compiling the import tool I have this problem:

  • Hi,

    This header file should be part of "protobuf-3.2.0rc2\src\google\protobuf\io " folder .

    Can you check why don't you have this file "google/protobuf/io/coded_stream.h" in C:\Path\to\protobuf-3.2.0rc2\src folder?

    Thanks,

    Praveen

  • Hi Praveen,

    My bad, I had a different name of the protobuf folder after re-building it. Now my protobuf folder is:

    C:\Path\to\protobuf\....

    Now, after trying to build with:

    gmake TARGET_BUILD=release PROTOBUF_LIB_DIR=C:\Path\to\protobuf\cmake\build\solution\Release PROTOBUF_INC_DIR=C:\Path\to\protobuf\src  all

    I got too many errors. I uploaded the build log.

    compiling tidl_import_common.cpp
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    tidl_import_common.cpp
    compiling tidl_tfImport.cpp
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    tidl_tfImport.cpp
    compiling tidl_caffeImport.cpp
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    tidl_caffeImport.cpp
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\allocation_description.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    allocation_description.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\attr_value.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    attr_value.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\cost_graph.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    cost_graph.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\device_attributes.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    device_attributes.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\function.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    function.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\graph.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    graph.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\kernel_def.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    kernel_def.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\log_memory.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    log_memory.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\node_def.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    node_def.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\op_def.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    op_def.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\resource_handle.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    resource_handle.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\step_stats.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    step_stats.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\summary.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    summary.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\tensor.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    tensor.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\tensor_description.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    tensor_description.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\tensor_shape.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    tensor_shape.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\tensor_slice.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    tensor_slice.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\types.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    types.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\variable.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    variable.pb.cc
    compiling ..\..\tfImportCc\proto_cc\tensorflow\core\framework\versions.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    versions.pb.cc
    compiling ..\..\caffeImportCc\caffe.pb.cc
    cl : Command line warning D9025 : overriding '/MD' with '/MT'
    caffe.pb.cc
    libprotobuf.lib(common.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(text_format.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(strtod.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(coded_stream.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(zero_copy_stream_impl.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(message_lite.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(arena.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(generated_message_util.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(once.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(unknown_field_set.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(descriptor.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(message.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(wire_format_lite.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(generated_message_reflection.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(reflection_ops.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(repeated_field.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(map_field.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(arenastring.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(wire_format.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(status.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(int128.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(dynamic_message.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(zero_copy_stream_impl_lite.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(tokenizer.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(any.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(stringprintf.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(strutil.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(zero_copy_stream.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(atomicops_internals_x86_msvc.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(descriptor_database.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(descriptor.pb.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(substitute.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(structurally_valid.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(extension_set_heavy.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    libprotobuf.lib(extension_set.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1900' doesn't match value '1700' in tidl_import_common.obj
    LIBCMT.lib(stdexcpt.obj) : error LNK2005: "public: __thiscall std::bad_cast::bad_cast(class std::bad_cast const &)" (??0bad_cast@std@@QAE@ABV01@@Z) already defined in libprotobuf.lib(int128.obj)
    LIBCMT.lib(stdexcpt.obj) : error LNK2005: "public: __thiscall std::exception::exception(class std::exception const &)" (??0exception@std@@QAE@ABV01@@Z) already defined in libprotobuf.lib(common.obj)
    LIBCMT.lib(stdexcpt.obj) : error LNK2005: "public: virtual __thiscall std::bad_cast::~bad_cast(void)" (??1bad_cast@std@@UAE@XZ) already defined in libprotobuf.lib(common.obj)
    LIBCMT.lib(stdexcpt.obj) : error LNK2005: "public: virtual __thiscall std::exception::~exception(void)" (??1exception@std@@UAE@XZ) already defined in libprotobuf.lib(common.obj)
    LIBCMT.lib(stdexcpt.obj) : error LNK2005: "public: virtual char const * __thiscall std::exception::what(void)const " (?what@exception@std@@UBEPBDXZ) already defined in libprotobuf.lib(common.obj)
    LIBCMT.lib(printf.obj) : error LNK2005: _printf already defined in libprotobuf.lib(text_format.obj)
    libprotobuf.lib(substitute.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(extension_set_heavy.obj) : error LNK2019: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z) referenced in function "public: int __thiscall google::protobuf::internal::ExtensionSet::Extension::SpaceUsedExcludingSelf(void)const " (?SpaceUsedExcludingSelf@Extension@ExtensionSet@internal@protobuf@google@@QBEHXZ)
    libprotobuf.lib(extension_set.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(strutil.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(zero_copy_stream.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(descriptor_database.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(descriptor.pb.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(zero_copy_stream_impl_lite.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(tokenizer.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(any.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(stringprintf.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(wire_format.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(status.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(int128.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(dynamic_message.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(reflection_ops.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(repeated_field.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(map_field.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(arenastring.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(descriptor.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(message.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(wire_format_lite.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(generated_message_reflection.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(zero_copy_stream_impl.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(message_lite.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(generated_message_util.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(unknown_field_set.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(common.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(text_format.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(strtod.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(coded_stream.obj) : error LNK2001: unresolved external symbol "void __cdecl operator delete(void *,unsigned int)" (??3@YAXPAXI@Z)
    libprotobuf.lib(extension_set.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(zero_copy_stream_impl_lite.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(descriptor_database.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(descriptor.pb.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(extension_set_heavy.obj) : error LNK2019: unresolved external symbol ___std_terminate referenced in function "private: bool __thiscall google::protobuf::internal::ExtensionSet::ParseMessageSetItem(class google::protobuf::io::CodedInputStream *,class google::protobuf::internal::ExtensionFinder *,class google::protobuf::internal::MessageSetFieldSkipper *)" (?ParseMessageSetItem@ExtensionSet@internal@protobuf@google@@AAE_NPAVCodedInputStream@io@34@PAVExtensionFinder@234@PAVMessageSetFieldSkipper@234@@Z)
    libprotobuf.lib(map_field.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(status.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(int128.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(dynamic_message.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(unknown_field_set.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(descriptor.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(message.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(generated_message_reflection.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(common.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(text_format.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(zero_copy_stream_impl.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(arena.obj) : error LNK2001: unresolved external symbol ___std_terminate
    libprotobuf.lib(common.obj) : error LNK2019: unresolved external symbol ___acrt_iob_func referenced in function "void __cdecl google::protobuf::internal::DefaultLogHandler(enum google::protobuf::LogLevel,char const *,int,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?DefaultLogHandler@internal@protobuf@google@@YAXW4LogLevel@23@PBDHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
    libprotobuf.lib(text_format.obj) : error LNK2001: unresolved external symbol ___acrt_iob_func
    libprotobuf.lib(common.obj) : error LNK2019: unresolved external symbol ___stdio_common_vfprintf referenced in function _fprintf
    libprotobuf.lib(text_format.obj) : error LNK2001: unresolved external symbol ___stdio_common_vfprintf
    libprotobuf.lib(common.obj) : error LNK2019: unresolved external symbol ___stdio_common_vsprintf referenced in function __snprintf
    libprotobuf.lib(strtod.obj) : error LNK2001: unresolved external symbol ___stdio_common_vsprintf
    libprotobuf.lib(stringprintf.obj) : error LNK2001: unresolved external symbol ___stdio_common_vsprintf
    libprotobuf.lib(strutil.obj) : error LNK2001: unresolved external symbol ___stdio_common_vsprintf
    libprotobuf.lib(common.obj) : error LNK2019: unresolved external symbol _terminate referenced in function "class std::error_code __cdecl std::make_error_code(enum std::io_errc)" (?make_error_code@std@@YA?AVerror_code@1@W4io_errc@1@@Z)
    libprotobuf.lib(zero_copy_stream_impl.obj) : error LNK2001: unresolved external symbol _terminate
    libprotobuf.lib(status.obj) : error LNK2001: unresolved external symbol _terminate
    libprotobuf.lib(int128.obj) : error LNK2001: unresolved external symbol _terminate
    libprotobuf.lib(common.obj) : error LNK2019: unresolved external symbol ___std_exception_copy referenced in function "public: __thiscall google::protobuf::FatalException::FatalException(class google::protobuf::FatalException const &)" (??0FatalException@protobuf@google@@QAE@ABV012@@Z)
    libprotobuf.lib(zero_copy_stream_impl.obj) : error LNK2001: unresolved external symbol ___std_exception_copy
    libprotobuf.lib(status.obj) : error LNK2001: unresolved external symbol ___std_exception_copy
    libprotobuf.lib(int128.obj) : error LNK2001: unresolved external symbol ___std_exception_copy
    libprotobuf.lib(common.obj) : error LNK2019: unresolved external symbol ___std_exception_destroy referenced in function "public: virtual __thiscall google::protobuf::FatalException::~FatalException(void)" (??1FatalException@protobuf@google@@UAE@XZ)
    libprotobuf.lib(zero_copy_stream_impl.obj) : error LNK2001: unresolved external symbol ___std_exception_destroy
    libprotobuf.lib(status.obj) : error LNK2001: unresolved external symbol ___std_exception_destroy
    libprotobuf.lib(int128.obj) : error LNK2001: unresolved external symbol ___std_exception_destroy
    libprotobuf.lib(common.obj) : error LNK2019: unresolved external symbol "int __cdecl std::_Execute_once(struct std::once_flag &,int (__stdcall*)(void *,void *,void * *),void *)" (?_Execute_once@std@@YAHAAUonce_flag@1@P6GHPAX1PAPAX@Z1@Z) referenced in function "class std::error_code __cdecl std::make_error_code(enum std::io_errc)" (?make_error_code@std@@YA?AVerror_code@1@W4io_errc@1@@Z)
    libprotobuf.lib(zero_copy_stream_impl.obj) : error LNK2001: unresolved external symbol "int __cdecl std::_Execute_once(struct std::once_flag &,int (__stdcall*)(void *,void *,void * *),void *)" (?_Execute_once@std@@YAHAAUonce_flag@1@P6GHPAX1PAPAX@Z1@Z)
    libprotobuf.lib(status.obj) : error LNK2001: unresolved external symbol "int __cdecl std::_Execute_once(struct std::once_flag &,int (__stdcall*)(void *,void *,void * *),void *)" (?_Execute_once@std@@YAHAAUonce_flag@1@P6GHPAX1PAPAX@Z1@Z)
    libprotobuf.lib(int128.obj) : error LNK2001: unresolved external symbol "int __cdecl std::_Execute_once(struct std::once_flag &,int (__stdcall*)(void *,void *,void * *),void *)" (?_Execute_once@std@@YAHAAUonce_flag@1@P6GHPAX1PAPAX@Z1@Z)
    libprotobuf.lib(text_format.obj) : error LNK2019: unresolved external symbol __ultod3 referenced in function "private: bool __thiscall google::protobuf::TextFormat::Parser::ParserImpl::ConsumeDouble(double *)" (?ConsumeDouble@ParserImpl@Parser@TextFormat@protobuf@google@@AAE_NPAN@Z)
    libprotobuf.lib(descriptor.obj) : error LNK2001: unresolved external symbol __ultod3
    libprotobuf.lib(descriptor.obj) : error LNK2019: unresolved external symbol __ltod3 referenced in function "private: bool __thiscall google::protobuf::DescriptorBuilder::OptionInterpreter::SetOptionValue(class google::protobuf::FieldDescriptor const *,class google::protobuf::UnknownFieldSet *)" (?SetOptionValue@OptionInterpreter@DescriptorBuilder@protobuf@google@@AAE_NPBVFieldDescriptor@34@PAVUnknownFieldSet@34@@Z)
    libprotobuf.lib(map_field.obj) : error LNK2019: unresolved external symbol __dtoui3 referenced in function "private: unsigned int __thiscall google::protobuf::Map<class google::protobuf::MapKey,class google::protobuf::MapValueRef>::InnerMap::Seed(void)const " (?Seed@InnerMap@?$Map@VMapKey@protobuf@google@@VMapValueRef@23@@protobuf@google@@ABEIXZ)
    libprotobuf.lib(int128.obj) : error LNK2019: unresolved external symbol ___stdio_common_vsprintf_s referenced in function _sprintf_s
    ..\tidl_model_import.out.exe : fatal error LNK1120: 13 unresolved externals
    gmake: *** [outfile] Error 1120

  • Hi,

    These errors could be because of mismatch in the Visual studio versions used to build for protobuf and importTool. Please use Visual studio 2012 for both. Looks like protobuf was built with higher Visual studio version (> VS 2012), please built protobuf also with VS 2012 and check.

    You can refer to below stack overflow reference for this kind of issue.

    https://stackoverflow.com/questions/12398809/c-boost-filesystem-mismatch-detected-for-msc-ver-value-1700-doesnt

    Thanks,

    Praveen 

  • Hi Praveen,

    Building with VS2012 generated some error due to limitations of VS2012 std::tuple arguments. So gmock and gtest were not build but the library files are created. I tried to run gmake with the new files generated and now I didn't have any output message.

    Is that ok?

    After I tried to build the second time I got a message : 

    LINK : ..\tidl_model_import.out.exe not found or not built by the last incremental link; performing full link

  • Hi Aleksander,

    Is the executable file (tidl_model_import.out.exe) generated ? if so you can ignore this message.  

    Thanks,

    Praveen

  • Hi.

    Yes, just to be sure I renamed the old tidl_model_import.out.exe and re-build. The executable was re-generated. Is this a good check that it builds successfully?

    Thanks,

    Aleksander. 

  • Hi,

    Yes, correct.

    Can we close this thread now? If so please click on "verify answer" to close this thread.

    Thanks,

    Praveen

  • Hi,

    Yes it can be closed. It should be verified by Carlo because he opened the thread I think.

    Thank you for your help.

    Regards,

    Aleksander

  • Hi,

    Okay, thank you. I am closing this thread.

    Regards,

    Praveen