<div class="gmail_quote">
<div class="gmail_quote">
<div class="im">On Thu, Jun 23, 2011 at 11:37 AM, <span dir="ltr"><<a href="mailto:aaron.meadows@thomsonreuters.com" target="_blank">aaron.meadows@thomsonreuters.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">
<div lang="EN-US" link="blue" vlink="purple">
<div>
<p class="MsoNormal"><span style="FONT-SIZE: 11pt; COLOR: #1f497d">Can you post your CMakeLists.txt? Did you get different errors for each of the 3 solutions you tried, or were they all the same error? What was the exception code?</span></p>
</div></div></blockquote>
<div> </div></div>
<div>I got the same error. I did not receive a exception throw when I ran the testing code via Visual Studio. I got a message that said:</div>
<div> </div>
<div>"The application has failed to start because boost_unit_test_framework-vc100-mt-gd-1_46_1.dll was not found. Reinstalling the application may fix the problem".</div>
<div> </div>
<div>It looks like I either need to copy the boost dlls I use to my test directory or somehow add the boost directory to the PATH environment variable.</div>
<div> </div>
<div>---------- Master CMakeLists.txt ------------</div>
<div>cmake_minimum_required ( VERSION 2.8 )</div>
<div>SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules/")</div>
<div>PROJECT(myproject)</div>
<div>SET ( ${PROJECT_NAME}_MAJOR_VERSION 0 )<br>SET ( ${PROJECT_NAME}_MINOR_VERSION 5 )<br>SET ( ${PROJECT_NAME}_PATCH_LEVEL 0 )</div>
<div>SET(BOOST_ROOT "C:/Program Files (x86)/boost/boost_1_46_1" CACHE PATH "Installation directory for boost")</div>
<div>#-----------------------------------------------------<br># DEBUG<br>#-----------------------------------------------------<br>OPTION(DEBUG_TLE_PARSER "Enable debugging of TLE parser." OFF)<br>
IF(DEBUG_TLE_PARSER)<br> SET (DEBUG_PARSER 1)<br>ENDIF(DEBUG_TLE_PARSER)</div>
<div>#-----------------------------------------------------<br># Unix Configuration<br>#-----------------------------------------------------<br>IF(UNIX) <br> <br> SET(INSTALL_BIN_DIR bin CACHE PATH "Installation directory for executables")<br>
SET(INSTALL_LIB_DIR lib CACHE PATH "Installation directory for libraries")<br> SET(INSTALL_INC_DIR include CACHE PATH "Installation directory for headers")<br> SET(INSTALL_DATA_DIR shared/${PROJECT_NAME} CACHE PATH "Installation directory for data files")<br>
<br> #-----------------------------------------------------<br> # FLAGS<br> #----------------------------------------------------<br> IF(CMAKE_BUILD_TYPE MATCHES Release)<br> SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall -Werror -ansi -pedantic")<br>
ENDIF(CMAKE_BUILD_TYPE MATCHES Release)<br> IF(CMAKE_BUILD_TYPE MATCHES Debug)<br> SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0 -Wall -Werror -ansi -pedantic")<br> ENDIF(CMAKE_BUILD_TYPE MATCHES Debug)<br>
<br> OPTION(BUILD_SHARED_LIBS "Build shared libraries." ON)<br> <br> IF(DEBUG_TLE_PARSER)<br> SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG_PARSER")<br> ENDIF(DEBUG_TLE_PARSER)</div>
<div>ENDIF(UNIX)</div>
<div>set(myproject_SRC_DIR ${CMAKE_SOURCE_DIR}/myproject)</div>
<div>#-----------------------------------------------------<br># SHARED / STATIC<br>#-----------------------------------------------------</div>
<div># Allow the developer to select if Dynamic or Static libraries are built<br>OPTION(BUILD_SHARED_LIBS "Build shared libraries." OFF)</div>
<div># Set the LIB_TYPE variable to STATIC<br>SET (LIB_TYPE STATIC)<br>IF (BUILD_SHARED_LIBS)<br> # User wants to build Dynamic Libraries, so change the LIB_TYPE variable to CMake keyword 'SHARED'<br> SET (LIB_TYPE SHARED)<br>
IF(WIN32)<br> SET (BUILD_SHARED_WIN32 1)<br> ENDIF(WIN32)<br>ENDIF (BUILD_SHARED_LIBS)</div>
<div>CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/myproject/<a href="http://config.h.in/" target="_blank">config.h.in</a> ${CMAKE_CURRENT_SOURCE_DIR}/myproject/config.h)</div>
<div>#-----------------------------------------------------<br># TESTING<br>#-----------------------------------------------------</div>
<div>ENABLE_TESTING()</div>
<div>add_custom_target ( check COMMAND ${CMAKE_CTEST_COMMAND} )</div>
<div>SUBDIRS(Testing/units)<br>SUBDIRS(Testing/myproject)</div>
<div><br>#-----------------------------------------------------<br># FIND PACKAGES<br>#-----------------------------------------------------<br>IF(WIN32)<br> SET(Boost_USE_STATIC_LIBS ON)<br> SET(Boost_USE_MULTITHREADED ON)<br>
ENDIF(WIN32)</div>
<div>SET(Boost_ADDITIONAL_VERSIONS "1.46" "1.44" "1.44.0" )<br>FIND_PACKAGE(Boost REQUIRED COMPONENTS program_options thread unit_test_framework filesystem system)</div>
<div>#-----------------------------------------------------<br># CPACK<br>#-----------------------------------------------------</div>
<div>#-----------------------------<br># CPACK DESCRIPTION INFORMATION<br>#-----------------------------</div>
<div>IF(CMAKE_BUILD_TYPE MATCHES Release)<br>SET(CPACK_PACKAGE_NAME "myproject")<br>SET(CPACK_PACKAGE_INSTALL_DIRECTORY "myproject")<br>ENDIF(CMAKE_BUILD_TYPE MATCHES Release)</div>
<div>IF(CMAKE_BUILD_TYPE MATCHES Debug)<br>SET(CPACK_PACKAGE_NAME "myproject_debug")<br>SET(CPACK_PACKAGE_INSTALL_DIRECTORY "myproject debug")<br>ENDIF(CMAKE_BUILD_TYPE MATCHES Debug)</div>
<div><br>SET(CPACK_PACKAGE_VENDOR "Self")<br>SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "myproject is an implementation of the myproject satellite model for use in the DTCS project")<br>SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/ReadMe.txt")<br>
SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/Copyright.txt")<br>SET(CPACK_PACKAGE_VERSION_MAJOR ${myproject_MAJOR_VERSION})<br>SET(CPACK_PACKAGE_VERSION_MINOR ${myproject_MINOR_VERSION})<br>SET(CPACK_PACKAGE_VERSION_PATCH ${myproject_PATCH_LEVEL})</div>
<div>#-----------------------------------------------------<br># DOCUMENTATION<br>#-----------------------------------------------------<br>find_package ( Doxygen )<br>IF(DOXYGEN)<br> ADD_SUBDIRECTORY(documentation)<br>
ELSE(DOXYGEN)<br> MESSAGE(STATUS "WARNING: Doxygen not found - API documentation not created")<br>ENDIF(DOXYGEN)</div>
<div>SET ( INSTALLED_HEADERS<br> myproject/constants.hpp<br> myproject/dll_defines.hpp<br> myproject/exception.hpp<br> myproject/file_error.hpp<br> myproject/interface.hpp<br> myproject/missing_file_error.hpp<br>
myproject/exception.hpp<br> myproject/parsing_error.hpp )</div>
<div> </div>
<div>SET ( INSTALLED_UNIT_HEADERS<br> myproject/units/coordinates.hpp<br> myproject/units/day.hpp<br> myproject/units/invalid_day_exception.hpp<br> myproject/units/invalid_hour_exception.hpp<br> myproject/units/invalid_month_exception.hpp<br>
myproject/units/invalid_year_exception.hpp<br> myproject/units/julian.hpp<br> myproject/units/minute.hpp<br> myproject/units/month.hpp<br> myproject/units/second.hpp<br> myproject/units/time.hpp<br> myproject/units/value_array.hpp<br>
myproject/units/vector.hpp<br> myproject/units/year.hpp )</div>
<div> </div>
<div>SET ( HEADERS <br> ${INSTALLED_HEADERS}<br> ${INSTALLED_UNIT_HEADERS}<br> myproject/interface_impl.hpp<br> myproject/model_map.hpp<br> myproject/model_map.inl<br> myproject/satellite_model.hpp<br> myproject/parsers/bstar_compose.hpp<br>
myproject/parsers/degree_to_radians_convert.hpp<br> myproject/parsers/derivative_compose.hpp<br> myproject/parsers/eccentricity_compose.hpp<br> myproject/parsers/error_handler.hpp<br> myproject/parsers/mean_motion_compose.hpp<br>
myproject/parsers/myproject_entry_compose.hpp<br> myproject/parsers/tle_parser.hpp<br> myproject/parsers/ureal11_policy.hpp<br> myproject/model/near_earth_orbit.hpp<br> myproject/model/near_earth_orbit.inl<br>
myproject/model/myproject.hpp<br> myproject/model/myproject.inl<br> myproject/model/myproject_orbit_data.hpp<br> myproject/model/myproject_orbit_data.inl<br> myproject/units/tle.hpp<br> myproject/world_geodetic_system/gravitational_constant_t.hpp<br>
myproject/world_geodetic_system/old_wsg72_constant_type.hpp<br> myproject/world_geodetic_system/no_constants_type.hpp<br> myproject/world_geodetic_system/j2_constant_type.hpp<br> myproject/world_geodetic_system/j2j3_constant_type.hpp<br>
myproject/world_geodetic_system/wsg72_constant_type.hpp<br> myproject/world_geodetic_system/wsg84_constant_type.hpp )</div>
<div> </div>
<div>SET ( SOURCE<br> myproject/interface.cpp<br> myproject/model/near_earth_orbit.cpp<br> myproject/model/myproject.cpp<br> myproject/model/myproject_orbit_data.cpp<br> myproject/units/day.cpp<br> myproject/units/hour.cpp<br>
myproject/units/julian.cpp<br> myproject/units/minute.cpp<br> myproject/units/month.cpp<br> myproject/units/second.cpp<br> myproject/units/tle.cpp<br> myproject/units/value_array.cpp<br> myproject/units/vector.cpp<br>
myproject/units/year.cpp<br> myproject/world_geodetic_system/old_wsg72_constant_type.cpp<br> myproject/world_geodetic_system/no_constants_type.cpp<br> myproject/world_geodetic_system/J2_constant_type.cpp<br> myproject/world_geodetic_system/J2J3_constant_type.cpp<br>
myproject/world_geodetic_system/wsg72_constant_type.cpp<br> myproject/world_geodetic_system/wsg84_constant_type.cpp )</div>
<div>#SET ( CSHARP_SOURCE<br># csharp/myproject_wrap.cxx )<br>#<br>#FILE ( GLOB CSHARP_FILES "csharp/*.cs" )<br> <br>#-----------------------------------------------------<br># LINKING<br>#-----------------------------------------------------</div>
<div>include_directories(${Boost_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR} ${myproject_SRC_DIR}) </div>
<div>LINK_DIRECTORIES(${Boost_LIBRARY_DIRS})</div>
<div>add_library ( myproject ${LIB_TYPE} ${SOURCE} ${HEADERS} )</div>
<div>IF(UNIX)<br>target_link_libraries ( myproject stdc++ )<br>ENDIF(UNIX)</div>
<div>#add_library ( myproject_csharp ${CSHARP_SOURCE} )</div>
<div>add_executable(testcpp myproject/testcpp.cpp )<br>add_executable(validate myproject/validate.cpp )</div>
<div><br>IF(UNIX)<br>target_link_libraries (validate ${Boost_LIBRARIES} myproject pthread )<br>target_link_libraries (testcpp ${Boost_LIBRARIES} myproject pthread )<br>ELSE(WIN32)<br>target_link_libraries (validate ${Boost_LIBRARIES} myproject )<br>
target_link_libraries (testcpp ${Boost_LIBRARIES} myproject )<br>ENDIF(UNIX)</div>
<div> </div>
<div>#-----------------------------------------------------<br># INSTALL<br>#-----------------------------------------------------<br>INSTALL(TARGETS myproject DESTINATION lib COMPONENT libraries)<br>INSTALL(FILES ${INSTALLED_HEADERS} DESTINATION include/${PROJECT_NAME} COMPONENT devel)<br>
INSTALL(FILES ${INSTALLED_UNIT_HEADERS} DESTINATION include/${PROJECT_NAME}/units COMPONENT devel)<br>#INSTALL(TARGETS myproject_csharp DESTINATION lib COMPONENT csharp)<br>#INSTALL(FILES ${CSHARP_FILES} DESTINATION include/${PROJECT_NAME}/csharp COMPONENT csharp)<br>
<br>IF(UNIX)<br> INSTALL(FILES Findmyproject.cmake DESTINATION share/module)<br>ENDIF(UNIX)</div>
<div> </div>
<div>#-----------------------------<br># INSTALLATION INFORMATION<br>#-----------------------------<br>#SET(CPACK_COMPONENTS_ALL libraries devel docs csharp)<br>SET(CPACK_COMPONENT_LIBRARIES_DISPLAY_NAME "Libraries")<br>
SET(CPACK_COMPONENT_LIBRARIES_DESCRIPTION "Dynamic library used to build programs with myproject Interface")<br>SET(CPACK_COMPONENT_DEVEL_DISPLAY_NAME "C++ Headers")<br>SET(CPACK_COMPONENT_DEVEL_DESCRIPTION "C++ header files for use with myproject Interface")<br>
SET(CPACK_COMPONENT_DEVEL_DEPENDS libraries)<br>SET(CPACK_COMPONENT_DOCS_DISPLAY_NAME "C++ API Documentation")<br>SET(CPACK_COMPONENT_DOCS_DESCRIPTION "C++ API HTML files describing the API for myproject Interface")<br>
#SET(CPACK_COMPONENT_CSHARP_DISPLAY_NAME "C# API files")<br>#SET(CPACK_COMPONENT_CSHARP_DESCRIPTION "C# API files describing the API for myproject Interface")<br>SET(CPACK_COMPONENT_LIBRARIES_GROUP "Runtime")<br>
SET(CPACK_COMPONENT_DEVEL_GROUP "Development")<br>SET(CPACK_COMPONENT_DOCS_GROUP "Development")<br>#SET(CPACK_COMPONENT_CSHARP_GROUP "Development")<br>SET(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION "All of the tools necessary to develop against the SMT Interface")</div>
<div> </div>
<div>#-----------------------------<br># INSTALLATION TYPES<br>#-----------------------------<br>SET(CPACK_ALL_INSTALL_TYPES Full Runtime Developer)<br>SET(CPACK_COMPONENT_LIBRARIES_INSTALL_TYPES Full Developer Runtime)<br>
SET(CPACK_COMPONENT_DEVEL_INSTALL_TYPES Full Developer)<br>SET(CPACK_COMPONENT_DOCS_INSTALL_TYPES Full Developer)<br>#SET(CPACK_COMPONENT_CSHARP_INSTALL_TYPES Full Developer)</div>
<div>IF (WIN32)<br> SET(CPACK_PACKAGE_ICON "${CMAKE_CURRENT_SOURCE_DIR}\\\\InstallIcon.bmp")<br> SET(CPACK_NSIS_MODIFY_PATH ON)<br> SET(CPACK_GENERATOR "NSIS")<br>ELSE (UNIX)<br> SET(CPACK_GENERATOR "RPM")<br>
ENDIF(WIN32)</div>
<div># Always include this last.<br>INCLUDE(CPack)<br></div>
<div> </div>
<div>--------- test CMakeLists.txt -------------</div>
<div>add_executable ( test_julian EXCLUDE_FROM_ALL test_julian.cpp )<br>add_test ( test_julian test_julian )<br>add_dependencies ( check test_julian )<br>target_link_libraries ( test_julian ${Boost_LIBRARIES} myproject )</div>
<div> </div>
<div>add_executable ( test_valuearray EXCLUDE_FROM_ALL test_valuearray.cpp )<br>add_test ( test_valuearray test_valuearray )<br>add_dependencies ( check test_valuearray )<br>target_link_libraries ( test_valuearray ${Boost_LIBRARIES} myproject )</div>
<div> </div>
<div>add_executable ( test_vector EXCLUDE_FROM_ALL test_vector.cpp )<br>add_test ( test_vector test_vector )<br>add_dependencies ( check test_vector )<br>target_link_libraries ( test_vector ${Boost_LIBRARIES} myproject )</div>
<div> </div></div></div><br>