执行如下命令下载解压MySQL8的源码文件压缩包到本地文件:

wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-boost-8.0.13.tar.gz
tar -zxvf mysql-boost-8.0.13.tar.gz
[ -d ~/programs ] && mkdir programs
mv mysql-8.0.13 ~/programs/
cd ~/programs/mysql-8.0.13/
sudo apt-get install cmake bison libaio-dev openssl libssl-dev ncurses-dev -y
mkdir debug
cd debug

然后执行cmake命令:

cmake .. -DBUILD_CONFIG=mysql_release \
-DINSTALL_LAYOUT=STANDALONE \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DENABLE_DTRACE=DFF \
-DWITH_EMBEDDED_SERVER=OFF \
-DWITH_INNODB_MEMCACHED=ON \
-DWITH_SSL=bundled \
-DWITH_ZLIB=system \
-DWITH_PAM=ON \
-DCMAKE_INSTALL_PREFIX=/var/mysql/ \
-DINSTALL_PLUGINDIR="/var/mysql/lib/plugin" \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EDITLINE=bundled \
-DFEATURE_SET=community \
-DCOMPILATION_COMMENT="MySQL Server (GPL)" \
-DWITH_DEBUG=OFF \
-DWITH_BOOST=../boost

运行成功的话,最后会显示:

-- Configuring done
-- Generating done
-- Build files have been written to: /home/zifeiy/programs/mysql-8.0.13/debug

然后在debug目录运行:

make -j 24

进行编译。

编译好了之后,使用如下命令进行安装:

make install

上面是理论上没有问题的,但是我在进行到make -j 24这一步的时候就出现了问题了。

首先,虽然我的笔记本还不错,但是我同时开24个线程去跑在49%的时候,电脑卡死了~~

然后我就直接运行了make但是报错了:

