unable to import maven,mysql8沒有cmakelist_CentOS7安裝mysql8.0編譯報錯集合

 2023-10-05 阅读 28 评论 0

摘要:以下都是我安裝mysql8.0遇到的一些報錯和解決方法1、does not appear to contain CMakeLists.txt.原因:mysql下載的源碼包不對unable to import maven?解決方法:下載正確的mysql源碼包。2、配置報錯:Please install the appropriate openssl developer

以下都是我安裝mysql8.0遇到的一些報錯和解決方法

1、does not appear to contain CMakeLists.txt.

d4957d8c55dd2d99639fd677b5a7cae0.png

原因:mysql下載的源碼包不對

unable to import maven?解決方法:下載正確的mysql源碼包。

2、配置報錯:Please install the appropriate openssl developer package.

66787b21b027e643850189d96cf6ec2c.png

解決方法:安裝openssl-devel

yum -y install openssl-devel

mysql,3、配置報錯:Could NOT find Curses

98d50d0cb931ecaab793d93b0dec6253.png

解決方法:安裝ncurses-devel

yum -y install ncurses-devel

4、編譯報錯:Please do not build in-source. ?Out-of source builds are highly

64f1f3943b0f490208f12d0fc8f58a0d.png

cmake set?原因:是它建議你不要構建源代碼。

解決辦法:在配置的時候加入字段:-DFORCE_INSOURCE_BUILD=1

5、配置報錯:The C compiler identification is unknown

7304801ea2679c8804a9d8e0c80d5fe8.png

解決辦法:做一個gcc的軟鏈接。

cmakelists怎么用?ln -s /usr/local/gcc/bin/gcc /usr/bin/cc

6、編譯報錯:/usr/lib/libstdc++.so.6: version `CXXABI_1.3.9' not found

8f6c67df6beeaa9e669ed34c5e0a33a0.png

因為libstdc++.so.6的庫是使用的以前的老庫。

解決辦法:修改軟鏈接

生成cmakelist工具,find / -name libstdc++.so.6

mv /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6_old

ln -s /usr/local/gcc/lib64/libstdc++.so.6.0.25 /usr/lib64/libstdc++.so.6

7、編譯報錯:'SYS_gettid' has not been declared in this scope

d8370b3cd04e4d2fed70f81d5ba59bac.png

cmake編譯安裝,解決方法:在該文件上添加一個頭文件。

vim /usr/local/src/mysql-8.0.16/storage/innobase/buf/buf0buf.cc#在第一行添加

#include "sys/syscall.h"

8、編譯報錯:‘os_compare_and_swap_thread_id’?Has not been declared in this scope

36fcb32d2ed310f7d28f2fde47818d6e.png

cmake 指定編譯器,解決辦法:修改報錯文件內容

vim /usr/local/src/mysql-8.0.16/storage/innobase/lock/lock0lock.cc#將 “os_compare_and_swap_thread_id” 修改為

os_compare_and_swap_lint

9、編譯報錯:/usr/bin/ar: ../../archive_output_directory/libz.a

25053e75a7f263d19d67d2b098647647.png

cmake設置編譯器。解決方法:重新配置編譯

make clean

cmake .....(你的配置參數)

make

10、編譯報錯:_DIAGASSERT、libedit_fgetln、__arraycount、libedit_fgetln an undefined reference

bdf9a06010fea48627f47a7c045cd712.png

解決方法:在各文件里加入sys.h頭文件

#在文件中加入#include

11、mysql登錄報錯:Segmentation fault

解決辦法:找到源碼中terminal.c文件,修改如下圖,然后重新編譯。

fbfba1b8d6b3cfbb372e0a60ce60ed66.png

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/115319.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息