使用cmake在cygwin下编译mysql客户端

时间:2011-02-18 00:33:16

标签: mysql cygwin compilation

我需要一个用于Eclipse Helios / Perl EPIC的mysql客户端,在windows7下运行。 Perl5.10在同一台机器上的cygwin下运行。我真的很想在cygwin下使用cmake编译mysql源代码。我还阅读了"configure" to "cmake"的转换指南。

这是我在之前的十几个版本中尝试过的最后一次测试:

图书馆和来源准备

apt-cyg install make cmake gcc4-core gcc4-g++ libncurses-devel libncursesw-devel readline libstdc++6 libstdc++6-devel  
mkdir -p /usr/local/src  
mkdir -p /usr/local/mysql  
cd /usr/local/src  
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.9.tar.gz/from/http://mirrors.ircam.fr/pub/mysql/  
find . -type f -name "*.tar.gz" -exec tar -zxvf {} \;  
find . -type d -name "mysql-*" -exec cd {} \;  

构建/安装

CC=gcc; CFLAGS=-O3 ; CXX=gcc ; CXXFLAGS=-O3; export CC CFLAGS CXX CXXFLAGS  

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DWITH_EMBEDDED_SERVER=0 -DWITH_LIBEDIT=0 -DISABLE_SHARED=1   

使用

以86%停止构建
[ 86%] Building CXX object sql/CMakeFiles/mysqld.dir/main.cc.o  
Linking CXX executable mysqld.exe  
Creating library file: libmysqld.dll.a  
libsql.a(mysqld.cc.o):mysqld.cc:(.rdata$_ZTV12Comp_creator[vtable for Comp_creator]+0x10): undefined reference to `___cxa_pure_virtual'  
collect2: ld returned 1 exit status  
make[2]: *** [sql/mysqld.exe] Error 1  
make[1]: *** [sql/CMakeFiles/mysqld.dir/all] Error 2  

我读了100个帖子,但盲目地认为缺乏编译技巧。

也许还有另一个或更好的解决方案来运行我在Eclipse中托管在Debian虚拟机(作为我的Windows机器上的guest虚拟机)上的现有mysql调试服务器。?

建议非常欢迎。

提前谢谢

1 个答案:

答案 0 :(得分:0)

哼,看起来没有绝对需要这样做来使用Eclipse的perl epic,因为cygwin perl已经嵌入了DBI模块(要加载CPAN)。所以这是一种解决这个问题的方法。