1,gdb
如果編譯用版本控制工具從code repository獲得的mainline代碼,要確定安裝texinfo, flex和bison包。
並給gdb/remote.c打上一下補丁。
buf_len = strlen (rs->buf);
/* Further sanity checks, with knowledge of the architecture. */
+
#if 0
if
(buf_len > 2 * rsa->sizeof_g_packet)
error (_(
"Remote 'g' packet reply is too long: %s"
), rs->buf);
-
+
#endif
+
if
(buf_len > 2 * rsa->sizeof_g_packet) {
+ rsa->sizeof_g_packet = buf_len ;
+
for
(i = 0; i < gdbarch_num_regs (gdbarch); i++) {
+
if
(rsa->regs[i].pnum == -1)
+
continue
;
+
if
(rsa->regs[i].offset >= rsa->sizeof_g_packet)
+ rsa->regs[i].in_g_packet = 0;
+
else
+ rsa->regs[i].in_g_packet = 1;
+ }
+ }
/* Save the size of the packet sent to us by the target. It is used
as a heuristic when determining the max size of packets that the
target can safely receive. */
2,qemu
安裝libsdl1.2-dev,不然qemu啟動後可能沒有圖形介面。啟動後會卡在 "VNC server running on xxxx"
3,libvirt
安裝libtool包,不然autogen.sh運行失敗。
先運行autogen.sh產生configure
安裝gettext包
安裝libgnutls-dev包
4,QPID
安裝uuid-dev,提供uuid/uuid.h標頭檔
安裝libsasl2-dev,提供sasl/sasl.h標頭檔
安裝sasl2-bin,提供saslpasswd2
安裝libboost-program-options-dev,提供boost_program_options
安裝libboost-filesystem-dev,提供boost_filesystem
打上fix-qpid-link-problem.patch補丁
在運行configure前,先設定環境變數export LDFLAGS=-L<build-dir>/src/.libs,解決cannot find libxxx問題。
使用python setup.py install安裝qpid-config等工具後,設定環境變數export PYTHONPATH=/home/xxx/workspace/qpid/qpid/python:/home/xxx/workspace/qpid/qpid/extras/qmf/src/py
https://issues.apache.org/jira/browse/QPID-3657
參考:
http://fedoraproject.org/wiki/UnderstandingDSOLinkChange