gazebosim / gz-fuel-tools

A client library and command line tools for interacting with Gazebo Fuel servers.
https://gazebosim.org
Apache License 2.0
12 stars 20 forks source link

cant build ign-fuel-tools1 on windows: %win_dir% is empty, cant found YAML (yaml-0.1), unknown include path appeared, failed to nmake, etc. #93

Open ahmadshiddiqn opened 4 years ago

ahmadshiddiqn commented 4 years ago

I use vcvarsall.bat from Visual Studio 2019 C++ (x64)

Hi, I've been trying build a plugin from source. But it needed ignition-common1 and ignition-fuel-tools1, so I tried to follow the steps to install gazebo on windows using the tutorial steps provided here

i managed to follow until step 9, when installin ign-common. I found the workaround and somehow am able to nmake install it. more problem occurs when i was trying to build ign-fuel-tools.

first of all, when running configure.bat, it expect to download and uzip the required zip files, but it failed (as with the previous steps). here's the output of said line:

c:\opt\ign-fuel-tools>call  :download_unzip_install curl-7.57.0-vc15-x64-dll-MD.zip
The system cannot find the batch label specified - download_unzip_install

c:\opt\ign-fuel-tools>call  :download_unzip_install jsoncpp-1.8.4-vc15-x64-dll-MD.zip
The system cannot find the batch label specified - download_unzip_install

c:\opt\ign-fuel-tools>call  :download_unzip_install libyaml-0.1.7-vc15-x64-md.zip
The system cannot find the batch label specified - download_unzip_install

c:\opt\ign-fuel-tools>call  :download_unzip_install libzip-1.4.0_zlip-1.2.11_vc15-x64-dll-MD.zip
The system cannot find the batch label specified - download_unzip_install

c:\opt\ign-fuel-tools>call  :install_ign_project ign-common ign-common1
The system cannot find the batch label specified - install_ign_project

the command from the batch file is

call %win_lib% :download_unzip_install curl-7.57.0-vc15-x64-dll-MD.zip
call %win_lib% :download_unzip_install jsoncpp-1.8.4-vc15-x64-dll-MD.zip
call %win_lib% :download_unzip_install libyaml-0.1.7-vc15-x64-md.zip
call %win_lib% :download_unzip_install libzip-1.4.0_zlip-1.2.11_vc15-x64-dll-MD.zip
call %win_lib% :install_ign_project ign-common ign-common1

i assume both %win_lib% and download_unzip_install are exclusive to the ignition developres' CI system as written in the top of configure.bat. it wasn't that much of an issue as the process still runs.

the second one is on finding all the package, especially the YAML package. I already installed ros, and it cant find everything except CURL package (its already on rosdeps from installing ros). so i extracted them from the files i downloaded provided in the tutorial. i placed them on rosdeps as where all the library ros was installed (including gazebo). everything except yaml were all found. it is said, it needed yaml-0.1:

c:\opt\ign-fuel-tools\build>cmake .. -G "NMake Makefiles" -DCMAKE_INSTALL_PREFIX="" -DCMAKE_BUILD_TYPE="Release" -DBUILD_TESTING:BOOL=False
-- ignition-fuel_tools1 version 1.2.0
-- Operating system is Windows
-- Looking for IgnCURL - found

-- Checking for module 'jsoncpp'
--   Found jsoncpp, version 1.8.4
-- Looking for JSONCPP - found

-- Checking for module 'yaml-0.1'
--   No package 'yaml-0.1' found
-- Could NOT find YAML (missing: YAML_FOUND)
-- Attempting manual search for yaml
-- Looking for yaml headers - not found
-- Could NOT find YAML (missing: YAML_FOUND)
-- Looking for YAML - not found

-- Checking for module 'libzip'
--   Found libzip, version 1.4.0
-- Looking for ZIP - found

-- Looking for ignition-common1 - found

-- Looking for ignition-tools - found

-- BUILD ERRORS: These must be resolved before compiling.
--      Missing: YAML
--  END BUILD ERRORS

