科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道4.11.7 Alpha-DEC-OSF1注意事项

4.11.7 Alpha-DEC-OSF1注意事项

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

如果你有编译问题并安装了DECCC和gcc,尝试这样运行configure:

作者:天极软件 来源:天极软件 2008年1月16日

关键字: MySQL MySQL 5 Alpha

  • 评论
  • 分享微博
  • 分享邮件

如果你有编译问题并安装了DECCCgcc,尝试这样运行configure

shell> CC=cc CFLAGS=-O CXX=gcc CXXFLAGS=-O3 \
       ./configure --prefix=/usr/local/mysql

如果你得到“c_asm.h”文件的问题,你可以创建并使用一个“哑(dummy)”“c_asm.h”文件:

shell> touch include/c_asm.h
shell> CC=gcc CFLAGS=-I./include \
       CXX=gcc CXXFLAGS=-O3 \
       ./configure --prefix=/usr/local/mysql

在OSF1 V4.0D和编译器"DEC C V5.6-071 on Digital UNIX V4.0 (Rev. 878)" 上,编译器有了一些奇怪的行为(未定义asm标志)。/bin/ld好象也被破坏(当链接mysqld时,发生_exit undefined问题)。在这个系统上,从OSF 4.0C的版本替换了/bin/ld后,我们设法用下列configure命令行编译MySQL,:

shell> CC=gcc CXX=gcc CXXFLAGS=-O3 ./configure --prefix=/usr/local/mysql 

用Digital编译器“C++ V6.1-029”,下列命令应该工作:

CC=cc -pthread
CFLAGS=-O4 -ansi_alias -ansi_args -fast -inline speed -speculate all -arch host
CXX=cxx -pthread
CXXFLAGS=-O4 -ansi_alias -ansi_args -fast -inline speed -speculate all -arch host
export CC CFLAGS CXX CXXFLAGS
./configure --prefix=/usr/mysql/mysql --with-low-memory --enable-large-files \
--with-mysqld-ldflags=-all-static --disable-shared --with-named-thread-libs="-lmach -lexc -lc"

在OSF1的某些版本中,alloca()函数被破坏,通过删除定义'HAVE_ALLOCA'的“config.h”的行更正它。

alloca()函数也可能在/usr/include/alloca.h里面有一个不正确的原型,源于此的警告可以忽略。

configure将自动地使用下列线程库: --with-named-thread-libs="-lpthread -lmach -lexc -lc"

当使用gcc时,你也可以试试这样运行configure

shell> CFLAGS=-D_PTHREAD_USE_D4  CXX=gcc  CXXFLAGS=-O3  ./configure ……

如果你的信号有问题(MySQL出人意料地在高负载下死掉),你可能找到了一个线程和信号有关的OS错误。在这种情况下,你可以告诉MySQL如下配置以不使用信号:

shell> CFLAGS=-DDONT_USE_THR_ALARM \
       CXXFLAGS=-DDONT_USE_THR_ALARM \
       ./configure ...

这不影响MySQL性能,但是有负面效应,就是你不能用mysqladmin killmysqladmin shutdown杀死在一个连接上“睡眠”的客户。相反,当客户发出下一个命令时,它将死掉。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章