安裝MySQLdb-python時無法找到-lprobes_mysql處理一則 安裝MySQLdb時,我已經做好了如下兩點: 1)配置好mysql_config 有兩種方式可以做: ① 做個軟連接,把mysql_config鏈接到/usr/local/bin下 ② 修改site.cfg配置,把裡面的mysql_config指向$MYSQL_HOME/bin/mysql_config 2)配置動態鏈接庫:把$MYSQL_HOME/mysql/lib寫到/etc/ld.so.conf裡面,然後ldconfig生成cache 以為只欠東風的時候還是陰溝裡翻了,執行:python setup.py install 報錯如下: [plain] gcc -pthread -shared build/temp.linux-i686-2.7/_mysql.o -L/home/mysql/mysql/lib -lmysqlclient -lpthread -lprobes_mysql -lz -lm -lrt -ldl -o build/lib.linux-i686-2.7/_mysql.so /usr/bin/ld: cannot find -lprobes_mysql collect2: ld 返回 1 error: command 'gcc' failed with exit status 1 以為源碼問題,改用Python包管理器安裝:pip install MySQLdb-python 但是報lprobes_mysql無法找到,,蛋裂ing 後來懷疑是gcc問題,畢竟有"error: command 'gcc' failed with exit status " 於是通過本地yum源打上了mysql-devel,還以為終於可以收手了,哎,錯誤依舊!! 回到關鍵點上"/usr/bin/ld: cannot find -lprobes_mysql" 細心分析,我們知道,ld是共享庫加載器,但共享庫的配置我在2)裡面已經做了 沒有道理ld 找不到,除非只有一種可能,那就是本來就沒有,讓ld 怎麼找呢?? 因為我的mysql是源碼編譯安裝的,CMAKE沒有指定-DENABLE_DTRACE=OFF 選項[缺省是ON] 但要重裝mysql??臣妾做不到啊。。。 最後在bugs.mysql.com裡面從某個外國人的評論當中得到啟發 把mysql_config裡面的第112行 libs 鍵值裡面的 -lprobes_mysql去掉,再運行 python setup.py install 成功! 如果您的mysql是二進制安裝或者直接rpm安裝,可能不存在我這個問題