terminate
आप का उपयोग करना चाहिए सी ++ मानक पुस्तकालय में परिभाषित किया गया है, तो आप को संकलित करने के जीसीसी का उपयोग कर रहे मान लिया जाये कि वाकई में है कि लिंक कर रहे हैं कि सुनिश्चित करें। जाता है, g++
अपने स्रोत कोड को संकलित करने के निष्पादन, नहींgcc
निष्पादन:
g++ source.cc -o output
जब g++
के रूप में मार डाला, लिंकर स्वचालित रूप से सी ++ मानक पुस्तकालय में (libstdC++) आप के लिए जोड़ता है। आप के बजाय सादे gcc
के रूप में जीसीसी निष्पादित, या आप सीधे लिंकर ld
आह्वान करते हैं, तो आप अपने आप को पुस्तकालय में लिंक करने के लिए -lstdc++
जोड़ने की जरूरत है, उदा .:
gcc source.cc -o output -lstdc++ # Compile directly from source
ld source1.o source2.o -o output -lstdc++ # Link together object files
स्रोत
2010-11-19 06:23:57