2.12.1.7.LinuxAlpha注意事項
2.12.1.7. Linux Alpha注意事項
我們已經用我們的基準和測試套件在Alpha中測試了MySQL 5.1,看起來工作得不錯。
我們目前在配置Alpha EV6處理器的Compaq DS20機器上,在SuSE Linux 7.0中對AXP、內核2.4.4-SMP、Compaq C編譯器(V6.2-505)和Compaq C++編譯器(V6.3-006)構建MySQL二進制軟件包。
你可以從 http://www.support.compaq.com/alpha-tools/ 找到上述編譯器。使用這些編譯器,得到的MySQL性能比gcc要好9-14%。
在Alpha版MySQL中,我們在編譯選項中使用-arch generic標記,可以確保二進制在所有Alpha處理器中運行。我們還采用靜態編譯以避免庫問題。configure命令應為:
CC=ccc CFLAGS="-fast -arch generic" CXX=cxx
CXXFLAGS="-fast -arch generic -noexceptions -nortti"
./configure --prefix=/usr/local/mysql --disable-shared
--with-extra-charsets=complex --enable-thread-safe-client
--with-mysqld-ldflags=-non_shared --with-client-ldflags=-non_shared
如果想要使用egcs,可以使用下面的configure行:
CFLAGS="-O3 -fomit-frame-pointer" CXX=gcc
CXXFLAGS="-O3 -fomit-frame-pointer -felide-constructors
-fno-exceptions -fno-rtti"
./configure --prefix=/usr/local/mysql --disable-shared
已知的在Linux-Alpha中運行MySQL的問題:
· 在gdb 4.18 中不能調試線程應用程序。你應當使用gdb 5.1。
· 使用gcc時如果你嘗試靜態鏈接mysqld,啟動時映像會導致轉儲內核。換句話說,使用gcc時不要使用--with-mysqld-ldflags=-all-static。