Boost logo

Boost Users :

Subject: [Boost-users] linking to boost 1.54 w/ windows and visual studio 2013 RC
From: Jarrett Chisholm (j.chisholm_at_[hidden])
Date: 2013-09-24 13:03:50


Hi all

I'm trying to compile my project as a shared library using scons. I'm
using Windows 7, and the Visual Studio 2013 RC. In the project, I'm
using boost.

The project compiles fine. However, when it tries to link, I get the
following:

/scons: warning: No version of Visual Studio compiler found - C/C++
compilers most likely not set correctly//
//
//scons: Reading SConscript files ...//
//Compiling Glr//
//scons: Reading SConscript files ...//
//Parsing Shaders into header ShaderData.h//
//Done parsing Shaders into header ShaderData.h//
//scons: done reading SConscript files.//
//scons: Building targets ...//
//Using tempfile c:\users\jarrett\appdata\local\temp\tmpecwym3.lnk for
command line://
//link /nologo /dll /out:build\glr.dll /implib:build\glr.lib
/LIBPATH:build /LIBPATH:src
/LIBPATH:C:\Users\Jarrett\projects\angelscript-sdk\angelscript\lib
/LIBPATH:C:\Users\Jarrett\projects\sqlite3
/LIBPATH:C:\Users\Jarrett\projects\berkelium-win32\lib
/LIBPATH:C:\Users\Jarrett\projects\SFML\lib "/LIBPATH:C:\Program
Files\Assimp\lib\x86" "/LIBPATH:C:\Program Files (x86)\Boost\lib"
/LIBPATH:C:\Users\Jarrett\projects\FreeImage\Dist "/LIBPATH:C:\Program
Files (x86)\Microsoft Visual Studio 12.0\VC\lib" opengl32.lib glew32.lib
berkelium.lib sfml-system.lib sfml-window.lib assimp.lib freeimage.lib
libboost_log-vc120-mt-1_54.lib libboost_log_setup-vc120-mt-1_54.lib
libboost_date_time-vc120-mt-1_54.lib libboost_thread-vc120-mt-1_54.lib
libboost_wave-vc120-mt-1_54.lib libboost_regex-vc120-mt-1_54.lib
libboost_filesystem-vc120-mt-1_54.lib libboost_system-vc120-mt-1_54.lib
build\BasicSceneManager.obj build\BasicSceneNode.obj build\Camera.obj
build\GlrProgram.obj build\GraphicsEngine.obj build\Light.obj
build\Window.obj build\common\math\Math.obj build\common\io\File.obj
build\BasicSceneManager.obj build\BasicSceneNode.obj build\Camera.obj
build\GlrProgram.obj build\GraphicsEngine.obj build\Light.obj
build\Window.obj build\exceptions\Exception.obj
build\exceptions\FormatException.obj build\exceptions\GlException.obj
build\exceptions\IoException.obj build\gui\CallbackParameter.obj
build\gui\GUI.obj build\gui\GUIObject.obj build\gui\HtmlGuiComponent.obj
build\models\Animation.obj build\models\AssImpLoader.obj
build\models\Model.obj build\models\ModelLoader.obj
build\models\ModelManager.obj build\glw\Animation.obj
build\glw\AnimationManager.obj build\glw\Constants.obj
build\glw\Material.obj build\glw\MaterialManager.obj build\glw\Mesh.obj
build\glw\MeshManager.obj build\glw\OpenGlDevice.obj
build\glw\Texture.obj build\glw\TextureManager.obj
build\glw\shaders\CPreProcessor.obj build\glw\shaders\GlrParser.obj
build\glw\shaders\GlrPreProcessor.obj build\glw\shaders\GlrShader.obj
build\glw\shaders\GlrShaderProgram.obj build\glw\shaders\GlslShader.obj
build\glw\shaders\GlslShaderProgram.obj
build\glw\shaders\ShaderProgramManager.obj//
//link @c:\users\jarrett\appdata\local\temp\tmpecwym3.lnk//
//Using tempfile c:\users\jarrett\appdata\local\temp\tmpep9gzl.lnk for
command line://
//link /nologo /dll /out:build\glr.dll /implib:build\glr.lib
/LIBPATH:build /LIBPATH:src
/LIBPATH:C:\Users\Jarrett\projects\angelscript-sdk\angelscript\lib
/LIBPATH:C:\Users\Jarrett\projects\sqlite3
/LIBPATH:C:\Users\Jarrett\projects\berkelium-win32\lib
/LIBPATH:C:\Users\Jarrett\projects\SFML\lib "/LIBPATH:C:\Program
Files\Assimp\lib\x86" "/LIBPATH:C:\Program Files (x86)\Boost\lib"
/LIBPATH:C:\Users\Jarrett\projects\FreeImage\Dist "/LIBPATH:C:\Program
Files (x86)\Microsoft Visual Studio 12.0\VC\lib" opengl32.lib glew32.lib
berkelium.lib sfml-system.lib sfml-window.lib assimp.lib freeimage.lib
libboost_log-vc120-mt-1_54.lib libboost_log_setup-vc120-mt-1_54.lib
libboost_date_time-vc120-mt-1_54.lib libboost_thread-vc120-mt-1_54.lib
libboost_wave-vc120-mt-1_54.lib libboost_regex-vc120-mt-1_54.lib
libboost_filesystem-vc120-mt-1_54.lib libboost_system-vc120-mt-1_54.lib
build\BasicSceneManager.obj build\BasicSceneNode.obj build\Camera.obj
build\GlrProgram.obj build\GraphicsEngine.obj build\Light.obj
build\Window.obj build\common\math\Math.obj build\common\io\File.obj
build\BasicSceneManager.obj build\BasicSceneNode.obj build\Camera.obj
build\GlrProgram.obj build\GraphicsEngine.obj build\Light.obj
build\Window.obj build\exceptions\Exception.obj
build\exceptions\FormatException.obj build\exceptions\GlException.obj
build\exceptions\IoException.obj build\gui\CallbackParameter.obj
build\gui\GUI.obj build\gui\GUIObject.obj build\gui\HtmlGuiComponent.obj
build\models\Animation.obj build\models\AssImpLoader.obj
build\models\Model.obj build\models\ModelLoader.obj
build\models\ModelManager.obj build\glw\Animation.obj
build\glw\AnimationManager.obj build\glw\Constants.obj
build\glw\Material.obj build\glw\MaterialManager.obj build\glw\Mesh.obj
build\glw\MeshManager.obj build\glw\OpenGlDevice.obj
build\glw\Texture.obj build\glw\TextureManager.obj
build\glw\shaders\CPreProcessor.obj build\glw\shaders\GlrParser.obj
build\glw\shaders\GlrPreProcessor.obj build\glw\shaders\GlrShader.obj
build\glw\shaders\GlrShaderProgram.obj build\glw\shaders\GlslShader.obj
build\glw\shaders\GlslShaderProgram.obj
build\glw\shaders\ShaderProgramManager.obj//
//build\BasicSceneManager.obj : warning LNK4042: object specified more
than once; extras ignored//
//build\BasicSceneNode.obj : warning LNK4042: object specified more than
once; extras ignored//
//build\Camera.obj : warning LNK4042: object specified more than once;
extras ignored//
//build\GlrProgram.obj : warning LNK4042: object specified more than
once; extras ignored//
//build\GraphicsEngine.obj : warning LNK4042: object specified more than
once; extras ignored//
//build\Light.obj : warning LNK4042: object specified more than once;
extras ignored//
//build\Window.obj : warning LNK4042: object specified more than once;
extras ignored//
//LINK : fatal error LNK1104: cannot open file
'libboost_log-vc110-mt-1_54.lib'//
//scons: building terminated because of errors.//
//scons: *** [build/glr.dll] Error 1104/

I'm curious why it's trying to link to `libboost_log-vc110-mt-1_54.lib`
instead of `libboost_log-vc120-mt-1_54.lib`, which is what I specified
in the link command. Also, as far as I can tell, `vcxxx` is the
compiler tag boost uses to tell what version of the compiler built the
boost library...so it's almost like `scons` thinks boost was built using
Visual Studio 2012, which would be `vc110`...I'm not sure.

Any help is appreciated!

Cheers

Jarrett



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net