Lain-Lain

Mac Bagaimana untuk mengelakkan 'Simbol tidak ditentukan untuk seni bina x86_64'?

mikezang

kepada
Poster asal
22 Mei 2010
Tokyo, Jepun
  • 25 Jul 2015
Saya cuba mencipta kompilasi silang untuk Lego RCX lama saya, saya menggunakan GCC 3.3.6 dan NEWLIB 1.13.
Kod: |_+_|
Apabila saya berjaya, akhirnya saya mendapat ralat seperti di bawah, apakah yang boleh saya lakukan?
Kod: |_+_|

Madd the Sane

kepada
8 Nov 2010


Utah
  • 2 Ogos 2015
Apa yang berlaku ialah pemaut OS X tidak dapat mencari fungsi yang ditentukan dalam apa-apa yang cuba dipautkan. Sebabnya mungkin kerana makro prapemproses yang hilang atau kod dan/atau pustaka yang disusun tidak dipautkan.

mikezang

kepada
Poster asal
22 Mei 2010
Tokyo, Jepun
  • 4 Ogos 2015
Madd the Sane berkata: Apa yang berlaku ialah penyambung OS X tidak dapat mencari fungsi yang ditentukan dalam apa-apa jua yang cuba dipautkan. Sebabnya mungkin kerana makro prapemproses yang hilang atau kod dan/atau pustaka yang disusun tidak dipautkan.
Terima kasih atas pesanan anda! boleh awak beritahu saya bagaimana untuk menyelesaikan masalah ini? C

cqexbesd

4 Jun 2009
Jerman
  • 4 Ogos 2015
mikezang berkata: Terima kasih atas mesej anda! boleh awak beritahu saya bagaimana untuk menyelesaikan masalah ini?

Saya hanya meneka di sini tetapi saya fikir anda mungkin perlu memasang gprf. Kemudian mula membina dari awal - iaitu buat distclean atau serupa - atau hanya padam direktori anda dan kembangkan fail tar sekali lagi.

Cromulent

2 Okt 2006
Tanah Harapan dan Kemuliaan
  • 4 Ogos 2015
mikezang berkata: Terima kasih atas mesej anda! boleh awak beritahu saya bagaimana untuk menyelesaikan masalah ini?

Nampaknya anda menggunakan GCC yang salah.

Sama ada taip laluan penuh ke GCC 3.3.6 atau tambahkannya pada laluan dengan nama yang berbeza daripada GCC (kerana Apple sudah menyediakan arahan GCC yang sebenarnya menjalankan denting). Inilah sebabnya anda mempunyai ralat berikut:

ld: simbol tidak ditemui untuk seni bina x86_64

clang: ralat: arahan pemaut gagal dengan kod keluar 1 (gunakan -v untuk melihat seruan)

Anda sebenarnya menjalankan Clang yang menyusun kepada x86_64. Anda perlu menjalankan GCC yang anda susun. Biasanya apabila menyusun GCC sebagai pengkompil silang anda memberikannya nama yang berbeza daripada GCC (yang merupakan salah satu pilihan skrip konfigurasi untuk GCC semasa menyusunnya) supaya anda boleh membezakan antara GCC yang disediakan oleh sistem dan silang GCC anda sendiri penyusun.

mikezang

kepada
Poster asal
22 Mei 2010
Tokyo, Jepun
  • 4 Ogos 2015
cqexbesd berkata: Saya hanya meneka di sini tetapi saya fikir anda mungkin perlu memasang gprf. Kemudian mula membina dari awal - iaitu buat distclean atau serupa - atau hanya padam direktori anda dan kembangkan fail tar sekali lagi.
Hebat! Semalam saya jumpa page ni http://stackoverflow.com/questions/3040801/error-compiling-gcc-undefined-reference-to-libc-name-p , ralat hilang selepas mengikutinya.