CMake Error at C:/opt/rosdeps/x64/lib/cmake/ignition-cmake0/cmake0/IgnConfigureBuild.cmake:64 (message):
  Errors encountered in build.  Please see BUILD ERRORS above.
Call Stack (most recent call first):
  CMakeLists.txt:60 (ign_configure_build)

-- Configuring incomplete, errors occurred!
See also "C:/opt/ign-fuel-tools/build/CMakeFiles/CMakeOutput.log".

then, i realized when installing ros, there is already yaml provided, called yaml-cpp. so i looked for how to find_package for yaml-cpp. found the cmake files, and copy it to ign-cmake cmake files called FindYamlCpp.cmake, and change the CMakeList from ign_find_package(YAML REQUIRED) to YAMLCPP, and somehow it manages to keep going. with a warning, and the third error (i 'll include the warning with the third error log below).

the third error is when the cmake tried to finish it processes:

CMake Warning (dev) at C:/opt/rosdeps/x64/lib/cmake/ignition-cmake0/cmake0/IgnUtils.cmake:265 (message):
   -- THIS MESSAGE IS INTENDED FOR IGNITION-FUEL_TOOLS AUTHORS --
      (IF YOU SEE THIS, PLEASE REPORT IT)

  Could not find pkg-config information for YAMLCPP.  It was not provided by
  the find-module for the package, nor was it explicitly passed into the call
  to ign_find_package(~).  This is most likely an error in this project's use
  of ign-cmake.
Call Stack (most recent call first):
  CMakeLists.txt:39 (ign_find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Checking for module 'libzip'
--   Found libzip, version 1.4.0
-- Looking for ZIP - found

-- Looking for ignition-common1 - found

-- Looking for ignition-tools - found

-- Testing is disabled -- skipping UNIT tests
CMake Warning (dev) at C:/opt/rosdeps/x64/lib/cmake/ignition-cmake0/cmake0/IgnUtils.cmake:966 (message):

  The build script has specified some unrecognized arguments for
  ign_install_all_headers(~):

  EXCLUDE_FILES;WorldIterPrivate.hh

  Either the script has a typo, or it is using an unexpected version of
  ign-cmake.  The version of ign-cmake currently being used is 0.6.1

Call Stack (most recent call first):
  C:/opt/rosdeps/x64/lib/cmake/ignition-cmake0/cmake0/IgnUtils.cmake:426 (_ign_cmake_parse_arguments)
  include/ignition/fuel_tools/CMakeLists.txt:1 (ign_install_all_headers)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Build configuration successful
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
-- Build type: Release
-- Install prefix:
-- Configuring done
CMake Error in src/CMakeLists.txt:
  Imported target "JSONCPP::JSONCPP" includes non-existent path

    "C:/Users/scpeters/Downloads/jsoncpp-1.8.4/install/include"

  in its INTERFACE_INCLUDE_DIRECTORIES.  Possible reasons include:

  * The path was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and references files it does not
  provide.

CMake Error in src/CMakeLists.txt:
  Imported target "JSONCPP::JSONCPP" includes non-existent path

    "C:/Users/scpeters/Downloads/jsoncpp-1.8.4/install/include"

  in its INTERFACE_INCLUDE_DIRECTORIES.  Possible reasons include:

  * The path was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and references files it does not
  provide.

-- Generating done
CMake Generate step failed.  Build files cannot be regenerated correctly.

it said "JSONCPP::JSONCPP" includes path is non-existent because it refers to a directory i dont have in my pc. for some reason, the JSONCPP acknowledge its include path is on scpeters users whom i dont know. but i workaround it with creating folder with the same directory path as what JSONCPP include path acknowledged (C:/Users/scpeters/Downloads/jsoncpp-1.8.4/install/include) and it manage to finishe the configure part.

another problem arise from when i tried to nmake.

c:\opt\ign-fuel-tools\build>nmake

Microsoft (R) Program Maintenance Utility Version 14.26.28806.0
Copyright (C) Microsoft Corporation.  All rights reserved.

src\CMakeFiles\ignition-fuel_tools1.dir\build.make(477) : fatal error U1033: syntax error : '::' unexpected
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake.exe"' : return code '0x2'
Stop.

when i looked for the error source inside build.make line 477, the said line is like this (i included the line number in below snippet):

475 -- src\ignition-fuel_tools1.dll: C:\opt\rosdeps\x64\lib\ignition-common1.lib
476 -- src\ignition-fuel_tools1.dll: C:\opt\rosdeps\x64\lib\jsoncpp.lib
477 -- src\ignition-fuel_tools1.dll: ZIP::ZIP-NOTFOUND
478 -- src\ignition-fuel_tools1.dll: C:\opt\rosdeps\x64\lib\libcurl_imp.lib
479 -- src\ignition-fuel_tools1.dll: C:\opt\rosdeps\x64\lib\zlibstatic.lib

it's strange that in the configure part the ZIP is said to be found, but in the build.make, it's NOTFOUND. and so i change ZIP::ZIP-NOTFOUND the path of which zip.lib is at.

the problem seemed to be solved, so i tried running another nmake, and here's the output:

c:\opt\ign-fuel-tools\build>nmake

Microsoft (R) Program Maintenance Utility Version 14.26.28806.0
Copyright (C) Microsoft Corporation.  All rights reserved.

Scanning dependencies of target ignition-fuel_tools1
[  6%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/ClientConfig.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
ClientConfig.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): warning C4251: 'ignition::fuel_tools::ServerConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ServerConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): warning C4251: 'ignition::fuel_tools::ClientConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ClientConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>'
[ 12%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/FuelClient.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
FuelClient.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): warning C4251: 'ignition::fuel_tools::ServerConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ServerConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): warning C4251: 'ignition::fuel_tools::ClientConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ClientConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): warning C4251: 'ignition::fuel_tools::Result::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Result'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): warning C4251: 'ignition::fuel_tools::ModelIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(96): warning C4251: 'ignition::fuel_tools::Model::dataPtr': class 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Model'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(72): note: see declaration of 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(72): warning C4251: 'ignition::fuel_tools::ModelIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(42): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(38): warning C4251: 'ignition::fuel_tools::RESTResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): warning C4251: 'ignition::fuel_tools::RESTResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(67): warning C4251: 'ignition::fuel_tools::WorldIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(41): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/FuelClient.hh(309): warning C4251: 'ignition::fuel_tools::FuelClient::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::FuelClientPrivate,std::default_delete<ignition::fuel_tools::FuelClientPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::FuelClient'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/FuelClient.hh(309): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::FuelClientPrivate,std::default_delete<ignition::fuel_tools::FuelClientPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): warning C4251: 'ignition::fuel_tools::WorldIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/LocalCache.hh(100): warning C4251: 'ignition::fuel_tools::LocalCache::dataPtr': class 'std::shared_ptr<ignition::fuel_tools::LocalCachePrivate>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::LocalCache'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/LocalCache.hh(100): note: see declaration of 'std::shared_ptr<ignition::fuel_tools::LocalCachePrivate>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(97): warning C4251: 'ignition::fuel_tools::IterIds::ids': class 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/JSONParser.hh(66): note: see declaration of 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(100): warning C4251: 'ignition::fuel_tools::IterIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterIds'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(120): warning C4251: 'ignition::fuel_tools::IterModels::models': class 'std::vector<ignition::fuel_tools::Model,std::allocator<ignition::fuel_tools::Model>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterModels'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(47): note: see declaration of 'std::vector<ignition::fuel_tools::Model,std::allocator<ignition::fuel_tools::Model>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(123): warning C4251: 'ignition::fuel_tools::IterModels::modelIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterModels'
        with
        [
            _Ty=ignition::fuel_tools::Model
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::Model
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(154): warning C4251: 'ignition::fuel_tools::IterRESTIds::ids': class 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterRESTIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/JSONParser.hh(66): note: see declaration of 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(157): warning C4251: 'ignition::fuel_tools::IterRESTIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterRESTIds'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(39): warning C4251: 'ignition::fuel_tools::RestResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RestResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(44): warning C4251: 'ignition::fuel_tools::RestResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RestResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(119): warning C4251: 'ignition::fuel_tools::Rest::userAgent': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Rest'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(91): warning C4251: 'ignition::fuel_tools::WorldIterIds::ids': class 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/JSONParser.hh(75): note: see declaration of 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(94): warning C4251: 'ignition::fuel_tools::WorldIterIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterIds'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(124): warning C4251: 'ignition::fuel_tools::WorldIterRestIds::ids': class 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterRestIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/JSONParser.hh(75): note: see declaration of 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(127): warning C4251: 'ignition::fuel_tools::WorldIterRestIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterRestIds'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
[ 18%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/Helpers.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
Helpers.cc
[ 25%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/ign.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
ign.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): warning C4251: 'ignition::fuel_tools::ServerConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ServerConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): warning C4251: 'ignition::fuel_tools::ClientConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ClientConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): warning C4251: 'ignition::fuel_tools::Result::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Result'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): warning C4251: 'ignition::fuel_tools::ModelIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(96): warning C4251: 'ignition::fuel_tools::Model::dataPtr': class 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Model'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(72): note: see declaration of 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(72): warning C4251: 'ignition::fuel_tools::ModelIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(42): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(38): warning C4251: 'ignition::fuel_tools::RESTResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): warning C4251: 'ignition::fuel_tools::RESTResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(67): warning C4251: 'ignition::fuel_tools::WorldIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(41): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/FuelClient.hh(309): warning C4251: 'ignition::fuel_tools::FuelClient::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::FuelClientPrivate,std::default_delete<ignition::fuel_tools::FuelClientPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::FuelClient'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/FuelClient.hh(309): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::FuelClientPrivate,std::default_delete<ignition::fuel_tools::FuelClientPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): warning C4251: 'ignition::fuel_tools::WorldIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>'
[ 31%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/JSONParser.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
JSONParser.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): warning C4251: 'ignition::fuel_tools::ServerConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ServerConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): warning C4251: 'ignition::fuel_tools::ClientConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ClientConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): warning C4251: 'ignition::fuel_tools::ModelIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): warning C4251: 'ignition::fuel_tools::Result::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Result'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(96): warning C4251: 'ignition::fuel_tools::Model::dataPtr': class 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Model'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(72): note: see declaration of 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(72): warning C4251: 'ignition::fuel_tools::ModelIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(42): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): warning C4251: 'ignition::fuel_tools::WorldIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(67): warning C4251: 'ignition::fuel_tools::WorldIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(41): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>'
[ 37%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/LocalCache.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
LocalCache.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): warning C4251: 'ignition::fuel_tools::ServerConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ServerConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): warning C4251: 'ignition::fuel_tools::ClientConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ClientConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): warning C4251: 'ignition::fuel_tools::Result::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Result'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): warning C4251: 'ignition::fuel_tools::ModelIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(96): warning C4251: 'ignition::fuel_tools::Model::dataPtr': class 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Model'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(72): note: see declaration of 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(72): warning C4251: 'ignition::fuel_tools::ModelIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(42): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(67): warning C4251: 'ignition::fuel_tools::WorldIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(41): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/LocalCache.hh(100): warning C4251: 'ignition::fuel_tools::LocalCache::dataPtr': class 'std::shared_ptr<ignition::fuel_tools::LocalCachePrivate>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::LocalCache'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/LocalCache.hh(100): note: see declaration of 'std::shared_ptr<ignition::fuel_tools::LocalCachePrivate>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(38): warning C4251: 'ignition::fuel_tools::RESTResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): warning C4251: 'ignition::fuel_tools::RESTResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(97): warning C4251: 'ignition::fuel_tools::IterIds::ids': class 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(42): note: see declaration of 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(100): warning C4251: 'ignition::fuel_tools::IterIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterIds'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(120): warning C4251: 'ignition::fuel_tools::IterModels::models': class 'std::vector<ignition::fuel_tools::Model,std::allocator<ignition::fuel_tools::Model>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterModels'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(47): note: see declaration of 'std::vector<ignition::fuel_tools::Model,std::allocator<ignition::fuel_tools::Model>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(123): warning C4251: 'ignition::fuel_tools::IterModels::modelIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterModels'
        with
        [
            _Ty=ignition::fuel_tools::Model
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::Model
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(154): warning C4251: 'ignition::fuel_tools::IterRESTIds::ids': class 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterRESTIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(42): note: see declaration of 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(157): warning C4251: 'ignition::fuel_tools::IterRESTIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterRESTIds'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelPrivate.hh(37): warning C4251: 'ignition::fuel_tools::ModelPrivate::pathOnDisk': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelPrivate'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): warning C4251: 'ignition::fuel_tools::WorldIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(39): warning C4251: 'ignition::fuel_tools::RestResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RestResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(44): warning C4251: 'ignition::fuel_tools::RestResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RestResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(119): warning C4251: 'ignition::fuel_tools::Rest::userAgent': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Rest'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(91): warning C4251: 'ignition::fuel_tools::WorldIterIds::ids': class 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(41): note: see declaration of 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(94): warning C4251: 'ignition::fuel_tools::WorldIterIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterIds'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(124): warning C4251: 'ignition::fuel_tools::WorldIterRestIds::ids': class 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterRestIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(41): note: see declaration of 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(127): warning C4251: 'ignition::fuel_tools::WorldIterRestIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterRestIds'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
[ 43%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/Model.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
Model.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): warning C4251: 'ignition::fuel_tools::Result::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Result'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): warning C4251: 'ignition::fuel_tools::ModelIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(96): warning C4251: 'ignition::fuel_tools::Model::dataPtr': class 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Model'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(72): note: see declaration of 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelPrivate.hh(37): warning C4251: 'ignition::fuel_tools::ModelPrivate::pathOnDisk': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelPrivate'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
[ 50%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/ModelIdentifier.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
ModelIdentifier.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): warning C4251: 'ignition::fuel_tools::ServerConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ServerConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): warning C4251: 'ignition::fuel_tools::ClientConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ClientConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): warning C4251: 'ignition::fuel_tools::ModelIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>'
[ 56%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/ModelIter.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
ModelIter.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): warning C4251: 'ignition::fuel_tools::ServerConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ServerConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): warning C4251: 'ignition::fuel_tools::ClientConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ClientConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): warning C4251: 'ignition::fuel_tools::ModelIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): warning C4251: 'ignition::fuel_tools::Result::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Result'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(96): warning C4251: 'ignition::fuel_tools::Model::dataPtr': class 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Model'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(72): note: see declaration of 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(72): warning C4251: 'ignition::fuel_tools::ModelIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(42): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): warning C4251: 'ignition::fuel_tools::WorldIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(67): warning C4251: 'ignition::fuel_tools::WorldIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(41): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(38): warning C4251: 'ignition::fuel_tools::RESTResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): warning C4251: 'ignition::fuel_tools::RESTResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(97): warning C4251: 'ignition::fuel_tools::IterIds::ids': class 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/JSONParser.hh(66): note: see declaration of 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(100): warning C4251: 'ignition::fuel_tools::IterIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterIds'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(120): warning C4251: 'ignition::fuel_tools::IterModels::models': class 'std::vector<ignition::fuel_tools::Model,std::allocator<ignition::fuel_tools::Model>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterModels'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(47): note: see declaration of 'std::vector<ignition::fuel_tools::Model,std::allocator<ignition::fuel_tools::Model>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(123): warning C4251: 'ignition::fuel_tools::IterModels::modelIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterModels'
        with
        [
            _Ty=ignition::fuel_tools::Model
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::Model
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(154): warning C4251: 'ignition::fuel_tools::IterRESTIds::ids': class 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterRESTIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/JSONParser.hh(66): note: see declaration of 'std::vector<ignition::fuel_tools::ModelIdentifier,std::allocator<ignition::fuel_tools::ModelIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIterPrivate.hh(157): warning C4251: 'ignition::fuel_tools::IterRESTIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::IterRESTIds'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::ModelIdentifier
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelPrivate.hh(37): warning C4251: 'ignition::fuel_tools::ModelPrivate::pathOnDisk': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelPrivate'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
[ 62%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/REST.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
REST.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(38): warning C4251: 'ignition::fuel_tools::RESTResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): warning C4251: 'ignition::fuel_tools::RESTResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
[ 68%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/RestClient.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
RestClient.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(38): warning C4251: 'ignition::fuel_tools::RESTResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): warning C4251: 'ignition::fuel_tools::RESTResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(39): warning C4251: 'ignition::fuel_tools::RestResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RestResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(44): warning C4251: 'ignition::fuel_tools::RestResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RestResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(119): warning C4251: 'ignition::fuel_tools::Rest::userAgent': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Rest'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
[ 75%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/Result.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
Result.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): warning C4251: 'ignition::fuel_tools::Result::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Result'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>'
[ 81%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/Zip.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
Zip.cc
[ 87%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/WorldIdentifier.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
WorldIdentifier.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): warning C4251: 'ignition::fuel_tools::ServerConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ServerConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): warning C4251: 'ignition::fuel_tools::ClientConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ClientConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): warning C4251: 'ignition::fuel_tools::WorldIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>'
[ 93%] Building CXX object src/CMakeFiles/ignition-fuel_tools1.dir/WorldIter.cc.obj
cl : Command line warning D9025 : overriding '/W3' with '/W2'
WorldIter.cc
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): warning C4251: 'ignition::fuel_tools::ServerConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ServerConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(124): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ServerConfigPrivate,std::default_delete<ignition::fuel_tools::ServerConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): warning C4251: 'ignition::fuel_tools::ClientConfig::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ClientConfig'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ClientConfig.hh(199): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ClientConfigPrivate,std::default_delete<ignition::fuel_tools::ClientConfigPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): warning C4251: 'ignition::fuel_tools::ModelIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIdentifier.hh(354): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIdentifierPrivate,std::default_delete<ignition::fuel_tools::ModelIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): warning C4251: 'ignition::fuel_tools::Result::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Result'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Result.hh(98): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ResultPrivate,std::default_delete<ignition::fuel_tools::ResultPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(96): warning C4251: 'ignition::fuel_tools::Model::dataPtr': class 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Model'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/Model.hh(72): note: see declaration of 'std::shared_ptr<ignition::fuel_tools::ModelPrivate>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(72): warning C4251: 'ignition::fuel_tools::ModelIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::ModelIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/ModelIter.hh(42): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::ModelIterPrivate,std::default_delete<ignition::fuel_tools::ModelIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): warning C4251: 'ignition::fuel_tools::WorldIdentifier::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIdentifier'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIdentifier.hh(147): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIdentifierPrivate,std::default_delete<ignition::fuel_tools::WorldIdentifierPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(67): warning C4251: 'ignition::fuel_tools::WorldIter::dataPtr': class 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIter'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIter.hh(41): note: see declaration of 'std::unique_ptr<ignition::fuel_tools::WorldIterPrivate,std::default_delete<ignition::fuel_tools::WorldIterPrivate>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(38): warning C4251: 'ignition::fuel_tools::RESTResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): warning C4251: 'ignition::fuel_tools::RESTResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RESTResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(39): warning C4251: 'ignition::fuel_tools::RestResponse::data': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RestResponse'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(44): warning C4251: 'ignition::fuel_tools::RestResponse::headers': class 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>' needs to have dll-interface to be used by clients of struct 'ignition::fuel_tools::RestResponse'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/REST.hh(43): note: see declaration of 'std::map<std::string,std::string,std::less<std::string>,std::allocator<std::pair<const std::string,std::string>>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/RestClient.hh(119): warning C4251: 'ignition::fuel_tools::Rest::userAgent': class 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::Rest'
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\xstring(4575): note: see declaration of 'std::basic_string<char,std::char_traits<char>,std::allocator<char>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(91): warning C4251: 'ignition::fuel_tools::WorldIterIds::ids': class 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/JSONParser.hh(75): note: see declaration of 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(94): warning C4251: 'ignition::fuel_tools::WorldIterIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterIds'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(124): warning C4251: 'ignition::fuel_tools::WorldIterRestIds::ids': class 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterRestIds'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/JSONParser.hh(75): note: see declaration of 'std::vector<ignition::fuel_tools::WorldIdentifier,std::allocator<ignition::fuel_tools::WorldIdentifier>>'
C:\opt\ign-fuel-tools\include\ignition/fuel_tools/WorldIterPrivate.hh(127): warning C4251: 'ignition::fuel_tools::WorldIterRestIds::idIter': class 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>' needs to have dll-interface to be used by clients of class 'ignition::fuel_tools::WorldIterRestIds'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\include\vector(439): note: see declaration of 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<_Ty>>>'
        with
        [
            _Ty=ignition::fuel_tools::WorldIdentifier
        ]
