Hi Paul,

I was able to successfully build a qpidd broker using Visual Studio 2017, x64.

* For Boost I downloaded 
sourceforge.net/projects/boostfiles/boost_binaries/boost_1_65_0-msvc-14.1-64.exe
 and installed it.
* To use this version of Boost I had to coerce CMake into finding the msvc-14 
boost when running the msvc-15 compiler by gimmicking the Boost_COMPILER 
setting in the cmake command line. (I'm suprised that this works. Typically I 
refuse to build executables using  libraries that are linked to different MSVC 
runtimes. It's a bad practice.)
* The cmake command line was:
  CMake -G "Visual Studio 15 2017 Win64" ^
    "-DBUILD_BINDING_DOTNET=OFF" ^
    "-DBUILD_DOCS=No" ^
    "-DCMAKE_INSTALL_PREFIX=D:\Users\git\qpid-cpp\install_2017_x64" ^
    "-DBoost_COMPILER=-vc141" ^
    "-DBOOST_ROOT=D:\boost\boost-win-1.65-64bit-vs2015" ^
    "-DINSTALL_QMFGEN=No" ^
    D:\Users\git\qpid-cpp
  Note that qpid-proton was built and installed to the 
qpid-cpp\install_2017_x64 directory.
* cmake  --version: 3.9.4
* python --version: 2.7.10
* The cmake/build was done using "x64 Native Tools Command Prompt" and not an 
ordinary command prompt.

This exercise exposed only one trivial error in 
https://issues.apache.org/jira/browse/QPID-8037 whose fix is committed already.

I have not done an x86 32-bit build yet. Nor have I unraveled the mysteries of 
Visual Studio's new directory layout that accommodates side-by-side installs of 
different versions (community, professional, ultimate, ...) of Visual Studio 
2017.

Basically, the builds should work and CMake produces solution files with proper 
dependencies. This is good news.

-Chuck


----- Original Message -----
> From: "Paul A. Flores" <[email protected]>
> To: [email protected]
> Sent: Wednesday, November 15, 2017 11:42:42 AM
> Subject: Re: Need help compiling in Visual Studio QPID C++
> 
> Hi Chuck,
> 
> 
> Its a 64-bit x64 build I am attempting.
> 
> 
> Thanks for the build order it will certainly help.
> 
> 
> Paul
> 
> 
> ________________________________
> From: Chuck Rolke <[email protected]>
> Sent: Wednesday, November 15, 2017 9:30 AM
> To: [email protected]
> Subject: Re: Need help compiling in Visual Studio QPID C++
> 
> Hi Paul,
> 
> I could try a 2017 build in my setup(s). Are you building 32-bit x86 or
> 64-bit x64?
> 
> A recent build of qpid-cpp 1.36 built items in this order.
> 
> -Chuck
> 
> 1>------ Build started: Project: qpidtypes, Configuration: RelWithDebInfo
> Win32 ------
> 2>------ Build started: Project: shlibtest, Configuration: RelWithDebInfo
> Win32 ------
> 3>------ Build started: Project: management_python_build, Configuration:
> RelWithDebInfo Win32 ------
> 4>------ Build started: Project: dlclose_noop, Configuration: RelWithDebInfo
> Win32 ------
> 5>------ Build started: Project: qpidcommon, Configuration: RelWithDebInfo
> Win32 ------
> 6>------ Build started: Project: qpidclient, Configuration: RelWithDebInfo
> Win32 ------
> 7>------ Build started: Project: qpidbroker, Configuration: RelWithDebInfo
> Win32 ------
> 8>------ Build started: Project: qpidmessaging, Configuration: RelWithDebInfo
> Win32 ------
> 9>------ Build started: Project: resuming_receiver, Configuration:
> RelWithDebInfo Win32 ------
> 10>------ Build started: Project: replaying_sender, Configuration:
> RelWithDebInfo Win32 ------
> 11>------ Build started: Project: receiver, Configuration: RelWithDebInfo
> Win32 ------
> 12>------ Build started: Project: txjob, Configuration: RelWithDebInfo Win32
> ------
> 13>------ Build started: Project: txshift, Configuration: RelWithDebInfo
> Win32 ------
> 14>------ Build started: Project: qpid-txtest, Configuration: RelWithDebInfo
> Win32 ------
> 15>------ Build started: Project: qpid-topic-publisher, Configuration:
> RelWithDebInfo Win32 ------
> 16>------ Build started: Project: qpid-topic-listener, Configuration:
> RelWithDebInfo Win32 ------
> 17>------ Build started: Project: qpid-perftest, Configuration:
> RelWithDebInfo Win32 ------
> 18>------ Build started: Project: qpid-latency-test, Configuration:
> RelWithDebInfo Win32 ------
> 19>------ Build started: Project: qpid-client-test, Configuration:
> RelWithDebInfo Win32 ------
> 20>------ Build started: Project: publish, Configuration: RelWithDebInfo
> Win32 ------
> 21>------ Build started: Project: header_test, Configuration: RelWithDebInfo
> Win32 ------
> 22>------ Build started: Project: ha_test_max_queues, Configuration:
> RelWithDebInfo Win32 ------
> 23>------ Build started: Project: echotest, Configuration: RelWithDebInfo
> Win32 ------
> 24>------ Build started: Project: consume, Configuration: RelWithDebInfo
> Win32 ------
> 25>------ Build started: Project: declare_queues, Configuration:
> RelWithDebInfo Win32 ------
> 26>------ Build started: Project: datagen, Configuration: RelWithDebInfo
> Win32 ------
> 27>------ Build started: Project: qmf2, Configuration: RelWithDebInfo Win32
> ------
> 28>------ Build started: Project: server_reconnect, Configuration:
> RelWithDebInfo Win32 ------
> 29>------ Build started: Project: server, Configuration: RelWithDebInfo Win32
> ------
> 30>------ Build started: Project: spout, Configuration: RelWithDebInfo Win32
> ------
> 31>------ Build started: Project: sender, Configuration: RelWithDebInfo Win32
> ------
> 32>------ Build started: Project: qpid-txtest2, Configuration: RelWithDebInfo
> Win32 ------
> 33>------ Build started: Project: qpid-send, Configuration: RelWithDebInfo
> Win32 ------
> 34>------ Build started: Project: qpid-receive, Configuration: RelWithDebInfo
> Win32 ------
> 35>------ Build started: Project: qpid-ping, Configuration: RelWithDebInfo
> Win32 ------
> 36>------ Build started: Project: msg_group_test, Configuration:
> RelWithDebInfo Win32 ------
> 37>------ Build started: Project: map_sender, Configuration: RelWithDebInfo
> Win32 ------
> 38>------ Build started: Project: map_receiver, Configuration: RelWithDebInfo
> Win32 ------
> 39>------ Build started: Project: hello_xml, Configuration: RelWithDebInfo
> Win32 ------
> 40>------ Build started: Project: hello_world, Configuration: RelWithDebInfo
> Win32 ------
> 41>------ Build started: Project: drain, Configuration: RelWithDebInfo Win32
> ------
> 42>------ Build started: Project: client, Configuration: RelWithDebInfo Win32
> ------
> 43>------ Build started: Project: qmf2_print_events, Configuration:
> RelWithDebInfo Win32 ------
> 44>------ Build started: Project: qmf2_list_agents, Configuration:
> RelWithDebInfo Win32 ------
> 45>------ Build started: Project: qmf2_agent, Configuration: RelWithDebInfo
> Win32 ------
> 46>------ Build started: Project: store, Configuration: RelWithDebInfo Win32
> ------
> 47>------ Build started: Project: test_store, Configuration: RelWithDebInfo
> Win32 ------
> 48>------ Build started: Project: qpidd, Configuration: RelWithDebInfo Win32
> ------
> 49>------ Build started: Project: unit_test, Configuration: RelWithDebInfo
> Win32 ------
> 50>------ Build started: Project: mssql_store, Configuration: RelWithDebInfo
> Win32 ------
> 51>------ Build started: Project: msclfs_store, Configuration: RelWithDebInfo
> Win32 ------
> 52>------ Build started: Project: ha, Configuration: RelWithDebInfo Win32
> ------
> 53>------ Build started: Project: amqp, Configuration: RelWithDebInfo Win32
> ------
> 54>------ Build started: Project: INSTALL, Configuration: RelWithDebInfo
> Win32 ------
> 
> 
> ----- Original Message -----
> > From: "Paul A. Flores" <[email protected]>
> > To: [email protected]
> > Sent: Wednesday, November 15, 2017 9:52:20 AM
> > Subject: Re: Need help compiling in Visual Studio QPID C++
> >
> > First thanks to both Justin and Chuck for your responses there nothing like
> > a
> > community that steps up to help!
> >
> >
> > I am a consultant/contractor doing primarily application development which
> > means I am "tied" to the "wishes" of the client and in this case that the
> > code base be developed in Visual Studio 17.  The main issue has been CMake
> > and an apparent incompatibility with MSBuild.  It appears that the order in
> > which objects need to be compiled has been  "compromised" or else there is
> > an inconsistency in being able to navigate to find items such as folder and
> > compilation tools.
> >
> >
> > I will review the discussion and see if I can make specific progress. In
> > the
> > meantime can someone point me to a discussion/description of the order in
> > which objects need to be built?
> >
> >
> > Thanks again to Justin and Chuck.
> >
> >
> > Paul
> >
> >
> > ________________________________
> > From: Chuck Rolke <[email protected]>
> > Sent: Tuesday, November 14, 2017 8:40 AM
> > To: [email protected]
> > Subject: Re: Need help compiling in Visual Studio QPID C++
> >
> > I tried https://ci.appveyor.com/project/ChugR/qpid-cpp , a manual
> > configuration (ignoring qpid-cpp appveyor.yml) using Visual Studio 2013 and
> > before-build script:
> >
> >  mkdir BLD
> >  cd BLD
> >  cmake -G "Visual Studio 12 2013" -DBUILD_BINDING_DOTNET=OFF
> >  -DBOOST_ROOT=C:\Libraries\boost
> >  -DBOOST_LIBRARYDIR=C:\Libraries\boost\lib32-msvc-12.0 ..
> >  cd ..
> >
> > This compiled successfully using the default version of Boost. It barfed
> > later with ctest issues but the goal was compilation.
> >
> > In my experience the qpid-cpp Windows builds suffer from a steady stream of
> > bit rot from new versions of MSbuild, cmake, boost, and qpid-proton. The
> > remedy is to keep building the latest-and-greatest with all the new tools
> > and libraries and fix problems as soon as they appear.
> >
> > I recently upgraded some scripted builds using Visual Studio 2017 and found
> > drastic behavior changes. I got my scripts to work but VS2015 and VS2013
> > could be scripted more easily following the same model as previous versions
> > of Visual Studio.
> >
> > Discussion
> > http://qpid.2158936.n2.nabble.com/Building-Qpid-on-Windows-td7622672.html
> > is
> > still relevant with respect to getting qpid-cpp and qpid-proton (qpid-cpp's
> > AMQP 1.0 engine) to work together as designed.
> >
> > ----- Original Message -----
> > > From: "Justin Ross" <[email protected]>
> > > To: [email protected]
> > > Sent: Monday, November 13, 2017 7:38:36 PM
> > > Subject: Re: Need help compiling in Visual Studio QPID C++
> > >
> > > Hi, Paul.  What are the errors you are seeing?
> > >
> > > I gave it a try on AppVeyor, and I immediately ran into a problem with a
> > > newer version of msbuild.
> > >
> > >   https://ci.appveyor.com/project/ssorj/qpid-cpp/build/1.0.13
> > >
> > > Chuck, what does that portend?  Do we need to generate new build metadata
> > > for Windows?
> > >
> > > On Mon, Nov 13, 2017 at 2:22 PM, Flores, Paul A. <[email protected]>
> > > wrote:
> > >
> > > > Help!
> > > >
> > > >
> > > > CMake is not cooperating/working with Visual Studio and I am about
> > > > running
> > > > out of hair to pull! Only issues in the Linux world were self induced
> > > > not
> > > > sure about this windows environment!
> > > >
> > > >
> > > > Can anyone give me a bit of help?  I have a very narrow window to prove
> > > > QPID is a viable alternative for a new manufacturing application,
> > > >
> > > >
> > > > Any help would be greatly appreciated to get QIP CPP compiled!
> > > >
> > > >
> > > > Paul
> > > >
> > > >
> > > > ________________________________
> > > >
> > > > This communication (including any attachments) may contain information
> > > > that is proprietary, confidential or exempt from disclosure. If you are
> > > > not
> > > > the intended recipient, please note that further dissemination,
> > > > distribution, use or copying of this communication is strictly
> > > > prohibited.
> > > > Anyone who received this message in error should notify the sender
> > > > immediately by telephone or by return email and delete it from his or
> > > > her
> > > > computer.
> > > >
> > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
> >
> >
> > ________________________________
> >
> > This communication (including any attachments) may contain information that
> > is proprietary, confidential or exempt from disclosure. If you are not the
> > intended recipient, please note that further dissemination, distribution,
> > use or copying of this communication is strictly prohibited. Anyone who
> > received this message in error should notify the sender immediately by
> > telephone or by return email and delete it from his or her computer.
> >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
> 
> 
> 
> ________________________________
> 
> This communication (including any attachments) may contain information that
> is proprietary, confidential or exempt from disclosure. If you are not the
> intended recipient, please note that further dissemination, distribution,
> use or copying of this communication is strictly prohibited. Anyone who
> received this message in error should notify the sender immediately by
> telephone or by return email and delete it from his or her computer.
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to