[ 71%] Built target slave
[ 71%] Linking CXX executable ../../../runtime_output_directory/pfs_connect_attr-t
../../../storage/innobase/handler/ha_innodb.cc:18101: 错误: 对‘btr_search_disable(bool)’未定义的引用
../../../storage/innobase/handler/ha_innodb.cc:18099: 错误: 对‘btr_search_enable()’未定义的引用
../../../storage/innobase/handler/ha_innodb.cc:3376: 错误: 对‘btr_drop_ahi_for_table(dict_table_t*)’未定义的引用
../../../storage/innobase/handler/ha_innodb.cc:3338: 错误: 对‘btr_drop_ahi_for_table(dict_table_t*)’未定义的引用
../../../storage/innobase/handler/ha_innodb.cc:4521: 错误: 对‘btr_search_enabled’未定义的引用
../../../storage/innobase/handler/ha_innodb.cc:4522: 错误: 对‘btr_search_enabled’未定义的引用
../../../storage/innobase/handler/ha_innodb.cc:4551: 错误: 对‘btr_search_enabled’未定义的引用
../../../storage/innobase/handler/ha_innodb.cc:6227: 错误: 对‘btr_drop_ahi_for_table(dict_table_t*)’未定义的引用
../../../archive_output_directory/libinnobase.a(ha_innodb.cc.o):ha_innodb.cc:mysql_sysvar_adaptive_hash_index_parts: 错误: 对‘btr_ahi_parts’未定义的引用
../../../archive_output_directory/libinnobase.a(ha_innodb.cc.o):ha_innodb.cc:mysql_sysvar_adaptive_hash_index: 错误: 对‘btr_search_enabled’未定义的引用
../../../storage/innobase/handler/ha_innopart.cc:197: 错误: 对‘btr_drop_ahi_for_table(dict_table_t*)’未定义的引用
../../../storage/innobase/handler/handler0alter.cc:6801: 错误: 对‘btr_drop_ahi_for_index(dict_index_t*)’未定义的引用
../../../storage/innobase/ibuf/ibuf0ibuf.cc:533: 错误: 对‘btr_search_info_create(mem_block_info_t*)’未定义的引用
../../../storage/innobase/page/page0page.cc:650: 错误: 对‘btr_search_move_or_delete_hash_entries(buf_block_t*, buf_block_t*, dict_index_t*)’未定义的引用
../../../storage/innobase/page/page0page.cc:793: 错误: 对‘btr_search_move_or_delete_hash_entries(buf_block_t*, buf_block_t*, dict_index_t*)’未定义的引用
../../../storage/innobase/page/page0zip.cc:2587: 错误: 对‘btr_search_drop_page_hash_index(buf_block_t*)’未定义的引用
../../../storage/innobase/row/row0sel.cc:1585: 错误: 对‘btr_ahi_parts’未定义的引用
../../../storage/innobase/row/row0sel.cc:1585: 错误: 对‘btr_search_latches’未定义的引用
../../../storage/innobase/include/btr0sea.ic:188: 错误: 对‘btr_ahi_parts’未定义的引用
../../../storage/innobase/include/btr0sea.ic:188: 错误: 对‘btr_search_latches’未定义的引用
../../../storage/innobase/row/row0sel.cc:1549: 错误: 对‘btr_search_latches’未定义的引用
../../../storage/innobase/row/row0sel.cc:1549: 错误: 对‘btr_ahi_parts’未定义的引用
../../../storage/innobase/include/btr0sea.ic:188: 错误: 对‘btr_search_latches’未定义的引用
../../../storage/innobase/srv/srv0srv.cc:1316: 错误: 对‘btr_search_sys’未定义的引用
../../../storage/innobase/srv/srv0start.cc:3091: 错误: 对‘btr_search_disable(bool)’未定义的引用
../../../storage/innobase/srv/srv0start.cc:3105: 错误: 对‘btr_search_sys_free()’未定义的引用
../../../storage/innobase/btr/btr0btr.cc:778: 错误: 对‘btr_search_drop_page_hash_index(buf_block_t*)’未定义的引用
../../../storage/innobase/btr/btr0btr.cc:1458: 错误: 对‘btr_search_drop_page_hash_index(buf_block_t*)’未定义的引用
../../../storage/innobase/btr/btr0btr.cc:1216: 错误: 对‘btr_search_drop_page_hash_index(buf_block_t*)’未定义的引用
../../../storage/innobase/btr/btr0btr.cc:2954: 错误: 对‘btr_search_move_or_delete_hash_entries(buf_block_t*, buf_block_t*, dict_index_t*)’未定义的引用
../../../storage/innobase/btr/btr0btr.cc:2572: 错误: 对‘btr_search_move_or_delete_hash_entries(buf_block_t*, buf_block_t*, dict_index_t*)’未定义的引用
../../../storage/innobase/btr/btr0cur.cc:3077: 错误: 对‘btr_search_update_hash_on_insert(btr_cur_t*)’未定义的引用
../../../storage/innobase/btr/btr0cur.cc:3458: 错误: 对‘btr_search_update_hash_on_delete(btr_cur_t*)’未定义的引用
../../../storage/innobase/btr/btr0cur.cc:3713: 错误: 对‘btr_search_update_hash_on_delete(btr_cur_t*)’未定义的引用
../../../storage/innobase/btr/btr0cur.cc:4024: 错误: 对‘btr_search_update_hash_on_delete(btr_cur_t*)’未定义的引用
../../../storage/innobase/btr/btr0cur.cc:4617: 错误: 对‘btr_search_update_hash_on_delete(btr_cur_t*)’未定义的引用
../../../storage/innobase/btr/btr0cur.cc:2903: 错误: 对‘btr_search_update_hash_node_on_insert(btr_cur_t*)’未定义的引用
../../../storage/innobase/btr/btr0cur.cc:2905: 错误: 对‘btr_search_update_hash_on_insert(btr_cur_t*)’未定义的引用
../../../storage/innobase/btr/btr0cur.cc:787: 错误: 对‘btr_search_guess_on_hash(dict_index_t*, btr_search_t*, dtuple_t const*, unsigned long, unsigned long, btr_cur_t*, unsigned long, mtr_t*)’未定义的引用
../../../storage/innobase/include/btr0sea.ic:85: 错误: 对‘btr_search_info_update_slow(btr_search_t*, btr_cur_t*)’未定义的引用
../../../storage/innobase/buf/buf0buf.cc:1331: 错误: 对‘btr_search_sys_create(unsigned long)’未定义的引用
../../../storage/innobase/buf/buf0buf.cc:1854: 错误: 对‘btr_search_disable(bool)’未定义的引用
../../../storage/innobase/buf/buf0buf.cc:2239: 错误: 对‘btr_search_enable()’未定义的引用
../../../storage/innobase/buf/buf0buf.cc:1854: 错误: 对‘btr_search_disable(bool)’未定义的引用
../../../storage/innobase/buf/buf0buf.cc:2217: 错误: 对‘btr_search_sys_resize(unsigned long)’未定义的引用
../../../storage/innobase/buf/buf0lru.cc:236: 错误: 对‘btr_search_drop_page_hash_when_freed(page_id_t const&, page_size_t const&)’未定义的引用
../../../storage/innobase/buf/buf0lru.cc:236: 错误: 对‘btr_search_drop_page_hash_when_freed(page_id_t const&, page_size_t const&)’未定义的引用
../../../storage/innobase/buf/buf0lru.cc:783: 错误: 对‘btr_search_drop_page_hash_when_freed(page_id_t const&, page_size_t const&)’未定义的引用
../../../storage/innobase/dict/dict0dict.cc:2558: 错误: 对‘btr_search_info_get_ref_count(btr_search_t const*, dict_index_t const*)’未定义的引用
../../../storage/innobase/dict/dict0dict.cc:1301: 错误: 对‘btr_search_info_get_ref_count(btr_search_t const*, dict_index_t const*)’未定义的引用
../../../storage/innobase/dict/dict0dict.cc:2432: 错误: 对‘btr_search_info_create(mem_block_info_t*)’未定义的引用
../../../storage/innobase/fsp/fsp0fsp.cc:3432: 错误: 对‘btr_search_drop_page_hash_when_freed(page_id_t const&, page_size_t const&)’未定义的引用
collect2: error: ld returned 1 exit status
storage/perfschema/unittest/CMakeFiles/pfs_connect_attr-t.dir/build.make:215: recipe for target 'runtime_output_directory/pfs_connect_attr-t' failed
make[2]: *** [runtime_output_directory/pfs_connect_attr-t] Error 1
CMakeFiles/Makefile2:3396: recipe for target 'storage/perfschema/unittest/CMakeFiles/pfs_connect_attr-t.dir/all' failed
make[1]: *** [storage/perfschema/unittest/CMakeFiles/pfs_connect_attr-t.dir/all] Error 2
Makefile:162: recipe for target 'all' failed
make: *** [all] Error 2