[100%] Linking CXX shared library ignition-fuel_tools1.dll
LINK: command "C:\PROGRA~2\MICROS~3\2019\COMMUN~1\VC\Tools\MSVC\1426~1.288\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\ignition-fuel_tools1.dir\objects1.rsp /out:ignition-fuel_tools1.dll /implib:ignition-fuel_tools1.lib /pdb:C:\opt\ign-fuel-tools\build\src\ignition-fuel_tools1.pdb /dll /version:1.2 /machine:x64 /INCREMENTAL:NO C:\opt\rosdeps\x64\lib\ignition-common1.lib C:\opt\rosdeps\x64\lib\jsoncpp.lib C:\opt\rosdeps\x64\lib\zip.lib C:\opt\rosdeps\x64\lib\libcurl_imp.lib wldap32.lib winmm.lib ws2_32.lib crypt32.lib C:\opt\rosdeps\x64\lib\zlibstatic.lib C:\opt\rosdeps\x64\lib\ignition-math4.lib C:\opt\rosdeps\x64\lib\jsoncpp.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:ignition-fuel_tools1.dll.manifest" failed (exit code 1120) with the following output:
ClientConfig.cc.obj : MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance
   Creating library ignition-fuel_tools1.lib and object ignition-fuel_tools1.exp
