Home Database Mysql Tutorial FreeBSD Release上编译MySQL通不过的解决方法_MySQL

FreeBSD Release上编译MySQL通不过的解决方法_MySQL

Jun 01, 2016 pm 01:55 PM
friend

FreeBSD

在清华BBS上看到有些朋友在 FreeBSD 4.0 Release上编译MySQL时通不过,停留在编译sql/sql_yacc.cc文件处,很长 时间都通不过,有网友说编译了三个多小时都通不过,我真的很佩服他的耐心了。我也 遇到了同样的问题,还有过错误的判断。通过与清华BBS的网友交流,我相信找到了问题 所在。

有网友说用ports安装就没有什么问题,但并没有进一步说明 到底是因为什么。看了一下ports中对mysql-server的说明,原来用ports编译mysql需要 一个包:libtool-1.3.3。

请看FreeBSD对libtool这个包的描述

This is GNU Libtool, a generic library support script. Libtool hides the complexity of using shared libraries behind a consistent, portable interface.
To use libtool, add the new generic library building commands to your Makefile, Makefile.in, or Makefile.am.

这是GNU Libtool,通用的库支持脚本。Libtool 用一致的方便的接口隐藏了使用共享库的复杂性。(蹩脚的翻译)要使用libtool,将新的通用库 编译命令加入Makefile,Makefile.in,或Makefile。am中。

使用ports安装需要先安装libtool-1.3.3这个包,但是不用ports安装, 直接编译也需要么?实验证明是不需要的,在没有安装libtool包的情况下直接编译mysql也可以通过, 只是停留在编译sql_yacc.cc这个文件的时间非常长,一般人都会觉得编译出了问题而中断编译过程。 如果你耐心等待,并且有足够的内存和交换分区,应该是可以编译通过的。

如果在编译sql_yacc.cc的时候出现了下面的错误:

Internal Compiler error: program cc1plus got fatal signal 11或
Out of virtual memory或
virtual memory exhausted

该问题是gcc要求大量的内存编译带有嵌入函数(inline function)的sql_yacc.cc, 而系统内存和交换分区不足,那么可以使用./configure --with-low-memory重新配置,再进行编译。

如果你正在使用gcc,该选项使得将-fno-inline加到编译行,如果你正在使用 其他的编译器,则加入-O0。即使你有特别多的存储器和交换空间,也应该试一试--with-low-memory 选项。

我通过测试表明,使用--with-low-memory显著的降低了编译时间,而用ports安装时, ports中的patch将-O0加入了Makefile,不使用--with-low-memory也同样可以快速的编译完成。

其实,FreeBSD 4.0 Release的ISO安装盘中有mysql的二进制安装包, 不用编译,pkg_add就ok了,何必如此麻烦呢?

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Reduce the use of MySQL memory in Docker Reduce the use of MySQL memory in Docker Mar 04, 2025 pm 03:52 PM

This article explores optimizing MySQL memory usage in Docker. It discusses monitoring techniques (Docker stats, Performance Schema, external tools) and configuration strategies. These include Docker memory limits, swapping, and cgroups, alongside

How to solve the problem of mysql cannot open shared library How to solve the problem of mysql cannot open shared library Mar 04, 2025 pm 04:01 PM

This article addresses MySQL's "unable to open shared library" error. The issue stems from MySQL's inability to locate necessary shared libraries (.so/.dll files). Solutions involve verifying library installation via the system's package m

How do you alter a table in MySQL using the ALTER TABLE statement? How do you alter a table in MySQL using the ALTER TABLE statement? Mar 19, 2025 pm 03:51 PM

The article discusses using MySQL's ALTER TABLE statement to modify tables, including adding/dropping columns, renaming tables/columns, and changing column data types.

Run MySQl in Linux (with/without podman container with phpmyadmin) Run MySQl in Linux (with/without podman container with phpmyadmin) Mar 04, 2025 pm 03:54 PM

This article compares installing MySQL on Linux directly versus using Podman containers, with/without phpMyAdmin. It details installation steps for each method, emphasizing Podman's advantages in isolation, portability, and reproducibility, but also

What is SQLite? Comprehensive overview What is SQLite? Comprehensive overview Mar 04, 2025 pm 03:55 PM

This article provides a comprehensive overview of SQLite, a self-contained, serverless relational database. It details SQLite's advantages (simplicity, portability, ease of use) and disadvantages (concurrency limitations, scalability challenges). C

Running multiple MySQL versions on MacOS: A step-by-step guide Running multiple MySQL versions on MacOS: A step-by-step guide Mar 04, 2025 pm 03:49 PM

This guide demonstrates installing and managing multiple MySQL versions on macOS using Homebrew. It emphasizes using Homebrew to isolate installations, preventing conflicts. The article details installation, starting/stopping services, and best pra

How do I configure SSL/TLS encryption for MySQL connections? How do I configure SSL/TLS encryption for MySQL connections? Mar 18, 2025 pm 12:01 PM

Article discusses configuring SSL/TLS encryption for MySQL, including certificate generation and verification. Main issue is using self-signed certificates' security implications.[Character count: 159]

What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)? What are some popular MySQL GUI tools (e.g., MySQL Workbench, phpMyAdmin)? Mar 21, 2025 pm 06:28 PM

Article discusses popular MySQL GUI tools like MySQL Workbench and phpMyAdmin, comparing their features and suitability for beginners and advanced users.[159 characters]

See all articles