Avatar ·

Linux पर .so फ़ाइल में सिंबल (फ़ंक्शन, क्लास) की सूची कैसे देखें?

सभी को नमस्ते! मैं C++ में नौसिखिया हूँ और अभी Linux पर डायनामिक लाइब्रेरी (.so) के बारे में सीखना शुरू किया है। मेरे पास एक लाइब्रेरी है जो कई फ़ाइलों से बनी है। मैं जाँचना चाहता हूँ कि यह कौन से फ़ंक्शन और क्लास एक्सपोर्ट करती है, यानी अन्य प्रोग्राम के लिए कौन से सिंबल उपलब्ध हैं। समस्या: मैंने अपनी लाइब्रेरी `libmylib.so` को g++ से कंपाइल किया, लेकिन जब मैं इसके साथ एक टेस्ट प्रोग्राम लिंक करने की कोशिश करता हूँ, तो लिंकर "undefined reference" एरर देता है। मुझे संदेह है कि फ़ंक्शन के नाम मैंगल हो रहे हैं (name mangling) या मैंने उन्हें extern "C" के रूप में गलत घोषित किया है। लाइब्रेरी बनाने के लिए मैं जो कोड उपयोग कर रहा हूँ, उसका उदाहरण: ```cpp // mylib.h #pragma once void hello(); int add(int a, int b); ``` ```cpp // mylib.cpp #include "mylib.h" #include void hello() { std::cout << "Hello fro