我創建了一個簡單的使用靜態庫的拼寫檢查程序,因爲我希望其他人能夠使用拼寫檢查功能。這兩個問題區域位於庫源代碼和庫頭中。當我編譯庫時,這是我得到的錯誤:C++靜態庫鏈接器錯誤
ar -cvq libspellcheck.a checker.o
a - checker.o
g++ -o spell-check main.o meta.o libspellcheck.a
libspellcheck.a(checker.o): In function `check_spelling(char*, char*)':
checker.cpp:(.text+0x0): multiple definition of `check_spelling(char*, char*)'
libspellcheck.a(checker.o):checker.cpp:(.text+0x0): first defined here
collect2: ld returned 1 exit status
make: *** [spellcheck] Error 1
checker.cpp代碼位於here。 頭文件(spellcheck.h)位於here。
我想知道是什麼導致上述錯誤,因爲我無法弄清楚。
謝謝。你的解決方案完美運作 – Igor