2012-07-22 165 views
1

我想在Fedora 17上安装Boost.Log,并且已经做了yum install boost-*。所有相关的教程和类似问题的答案都涉及将lib/log移动到boost源目录并执行bootstrap.sh。我无法找到boost源目录或系统中的bootstrap.sh文件(确实是find/-name '*bootstrap.sh' 2> /dev/null)。我能找到的是/usr/share/boost-build/,里面有很多果酱文件。总结yum安装不包含源目录和bootstrap.sh,我试图手动构建它,但Boost.Log源文件包含特定于窗口的标题,并且我感到双重困惑。任何人都可以阐明这一点吗?在Fedora 17上安装Boost.Log

回答

0

写了下面的Makefile编译和安装,其中不包括文件指windows.h,我相信它的工作原理:

SRCS= attribute_name.cpp attribute_set.cpp attribute_values_view.cpp \ 
     code_conversion.cpp core.cpp \ 
     default_filter_factory.cpp default_sink.cpp event.cpp \ 
     exceptions.cpp filter_parser.cpp \ 
     formatter_parser.cpp global_logger_storage.cpp init_from_settings.cpp \ 
     init_from_stream.cpp light_rw_mutex.cpp named_scope.cpp \ 
     once_block.cpp parser_utils.cpp process_id.cpp \ 
     record_ostream.cpp severity_level.cpp syslog_backend.cpp \ 
     text_file_backend.cpp text_ostream_backend.cpp thread_id.cpp \ 
     threadsafe_queue.cpp thread_specific.cpp timer.cpp \ 
     timestamp.cpp trivial.cpp 
OBJS=$(SRCS:.cpp=.o) 
CXXFLAGS=-std=c++11 -DBOOST_FILESYSTEM_VERSION=2 
libboost_log.so: $(OBJS) 
    g++ -shared $^ -o [email protected] -lpthread -lboost_system -lboost_thread-mt -lrt -lboost_filesystem 
%.o: %.cpp 
    g++ $(CXXFLAGS) -fPIC -c $^ -o [email protected] 
install: 
    cp libboost_log.so /usr/lib 
clean: 
    rm *.o 
0

事实证明,在当前的Fedora回购的百胜助推主构建工具构建包称为“bjam”而不是“b2”(正如最新文档所暗示的那样)。

所以,如果你找不到b2使用bjam。