activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Albert Strasheim (JIRA)" <>
Subject [jira] Updated: (AMQCPP-29) Projects in MSVC build building on top of one another
Date Sun, 17 Dec 2006 21:35:02 GMT
     [ ]

Albert Strasheim updated AMQCPP-29:

    Attachment: activemq-cpp-winbuild.diff

Patch attached that fixes the following:

1. Consistent ordering of AdditionalLibraryDirectories and AdditionalIncludeDirectories
2. Moved BlockingByteArrayInputStream sources to activemq\io filter
3. Fixed IntermediateDirectory for all the projects.
4. Removed $(OutDir)\activemq-cpp[d].lib from AdditionalDependencies -- the dependencies set
up between the projects in the solution already adds the right activemq-cpp library to the
linker arguments.

To move the Windows build into a separate directory, all that remains is to create a directory
like win_build, move the .vcproj and .sln files into it, and prepend ..\ to all occurences
of src\[main,test,test-integration,examples].

With the fixes, Debug and Release builds work perfectly on my system and after a successful
build, building again doesn't make the Debug build relink the example.

> Projects in MSVC build building on top of one another
> -----------------------------------------------------
>                 Key: AMQCPP-29
>                 URL:
>             Project: ActiveMQ C++ Client
>          Issue Type: Bug
>    Affects Versions: 1.1
>            Reporter: Albert Strasheim
>         Assigned To: Nathan Mittler
>            Priority: Minor
>             Fix For: 1.1
>         Attachments: activemq-cpp-winbuild.diff
> After I've done a complete Debug build on Windows with MSVC 2005, building the solution
again still yields the following each time I build:
> 1>------ Build started: Project: vs2005-activemq-example, Configuration: Debug Win32
> 1>Linking...
> 1>Embedding manifest...
> 1>Build log was saved at "file://c:\home\albert\work5\activemq-cpp\Debug\BuildLog.htm"
> 1>vs2005-activemq-example - 0 error(s), 0 warning(s)
> ========== Build: 1 succeeded, 0 failed, 3 up-to-date, 0 skipped ==========
> I think this relinking might have something to do with the tests and activemq-example
all containing a main.cpp with is built as main.obj in the Debug directory.
> You might consider setting up the Windows builds as follows (idea borrowed from many
other projects I've looked at):
> top level of project
>    \win_build
>    \win_build\solution.sln
>    \win_build\project1.sln
>    \win_build\project2.sln
>    \win_build\Debug (output directory)
>    \win_build\Release (output directory)
>    \win_build\project1\Debug (intermediate directory)
>    \win_build\project1\Release (intermediate directory)
>    \win_build\project2\Debug (intermediate directory)
>    \win_build\project2\Release (intermediate directory)
> To achieve this, each project's output directory for each build is set to (SolutionDir)$(ConfigurationName)
 and the intermediate directory is set to $(SolutionDir)$(ProjectName)\$(ConfigurationName)
(note the extra \).
> This setup keeps all the Windows output out of the top level directory, and prevents
projects from building on top of one another.
> With this setup, you need to refer to src\main as ..\src\main, etc.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


View raw message