ClientConfig.cc.obj : error LNK2001: unresolved external symbol __imp_yaml_parser_delete
ClientConfig.cc.obj : error LNK2001: unresolved external symbol __imp_yaml_parser_initialize
ClientConfig.cc.obj : error LNK2001: unresolved external symbol __imp_yaml_event_delete
ClientConfig.cc.obj : error LNK2001: unresolved external symbol __imp_yaml_parser_set_input_file
ClientConfig.cc.obj : error LNK2001: unresolved external symbol __imp_yaml_parser_parse
ignition-fuel_tools1.dll : fatal error LNK1120: 5 unresolved externals
NMAKE : fatal error U1077: 'C:\opt\python27amd64\Lib\site-packages\cmake\data\bin\cmake.exe' : return code '0xffffffff'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.26.28801\bin\HostX64\x64\nmake.exe"' : return code '0x2'
Stop.

at this point, im no longer have knowledge of what happened. even the workaround i tried is something i figured out by reading through the process of what happen in the files and change the line of code without expecting what will be the output. i dont have knowledge of cmake and nmake in the first place, so i dont know what to do anymore.

i dont know if this a bug or this problems just happen to me. i hope i was right by reporting it here. thank you.

in short:

Camixxx commented 3 years ago

D:\Gazebo\gz-ws\ign-fuel-tools\build>nmake install

