2012-07-31 30 views
2

Wt v。3.2.2和boost库v。1.47已成功安装在我的电脑中,安装过程中未出现错误。一些简单的Wt和Boost示例在测试过程中被编译并正确运行。我使用为MSVC 2008配置的CMake,为我自己的Wt项目创建构建文件。但是,当我尝试构建我自己的项目时,出现此错误(无法打开包含文件:'boost/any.hpp')。正如我所看到的,boost/any.hpp包含在Wt/WApplication头文件中。构建Wt项目时出错。无法打开包含文件:'boost/any.hpp'

如需进一步的帮助,我的CMakeLists.txt文件内容是: 的CMakeLists.txt放在项目目录:

CMAKE_MINIMUM_REQUIRED(VERSION 2.8) 

PROJECT(WT_EXAMPLE) 

SET (WT_CONNECTOR "wthttp" CACHE STRING "Connector used (wthttp or wtfcgi)") 

ADD_SUBDIRECTORY(source) 

的CMakeLists.txt放在源目录:

CMAKE_MINIMUM_REQUIRED(VERSION 2.8) 

SET(WT_INSTALL_DIR "C:/Program Files/WT/boost_1_47") 
SET(BOOST_INSTALL_DIR "C:/Program Files/boost") 

ADD_EXECUTABLE(
GOP.wt 
Main.C 
) 

SET(WT_LIBS 
optimized wthttp debug wthttpd 
optimized wt debug wtd) 

SET(BOOST_LIBS 
boost_signals boost_regex boost_thread boost_filesystem boost_system 
boost_random boost_date_time boost_program_options) 

TARGET_LINK_LIBRARIES (
GOP.wt 
${WT_LIBS} ${BOOST_LIBS} ${SYSTEM_LIBS} 
) 

LINK_DIRECTORIES (
${WT_INSTALL_DIR}/lib/ 
${BOOST_INSTALL_DIR}/lib/ 
) 

INCLUDE_DIRECTORIES(${WT_INSTALL_DIR}/include) 
INCLUDE_DIRECTORIES(${BOOST_INSTALL_DIR}/include) 

当我看到在放在Wt构建目录中的CMakeCache.txt中,找到了用于增强库的路径,但是......这条线怎么样?

//The directory containing a CMake configuration file for Boost. 
Boost_DIR:PATH=Boost_DIR-NOTFOUND 

我问WT上的支持论坛这个问题,但我没有得到约24小时的答案...

更新:我发现any.hpp放在C:\ Program Files \ boost \ boost_1_47 \ boost \ spirit \ home \ support \ algorithm \ any.hpp。所以,我怀疑有一个搜索any.hpp的路径的概念(它不直接包含在boost目录中)。

+0

将INCLUDE_DIRECTORIES($ {BOOST_INSTALL_DIR}/include)更改为INCLUDE_DIRECTORIES($ {BOOST_INSTALL_DIR}),但它不能解决我的问题。 – Kapoios 2012-07-31 14:33:35

+0

我总是在add_executable之前执行include_directories。你确定订购没有关系吗? – Lap 2012-07-31 15:45:55

+0

@lap Wt支持论坛的版主将其作为CMakeLists文件格式发布,用于生成构建用户应用的构建文件。请参阅http://redmine.webtoolkit.eu/boards/2/topics/4714 – Kapoios 2012-07-31 15:53:34

回答

1

问题已解决。我做了一个新的Wt构建,我放置并重建了一个新的路径,并且我为这个项目编写了CMakeLists ,更加谨慎的是

相关问题