Dalam pengaturcaraan C++, ralat pautan adalah masalah yang sangat biasa. Salah satu ralat pautan yang biasa ialah "Fail objek yang ditentukan oleh pautan tidak boleh digunakan." Ralat ini menunjukkan bahawa pengkompil tidak boleh memautkan kod anda dengan satu atau lebih fail objek ke dalam fail boleh laku. Ini mungkin disebabkan oleh beberapa faktor, seperti pengkompil anda tidak dapat mencari fail objek, atau mempunyai berbilang versi fail perpustakaan yang menyebabkan pengkompil mengelirukan mereka.
Jadi bagaimana anda harus menyelesaikan ralat ini?
Berikut adalah beberapa penyelesaian yang mungkin:
Semak sama ada pengkompil anda boleh mencari fail objek yang anda tentukan. Pastikan laluan fail objek anda betul. Jika anda menyusun sendiri fail objek, anda perlu memastikan pengkompil boleh menemuinya.
Pilihan pengkompil perlu sepadan dengan pilihan yang anda gunakan untuk menyusun setiap fail. Jika anda menyusun fail objek dan fail boleh laku dengan pilihan yang berbeza, pengkompil tidak boleh memautkannya. Jadi pastikan pilihan kompilasi anda adalah sama supaya pengkompil boleh memautkannya bersama dengan betul.
Jika projek anda menggunakan fail perpustakaan, maka anda perlu memastikan bahawa versi fail perpustakaan yang anda gunakan adalah betul. Jika anda menggunakan versi fail perpustakaan yang berbeza semasa fasa penyusunan daripada semasa fasa pemautan, ralat pemaut akan berlaku. Oleh itu, adalah penting untuk mengekalkan versi fail perpustakaan yang konsisten semasa fasa penyusunan dan pemautan.
Jika anda menggunakan perpustakaan, maka anda perlu memastikan pemaut boleh menemuinya. Ini biasanya memerlukan penambahan laluan fail perpustakaan ke laluan carian pemaut. Secara umumnya, laluan fail perpustakaan boleh ditetapkan dalam tetapan projek.
Kadangkala anda perlu menggunakan pilihan khas pemaut untuk menyelesaikan ralat pemautan. Contohnya, anda boleh menggunakan pilihan pemaut -Wl,-rpath=
Ralat pemautan juga boleh disebabkan oleh penggunaan fail dan simbol pengepala yang salah, jadi anda perlu menyemak kod anda dengan teliti. Pastikan kod anda merujuk fail pengepala dengan betul dan mengisytiharkan serta menggunakan simbol (seperti pembolehubah dan fungsi) dengan betul.
Ringkasnya, apabila anda menghadapi ralat pautan, anda perlu dengan sabar memeriksa punca ralat dan mencuba penyelesaian di atas satu demi satu. Jika anda masih tidak dapat menyelesaikan masalah selepas beberapa percubaan, anda boleh mendapatkan bantuan daripada komuniti sumber terbuka atau forum berkaitan.
Atas ialah kandungan terperinci Ralat kompilasi C++: Fail objek yang ditentukan oleh pautan tidak boleh digunakan, bagaimana untuk menyelesaikannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!