ในอดีต ความไม่รู้ของฉันทำให้ฉันยุ่งกับเวอร์ชัน gcc/g++ ปัจจุบัน ผมใช้อยู่ อูบุนตู 18.04 และวิ่ง gcc -- รุ่น
ให้ฉันนี้:
gcc (อูบุนตู 8.4.0-1ubuntu1~18.04) 8.4.0
ลิขสิทธิ์ (C) 2018 Free Software Foundation, Inc.
นี่เป็นซอฟต์แวร์ฟรี ดูแหล่งที่มาสำหรับเงื่อนไขการคัดลอก ไม่มี
การรับประกัน; ไม่แม้แต่สำหรับการค้าหรือความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ
อย่างไรก็ตาม หลังจากการดีบัก ฉันรู้ว่า libstdc++.so.6 ของฉันเชื่อมโยงกับเวอร์ชันที่ไม่ถูกต้อง ฉันรู้เรื่องนี้ด้วยการวิ่ง ls -l /usr/lib/x86_64-linux-gnu/libstdc++.so.6
ซึ่งทำให้ฉัน:
lrwxrwxrwx 1 รูทรูท 19 พฤษภาคม 19 2020 /usr/lib/x86_64-linux-gnu/libstdc++.so.6 -> libstdc++.so.6.0.28
ตรวจสอบกับ เอบีไอเห็นได้ชัดว่ามาจาก gcc 9.3.0 ซึ่งฉันจำได้ว่าเคยติดตั้งเมื่อถึงจุดหนึ่ง สิ่งนี้ทำให้ฉันมีข้อบกพร่องแปลก ๆ เมื่อเขียนโปรแกรม C ++
ตอนนี้ฉันต้องการเชื่อมโยง libstdc++.so.6 กลับไปที่ gcc 8 แต่ฉันไม่แน่ใจว่าวิธีที่งี่เง่าน้อยกว่านี้คืออะไร ฉันควรลองลบ GCC 9 และติดตั้ง GCC 8 ใหม่หรือไม่
วิ่ง ค้นหา libstdc++.so.6
ให้ฉันนี้:
/opt/nvidia/nsight-systems/2020.3.2/host-linux-x64/libstdc++.so.6
/opt/nvidia/nsight-systems/2020.3.2/target-linux-armv8/host-linux-armv8/libstdc++.so.6
/snap/core18/1988/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core18/1988/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
/snap/core18/1988/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25-gdb.py
/snap/core18/2066/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/snap/core18/2066/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
/snap/core18/2066/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25-gdb.py
/usr/lib/i386-linux-gnu/libstdc++.so.6
/usr/lib/i386-linux-gnu/libstdc++.so.6.0.28
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28
/usr/share/gdb/auto-load/usr/lib/i386-linux-gnu/libstdc++.so.6.0.28-gdb.py
/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28-gdb.py