Avatar ·

लिंकिंग त्रुटि: /usr/bin/ld: cannot find -l<लाइब्रेरी_नाम> C++ on Linux में

नमस्ते! मैं C++ और Linux में नया हूँ, और कई घंटों से इस त्रुटि से जूझ रहा हूँ। मैं एक सरल प्रोग्राम लिख रहा हूँ जो इमेज प्रोसेसिंग के लिए लाइब्रेरी (libpng) का उपयोग करता है। इसे apt के माध्यम से इंस्टॉल किया: `sudo apt install libpng-dev`। यहाँ मेरा कोड है (फ़ाइल main.cpp):\n\n```cpp\n#include \n#include \n\nint main() {\n std::cout << "Hello, PNG!" << std::endl;\n return 0;\n}\n```\n\nइस तरह कंपाइल कर रहा हूँ: `g++ main.cpp -o test -lpng`। जवाब में मिलता है:\n\n```\n/usr/bin/ld: cannot find -lpng\ncollect2: error: ld returned 1 exit status\n```\n\nमैंने जाँच की कि लाइब्रेरी फ़ाइलें मौजूद हैं: `ls /usr/lib/x86_64-linux-gnu/libpng*` दिखाता है `libpng16.a`, `libpng16.so`, `libpng.a` और `libpng.so`। लिंकर लाइब्रेरी क्यों नहीं ढूँढ पा रहा है? मैंने अलग-अलग फ़्लैग आज़माए: `-L/usr/lib/x86_64-linux-gnu`, `-static`, लेकिन कुछ भी काम नहीं आया।