आपको कमांड के अंत में सबसे स्वतंत्र पुस्तकालय रखना चाहिए, ताकि संकलक प्रतीक और परिभाषाओं को ठीक से ढूंढ सके:
c++ -L/usr/lib/x86_64-linux-gnu -o tom tom.o Block.o IPC.o \
ConnectMxctl.o CI_Metadata.o Log.o \
-lmysqlclient -lpthread -lz -lm -lrt -ldl
इसे इस तरह से करने से, कंपाइलर अगली लिंकिंग फाइलों से अपरिभाषित प्रतीकों को खोजना जारी रखेगा। उदाहरण के लिए यदि IPO.o
CI_Metadata.o
में परिभाषित प्रतीक (प्रकार/वर्ग/संरचना/कार्य आदि) का उपयोग करता है , कंपाइलर इसे ढूंढ सकता है क्योंकि आप CI_Metadata.o
. डालते हैं IPO.o
. के बाद . अधिकांश पुस्तकालय स्वतंत्र हैं, इसलिए वे संकलन/लिंक कमांड के अंत में हैं।