Microsoft (R) 程序维护实用工具 14.16.27043.0 版 版权所有 (C) Microsoft Corporation。 保留所有权利。

[ 4%] Linking CXX shared library ignition-fuel_tools1.dll LINK: command "C:\PROGRA~2\MICROS~1\2017\BUILDT~1\VC\Tools\MSVC\1416~1.270\bin\Hostx86\x64\link.exe /nologo @CMakeFiles\ignition-fuel_tools1.dir\objects1.rsp /out:ignition-fuel_tools1.dll /implib:ignition-fuel_tools1.lib /pdb:D:\Gazebo\gz-ws\ign-fuel-tools\build\src\ignition-fuel_tools1.pdb /dll /version:1.2 /machine:x64 /INCREMENTAL:NO ..\install\Release\bin\libcurl.dll D:\Gazebo\gz-ws\ign-common\build\src\ignition-common1.lib ..\install\Release\lib\jsoncpp.lib ..\install\Release\lib\yaml.lib ..\install\Release\bin\libcurl.dll ..\install\Release\lib\ignition-math4.lib ..\install\Release\lib\jsoncpp.lib ..\install\Release\lib\yaml.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:ignition-fuel_tools1.dll.manifest" failed (exit code 1107) with the following output: ClientConfig.cc.obj : MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance ..\install\Release\bin\libcurl.dll : fatal error LNK1107: invalid or corrupt file: cannot read at 0x350 RRS feed NMAKE : fatal error U1077: “"C:\Program Files\CMake\bin\cmake.exe"”: 返回代码“0xffffffff” Stop. NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\nmake.exe"”: 返回代码“0x2” Stop. NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\nmake.exe"”: 返回代码“0x2” Stop.

