VS2010编译log4cxx步骤详解

需积分: 13 4 下载量 5 浏览量 更新于2024-09-14 收藏 650KB PDF 举报
"这篇博客文章提供了在Visual Studio 2010中编译Apache Log4cxx库的详细步骤,包括下载源码、配置环境、解决编译错误等。作者提供了17步操作指南,帮助用户成功集成这个常用的日志框架到VC项目中。" 在VS2010中编译Log4cxx是一项技术性较强的任务,涉及到Apache的 APR (Apache Portable Runtime) 和 APR-Util。以下是一步步的详细说明: 1. 首先,你需要下载Log4cxx 0.10.0的源代码,以及配套的APR 1.2.11和APR-Util 1.2.10的源代码。可以从Apache官方网站获取这些文件。 2. 解压缩所有下载的文件到同一个目录,以便于后续的编译过程。 3. 为了简化路径,你可以将解压后的apr-1.2.11重命名为apr,将apr-util-1.2.10重命名为apr-util。 4. 打开命令行窗口(CMD),定位到Log4cxx源代码的根目录。 5. 在CMD中运行`configure.bat`脚本来初始化编译环境。 6. 接下来,运行`configure-aprutil.bat`以配置APR-Util。 7. 在配置过程中,可能需要手动修改`apu.hw`文件。进入`apr-util\include`目录,打开`apu.hw`文件,这通常需要使用文本编辑器如Notepad++。 8. 修改`apu.hw`文件的内容以适应你的开发环境,这一步可能涉及到调整库的路径或者编译选项,具体修改需要根据错误提示进行。 9. 完成修改后,返回CMD窗口,按照Log4cxx的官方文档或博客中的指示进行剩下的编译和链接步骤。这通常会涉及使用MSBuild或者NMake工具来生成库文件。 10. 编译完成后,你会得到编译好的Log4cxx库,可以将其添加到你的VS2010项目中作为依赖项,以便在你的C++应用程序中使用Log4cxx的日志功能。 11. 最后,确保在项目设置中正确配置包含目录、库目录以及链接器依赖项,以使编译的Log4cxx库能在你的项目中正常工作。 通过以上步骤,你应该能够在VS2010环境中成功编译和集成Log4cxx。注意,编译过程中可能会遇到各种问题,如找不到头文件、链接错误等,这些问题通常需要根据错误信息进行排查和解决。如果遇到困难,可以查阅Log4cxx的官方文档,或者搜索相关的技术论坛和博客以获取帮助。

Log data follows: | DEBUG: Executing shell function do_configure | CMake Warning at CMakeLists.txt:7 (message): | Build type not set, falling back to Release mode. | | To specify build type use: | -DCMAKE_BUILD_TYPE=<mode> where <mode> is Debug or Release. | | | -- Building without demo. To enable demo build use: -DWITH_DEMO=True | -- The C compiler identification is GNU 7.3.0 | -- The CXX compiler identification is GNU 7.3.0 | -- Check for working C compiler: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/aarch64-niic-linux/aarch64-niic-linux-gcc | -- Check for working C compiler: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/aarch64-niic-linux/aarch64-niic-linux-gcc -- works | -- Detecting C compiler ABI info | -- Detecting C compiler ABI info - done | -- Detecting C compile features | -- Detecting C compile features - done | -- Check for working CXX compiler: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/aarch64-niic-linux/aarch64-niic-linux-g++ | -- Check for working CXX compiler: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/aarch64-niic-linux/aarch64-niic-linux-g++ -- works | -- Detecting CXX compiler ABI info | -- Detecting CXX compiler ABI info - done | -- Detecting CXX compile features | -- Detecting CXX compile features - done | -- Found PkgConfig: /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/recipe-sysroot-native/usr/bin/pkg-config (found version "0.29.2") | -- Checking for module 'uuid' | -- Found uuid, version 2.32.1 | -- Output libraries to /home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/git/runtime/Cpp/dist | CMake Error at runtime/CMakeLists.txt:104 (install): | install TARGETS given no LIBRARY DESTINATION for shared library target | "antlr4_shared". | | | CMake Error at runtime/CMakeLists.txt:107 (install): | install TARGETS given no ARCHIVE DESTINATION for static library target | "antlr4_static". | | | -- Configuring incomplete, errors occurred! | See also "/home/wu/test_D9/D9_PTG1.5/build-d9/tmp/work/aarch64-niic-linux/antlr4/4.7.2-r0/build/CMakeFiles/CMakeOutput.log".这是报错的log,如何解决这个问题

2023-07-11 上传