Lainnya

Mac Bagaimana cara menghindari 'simbol tidak terdefinisi untuk arsitektur x86_64'?

mikesang

ke
poster asli
22 Mei 2010
Tokyo, Jepang
  • 25 Juli 2015
Saya mencoba membuat kompilasi silang untuk Lego RCX lama saya, saya menggunakan GCC 3.3.6 dan NEWLIB 1.13.
Kode: |_+_|
Ketika saya membuatnya, akhirnya saya mendapatkan kesalahan seperti di bawah ini, apa yang bisa saya lakukan?
Kode: |_+_|

Madd the Sane

ke
8 November 2010


Utah
  • 2 Agustus 2015
Apa yang terjadi adalah bahwa penaut OS X tidak dapat menemukan fungsi yang ditentukan dalam apa pun yang coba ditautkan. Alasannya mungkin karena makro praprosesor tidak ada, atau kode dan/atau pustaka yang dikompilasi tidak ditautkan.

mikesang

ke
poster asli
22 Mei 2010
Tokyo, Jepang
  • 4 Agustus 2015
Madd the Sane berkata: Apa yang terjadi adalah bahwa tautan OS X tidak dapat menemukan fungsi yang ditentukan dalam apa pun yang coba ditautkan. Alasannya mungkin karena makro praprosesor tidak ada, atau kode dan/atau pustaka yang dikompilasi tidak ditautkan.
Terima kasih atas pesan Anda! dapatkah Anda memberi tahu saya bagaimana menyelesaikan masalah ini? C

cqexbesd

4 Juni 2009
Jerman
  • 4 Agustus 2015
mikezang berkata: Terima kasih atas pesan Anda! dapatkah Anda memberi tahu saya bagaimana menyelesaikan masalah ini?

Saya hanya menebak di sini, tetapi saya pikir Anda mungkin perlu menginstal gperf. Kemudian mulailah membangun dari awal - yaitu buat distclean atau serupa - atau hapus saja direktori Anda dan perluas file tar lagi.

Cromulent

2 Oktober 2006
Tanah Harapan dan Kemuliaan
  • 4 Agustus 2015
mikezang berkata: Terima kasih atas pesan Anda! dapatkah Anda memberi tahu saya bagaimana menyelesaikan masalah ini?

Sepertinya Anda menggunakan GCC yang salah.

Ketikkan path lengkap ke GCC 3.3.6 atau tambahkan ke path dengan nama yang berbeda dari GCC (karena Apple sudah menyediakan perintah GCC yang kebetulan benar-benar menjalankan dentang). Inilah sebabnya mengapa Anda memiliki kesalahan berikut:

ld: simbol tidak ditemukan untuk arsitektur x86_64

dentang: error: perintah tautan gagal dengan kode keluar 1 (gunakan -v untuk melihat permintaan)

Anda sebenarnya menjalankan Dentang yang mengkompilasi ke x86_64. Anda perlu menjalankan GCC yang telah Anda kompilasi. Biasanya ketika mengkompilasi GCC sebagai kompiler silang, Anda memberinya nama yang berbeda dari GCC (yang merupakan salah satu opsi konfigurasi skrip untuk GCC saat mengompilasinya) sehingga Anda dapat membedakan antara GCC yang disediakan oleh sistem dan GCC silang Anda sendiri penyusun.

mikesang

ke
poster asli
22 Mei 2010
Tokyo, Jepang
  • 4 Agustus 2015
cqexbesd berkata: Saya hanya menebak di sini, tetapi saya pikir Anda mungkin perlu menginstal gperf. Kemudian mulailah membangun dari awal - yaitu buat distclean atau serupa - atau hapus saja direktori Anda dan perluas file tar lagi.
Besar! Tadi malam saya menemukan halaman ini http://stackoverflow.com/questions/3040801/error-compiling-gcc-undefined-reference-to-libc-name-p , kesalahan hilang setelah mengikutinya.