Camixxx commented 3 years ago

D:\Gazebo\gz-ws\ign-fuel-tools\build>nmake install

Microsoft (R) 程序维护实用工具 14.16.27043.0 版 版权所有 (C) Microsoft Corporation。 保留所有权利。

[ 4%] Linking CXX shared library ignition-fuel_tools1.dll LINK: command "C:\PROGRA~2\MICROS~1\2017\BUILDT~1\VC\Tools\MSVC\1416~1.270\bin\Hostx86\x64\link.exe /nologo @CMakeFiles\ignition-fuel_tools1.dir\objects1.rsp /out:ignition-fuel_tools1.dll /implib:ignition-fuel_tools1.lib /pdb:D:\Gazebo\gz-ws\ign-fuel-tools\build\src\ignition-fuel_tools1.pdb /dll /version:1.2 /machine:x64 /INCREMENTAL:NO ..\install\Release\bin\libcurl.dll D:\Gazebo\gz-ws\ign-common\build\src\ignition-common1.lib ..\install\Release\lib\jsoncpp.lib ..\install\Release\lib\yaml.lib ..\install\Release\bin\libcurl.dll ..\install\Release\lib\ignition-math4.lib ..\install\Release\lib\jsoncpp.lib ..\install\Release\lib\yaml.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:ignition-fuel_tools1.dll.manifest" failed (exit code 1107) with the following output: ClientConfig.cc.obj : MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance ..\install\Release\bin\libcurl.dll : fatal error LNK1107: invalid or corrupt file: cannot read at 0x350 RRS feed NMAKE : fatal error U1077: “"C:\Program Files\CMake\bin\cmake.exe"”: 返回代码“0xffffffff” Stop. NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\nmake.exe"”: 返回代码“0x2” Stop. NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.16.27023\bin\HostX86\x86\nmake.exe"”: 返回代码“0x2” Stop.

I refine it by change the build.make file. Change every ..\install\Release\bin\libcurl.dll to ..\install\Release\lib\libcurl_imp.lib

IliaTraichev commented 3 years ago

Greetings. For ahmadshiddiqn I suggest you start over by deleting the entire build folder in your ign-fuel-tools. Follow the tutorial for Gazebo9 for windows till the .\configure command of step 11. You should have downloaded and extracted all the dependencies listed in step 2. If the command prompt tells you that you are missing something then go to ..\gz-ws\ign-fuel-tools\build and open the CMakeCache.txt. There find the lines where it had tried to find the missing files and set the path for each of their configurations, includes and libraries. You may need to build ignition-tools as well because it was needed for me. Set the paths for only those it is missing that are causing the build warnings. It is also important that you specify the library paths to the .lib files themselves and set the CMAKE_INSTALL_PREFIX path like shown in the tutorial. Now execute nmake. Hopefully no errors pop up. Then do nmake install. You should have the ign-fuel-tools files build. It worked for me. I wish you luck, ahmadshiddiqn.