暂时没有解决,先搁置一下,以后有机会再解决。

ubuntu 18.04下载mysql8.0.13源码并编译安装(暂时没有成功)的更多相关文章

  1. ubuntu13.04下载android4.0.1源码过程

    最初我参考的是老罗的博客http://blog.csdn.net/luoshengyang/article/details/6559955 进行下载安装的,但弄着弄着就发现不太对劲了.这里记录下详细过 ...

  2. Ubuntu12.04下载Android4.0.1源码全过程,附若干问题解决[转]

    学校里一直在做应用层开发,考虑到日后就业问题,这次决定研究源码和驱动,并进行编译.没想到就下载源码这一步折腾了我整整两天,期间遇到很多问题,哎,记录于此,希望日后再下源码的人不要再走无谓的弯路了.事实 ...

  3. [2013.7.5新鲜出炉] Ubuntu12.04下载Android4.0.1源码全过程----------------折腾两天,终于下好,附若干问题解决

    本文转至 http://blog.csdn.net/yanzi1225627/article/details/9255457 下载源码这一步折腾了我整整两天,期间遇到很多问题,哎,记录于此,希望日后再 ...

  4. 转载: ubuntu13.04下载android4.0.1源码过程

    转自:http://blog.csdn.net/zhanglongit/article/details/9263009,中间有些不行的地方进行了些小修改. 最初我参考的是老罗的博客http://blo ...

  5. CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作

    CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作 2018年07月05日 00:28:38 String峰峰 阅读数:2614   使用yum安装的MySQL一般版本比较旧,但 ...

  6. MySQL源码包编译安装

    +++++++++++++++++++++++++++++++++++++++++++标题:MySQL数据库实力部署时间:2019年3月9日内容:MySQL源码包进行编译,然后部署MySQL单实例重点 ...

  7. Ubuntu 18.04 下载地址

    http://mirrors.163.com/ubuntu-releases/18.04/

  8. Ubuntu 18.04 截图工具 Shutter(可以标记重点)-安装及使用

    Shutter 是一个功能丰富的屏幕截图程序.您可以屏幕的某个特定区域.特定的窗口. 或者是整个屏幕,甚至一整个网站截图.可以对截图应用各种效果,标记重点,然后上 传到一个图片托管网站——所有的任务在 ...

  9. Delphi XE7 Update1 下载破解、带源码和帮助安装序列号

    源:http://blog.csdn.net/tht2009/article/details/39157877 Delphi安装与破解 1.XE7 XE7Update1:http://altd.emb ...

