Gcc
/usr/bin/ld: 找不到 -lmysqlclient 錯誤但我已經安裝了 libmysqlclient-dev
我正在嘗試編譯我從一個開發者網站獲得的原始碼,該網站公開了他的個人小型 MMO,在嘗試編譯時我得到:
gcc -O -g -m32 -rdynamic -L/usr/lib/mysql -o server .obj/server.o .obj/io.o .obj/libload.o .obj/tool.o .obj/sleep.o .obj/log.o .obj/create.o .obj/notify.o .obj/skill.o .obj/do.o .obj/act.o .obj/player.o .obj/rdtsc.o .obj/los.o .obj/light.o .obj/map.o .obj/path.o .obj/error.o .obj/talk.o .obj/drdata.o .obj/death.o .obj/database.o .obj/see.o .obj/drvlib.o .obj/timer.o .obj/expire.o .obj/effect.o .obj/command.o .obj/date.o .obj/container.o .obj/store.o .obj/mem.o .obj/sector.o .obj/chat.o .obj/statistics.o .obj/mail.o .obj/player_driver.o .obj/clan.o .obj/lookup.o .obj/area.o .obj/task.o .obj/punish.o .obj/depot.o .obj/prof.o .obj/motd.o .obj/ignore.o .obj/tell.o .obj/clanlog.o .obj/respawn.o .obj/poison.o .obj/swear.o .obj/lab.o .obj/consistency.o .obj/btrace.o .obj/club.o .obj/teufel_pk.o .obj/questlog.o .obj/badip.o -lmysqlclient -lm -lz -ldl -lpthread /usr/bin/ld: cannot find -lmysqlclient
我跑過:
sudo apt-get install libmysqlclient-dev
我在 Ubuntu 14.04 LTS 上,任何資訊都會非常感謝。
編輯:
ubuntu@va~/astonia3_server$ ls /usr/lib lib/ lib32/ libx32/ ubuntu@va:~/astonia3_server$ ls /usr/lib/libmysql* ls: cannot access /usr/lib/libmysql*: No such file or directory ubuntu@va:~/astonia3_server$ ls /usr/lib64/libmysql* ls: cannot access /usr/lib64/libmysql*: No such file or directory
編輯2:
/usr/share/doc/libmysqlclient-dev /usr/share/doc/libmysqlclient18 /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0 /usr/lib/x86_64-linux-gnu/libmysqlclient.a /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so /usr/lib/x86_64-linux-gnu/libmysqlclient_r.a /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18 /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18 /usr/lib/x86_64-linux-gnu/libmysqlclient.so /usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18.0.0
您收到錯誤是因為:
- 你給了連結器錯誤的路徑來尋找共享庫
- 即使路徑正確,您也會收到另一個錯誤,因為您請求建構 32 位二進製文件,並且您有 64 位庫。
通過發布或保留預設值,開始建構與您的arch匹配的二進製文件。
-m64
如果您需要 32 位二進製文件,或者獲取 32 位共享庫。這更像是 SO 問題,而不是 SF。