执行如下命令下载解压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. NOI.ac模拟赛20181021 ball sequence color

    T1 ball 可以发现每次推动球时,是将每个球的位置 −1-1−1 ,然后把最左边的球放到 P−1P-1P−1 处. 记个 −1-1−1 次数,再用set维护就好了. #include <bi ...

  2. MCMC蒙特卡罗马尔科夫模型

    https://www.cnblogs.com/pinard/p/6645766.html https://blog.csdn.net/saltriver/article/details/521949 ...

  3. 洛谷 P1854 花店橱窗布置 题解

    Analysis 给定一个f*v的矩阵 要求从第一行走到第f行,每行取走一个数, 且该行所取的数必须必上一行所取的数的列数大 , 求所能取走的最大值 注意每一行所取走的数字的列数必须大于等该行的行号 ...

  4. 计蒜客模拟赛 #5 (B 题) 动态点分治+线段树

    虽然是裸的换根dp,但是为了在联赛前锻炼码力,强行上了点分树+线段树. 写完+调完总共花了不到 $50$ 分钟,感觉还行. code: #include <bits/stdc++.h> # ...

  5. Jenkins 更改工作目录;

    更改 Jenkins 工作目录:如果使用 tomcat 加载的 war包形式启动 默认配置文件 /root/.jenkins  Jenkins 默认配置文件 /root/.jenkins/config ...

  6. 2017.10.7 国庆清北 D7T1 计数

    题目描述 给出m个数a[1],a[2],…,a[m] 求1~n中有多少数不是a[1],a[2],…,a[m]的倍数. 输入输出格式 输入格式: 输入文件名为count.in. 第一行,包含两个整数:n ...

  7. javascript 是实际上最容易被误解的语言

    不是立 Flag,而是摘录的 JSON 创始人的深切感受.如果你不同意,说明还理解的不够深入(kidding~)   “JavaScript is the world’s most misunders ...

  8. select2多选设置select多选,select2取值和赋值

    select2设置select多选,select2取值和赋值,作为筛选条件的时候,取值相对简单,把选中的id值转为字符串传给后端查询,查询之后会刷新页面,为了在下拉框中显示刚刚选中的值,就需要给sel ...

  9. shell文本处理工具

    本文将介绍Linux下使用Shell处理文本时最常用的工具: find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk: 提供的例子和参数都是最常用和最为实用 ...

  10. java.io.FileNotFoundException: D:\e (拒绝访问。)

    这是因为访问的文件地址是文件夹而不是,具体的文件,把路径改为具体的文件就可以了. 参考文章:https://blog.csdn.net/w405722907/article/details/78610 ...