随机推荐

  1. 使用fastjson 进行jsonObject转实体类对象

    使用fastjson 进行jsonObject转实体类对象   1 <dependency> 2 <groupId>com.alibaba</groupId> 3 ...

  2. IList<> IEnumerable<> ReadOnlyCollection<> 使用方向

    无论你把它声明为IList<string>,IEnumerable<string>,ReadOnlyCollection<string>或别的东西,是你...... ...

  3. 下载svn

    http://subversion.apache.org/download.cgi?update=201708081800 Windows下载zip,其他系统的下载tar.gz

  4. windows上hexo: command not found

    使用hexo写博客已经有好几个月了,今天突然出现hexo: command not found,应该与我白天的时候调一下环境变量等有关.在对应的path添加环境变量,即可解决该问题.我的环境变量路径为 ...

  5. linux 命令scp

    scp命令网络传输文件 上传文件 scp 文件名 usename@10.233.23.100:Data/ 上传文件夹到服务器 scp -r 文件夹(不带/)usename@10.233.23.100: ...

  6. JS 读取 获取 cookie

    alert(document.cookie); cookie 只能获取当前域名的cookie, 该页面的其他域名的获取不了的.

  7. 基于栈的指令集与基于寄存器的指令集的区别,JVM指令集实例

    现代JVM在执行Java代码的时候,通常都会将解释执行与编译执行两者结合起来 所谓解释执行,就是通过解释器来读取字节码,遇到相应的指令就去执行该指令. 所谓编译执行,就是通过即时编译器(Just In ...

  8. TP5单元测试

    tp5版本: 5.0.24 单元测试版本:1.* 1. 安装单元测试扩展: composer require topthink/think-testing .* 2.安装完毕,运行 php think ...

  9. C#多线程和异步——Task和async/await详解

    阅读目录 一.什么是异步 二.Task介绍 1 Task创建和运行 2 Task的阻塞方法(Wait/WaitAll/WaitAny) 3 Task的延续操作(WhenAny/WhenAll/Cont ...

  10. Spring Boot Actuator:健康检查、审计、统计和监控(转)

    Spring Boot Actuator可以帮助你监控和管理Spring Boot应用,比如健康检查.审计.统计和HTTP追踪等.所有的这些特性可以通过JMX或者HTTP endpoints来获得. ...