myduper 官网:https://answers.launchpad.net/mydumper/
下载之后,安装报错:
[root@localhost local]# cd mydumper-0.6.2 [root@localhost mydumper-0.6.2]# [root@localhost mydumper-0.6.2]# ls binlog.c CMakeCache.txt common.h docs g_unix_signal.h myloader.c Processing server_detect.c binlog.h CMakeFiles config.h Finished mydumper.c myloader.h README server_detect.h cmake CMakeLists.txt config.h.in g_unix_signal.c mydumper.h Package Running [root@localhost mydumper-0.6.2]# cmake . -- The CXX compiler identification is GNU 4.4.7 -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Using mysql-config: /usr/local/mysql/bin/mysql_config -- Found MySQL: /usr/local/mysql/include, /usr/local/mysql/lib/libmysqlclient.so;/usr/lib/libpthread.so;/usr/lib/libm.so;/usr/lib/librt.so;/usr/lib/libdl.so -- checking for one of the modules ‘glib-2.0‘ CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:363 (message): None of the required ‘glib-2.0‘ found Call Stack (most recent call first): cmake/modules/FindGLIB2.cmake:10 (pkg_search_module) CMakeLists.txt:10 (find_package) -- checking for one of the modules ‘gthread-2.0‘ CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:363 (message): None of the required ‘gthread-2.0‘ found Call Stack (most recent call first): cmake/modules/FindGLIB2.cmake:11 (pkg_search_module) CMakeLists.txt:10 (find_package) CMake Warning at docs/CMakeLists.txt:9 (message): Unable to find Sphinx documentation generator -- ------------------------------------------------ -- MYSQL_CONFIG = /usr/local/mysql/bin/mysql_config -- CMAKE_INSTALL_PREFIX = /usr/local -- BUILD_DOCS = ON -- WITH_BINLOG = OFF -- RUN_CPPCHECK = OFF -- Change a values with: cmake -D<Variable>=<Value> -- ------------------------------------------------ -- CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: GLIB2_LIBRARIES (ADVANCED) linked by target "mydumper" in directory /usr/local/mydumper-0.6.2 linked by target "myloader" in directory /usr/local/mydumper-0.6.2 GTHREAD2_LIBRARIES (ADVANCED) linked by target "mydumper" in directory /usr/local/mydumper-0.6.2 linked by target "myloader" in directory /usr/local/mydumper-0.6.2 -- Configuring incomplete, errors occurred! See also "/usr/local/mydumper-0.6.2/CMakeFiles/CMakeOutput.log". See also "/usr/local/mydumper-0.6.2/CMakeFiles/CMakeError.log".
cmake . 报错:
None of the required ‘glib-2.0‘ found
None of the required ‘gthread-2.0‘ found
网上搜索,没有找到解决办法,于是只好去官网寻找方法:
https://answers.launchpad.net/mydumper/+faq/349
Run: cmake . make One needs to install development versions of required libaries (MySQL, GLib, ZLib, PCRE): NOTE: you must use the correspondent mysql devel package. * Ubuntu or Debian: apt-get install libglib2.0-dev libmysqlclient15-dev zlib1g-dev libpcre3-dev libssl-dev * Fedora, RedHat and CentOS: yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel * openSUSE: zypper install glib2-devel libmysqlclient-devel pcre-devel zlib-devel * MacOSX: port install glib2 mysql5 pcre pkgconfig cmake (You may want to run ‘port select mysql mysql5‘ afterwards) One has to make sure, that pkg-config, mysql_config, pcre-config are all in $PATH Binlog dump is disabled by default to compile with it you need to add -DWITH_BINLOG=ON to cmake options Obviously you need compiler and make packages too :)
可以看到需要安装依赖:
Fedora, RedHat and CentOS: yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel
于是按照说明进行安装:
[root@localhost mydumper-0.6.2]# yum install glib2-devel mysql-devel zlib-devel pcre-devel openssl-devel Loaded plugins: fastestmirror, refresh-packagekit, security Setting up Install Process Loading mirror speeds from cached hostfile * c6-media: Package mysql-devel-5.1.73-3.el6_5.i686 already installed and latest version Package zlib-devel-1.2.3-29.el6.i686 already installed and latest version Package pcre-devel-7.8-6.el6.i686 already installed and latest version Package openssl-devel-1.0.1e-30.el6.i686 already installed and latest version Resolving Dependencies --> Running transaction check ---> Package glib2-devel.i686 0:2.28.8-4.el6 will be installed --> Finished Dependency Resolution Dependencies Resolved ========================================================================================================================================== Package Arch Version Repository Size ========================================================================================================================================== Installing: glib2-devel i686 2.28.8-4.el6 c6-media 298 k Transaction Summary ========================================================================================================================================== Install 1 Package(s) Total download size: 298 k Installed size: 1.5 M Is this ok [y/N]: y Downloading Packages: Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Installing : glib2-devel-2.28.8-4.el6.i686 1/1 Unable to connect to dbus Verifying : glib2-devel-2.28.8-4.el6.i686 1/1 Installed: glib2-devel.i686 0:2.28.8-4.el6 Complete!
再来编译安装 mydumper:
[root@localhost mydumper-0.6.2]# cmake . -- Using mysql-config: /usr/local/mysql/bin/mysql_config -- Found MySQL: /usr/local/mysql/include, /usr/local/mysql/lib/libmysqlclient.so;/usr/lib/libpthread.so;/usr/lib/libm.so;/usr/lib/librt.so;/usr/lib/libdl.so -- checking for one of the modules ‘glib-2.0‘ -- checking for one of the modules ‘gthread-2.0‘ CMake Warning at docs/CMakeLists.txt:9 (message): Unable to find Sphinx documentation generator -- ------------------------------------------------ -- MYSQL_CONFIG = /usr/local/mysql/bin/mysql_config -- CMAKE_INSTALL_PREFIX = /usr/local -- BUILD_DOCS = ON -- WITH_BINLOG = OFF -- RUN_CPPCHECK = OFF -- Change a values with: cmake -D<Variable>=<Value> -- ------------------------------------------------ -- -- Configuring done -- Generating done -- Build files have been written to: /usr/local/mydumper-0.6.2 [root@localhost mydumper-0.6.2]# echo $? 0 [root@localhost mydumper-0.6.2]# make Scanning dependencies of target mydumper [ 25%] Building C object CMakeFiles/mydumper.dir/mydumper.c.o [ 50%] Building C object CMakeFiles/mydumper.dir/server_detect.c.o [ 75%] Building C object CMakeFiles/mydumper.dir/g_unix_signal.c.o Linking C executable mydumper [ 75%] Built target mydumper Scanning dependencies of target myloader [100%] Building C object CMakeFiles/myloader.dir/myloader.c.o Linking C executable myloader [100%] Built target myloader [root@localhost mydumper-0.6.2]# make install [ 75%] Built target mydumper [100%] Built target myloader Install the project... -- Install configuration: "" -- Installing: /usr/local/bin/mydumper -- Removed runtime path from "/usr/local/bin/mydumper" -- Installing: /usr/local/bin/myloader -- Removed runtime path from "/usr/local/bin/myloader"
安装成功。
启发:解决问题的最好方法是到官网查看文档和说明。
原文:http://www.cnblogs.com/digdeep/p/4925560.html