EnglishFrenchSpanyol

Ad


Favicon OnWorks

h8300-hitachi-coff-ld - Dalam Talian di Awan

Jalankan h8300-hitachi-coff-ld dalam penyedia pengehosan percuma OnWorks melalui Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS

Ini ialah arahan h8300-hitachi-coff-ld yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.

JADUAL:

NAMA


ld - Menggunakan LD, penyambung GNU

SINOPSIS


ld [pilihan] objfile ...

DESCRIPTION


ld menggabungkan beberapa objek dan fail arkib, menempatkan semula data mereka dan mengikat simbol
rujukan. Biasanya langkah terakhir dalam menyusun atur cara ialah menjalankan ld.

ld menerima fail Bahasa Perintah Penghubung yang ditulis dalam superset Editor Pautan AT&T
Sintaks Bahasa Perintah, untuk menyediakan kawalan yang jelas dan menyeluruh ke atas proses pemautan.

Halaman manusia ini tidak menerangkan bahasa arahan; lihat ld entri dalam "maklumat", atau
manual ld: penyambung GNU, untuk butiran penuh tentang bahasa arahan dan aspek lain
daripada penyambung GNU.

Versi ld menggunakan perpustakaan BFD tujuan umum untuk beroperasi pada fail objek. ini
membolehkan ld untuk membaca, menggabungkan dan menulis fail objek dalam pelbagai format---untuk
contoh, COFF atau "a.out". Format yang berbeza boleh dikaitkan bersama untuk menghasilkan sebarang
jenis fail objek yang tersedia.

Selain daripada fleksibilitinya, penyambung GNU lebih membantu daripada penyambung lain dalam menyediakan
maklumat diagnostik. Ramai penyambung meninggalkan pelaksanaan serta-merta apabila menemui a
kesilapan; bila-bila boleh, ld terus melaksanakan, membolehkan anda mengenal pasti ralat lain
(atau, dalam beberapa kes, untuk mendapatkan fail output walaupun terdapat ralat).

Penyambung GNU ld bertujuan untuk merangkumi pelbagai situasi, dan serasi
mungkin dengan penghubung lain. Akibatnya, anda mempunyai banyak pilihan untuk mengawalnya
tingkah laku.

PILIHAN


Penyambung menyokong banyak pilihan baris perintah, tetapi dalam amalan sebenar hanya sedikit daripadanya
digunakan dalam mana-mana konteks tertentu. Sebagai contoh, penggunaan yang kerap ld adalah untuk menghubungkan
fail objek Unix standard pada sistem Unix standard yang disokong. Pada sistem sedemikian, untuk
pautkan fail "hello.o":

ld -o /lib/crt0.o hello.o -lc

Ini memberitahu ld untuk menghasilkan fail yang dipanggil output sebagai hasil daripada memautkan fail
"/lib/crt0.o" dengan "hello.o" dan perpustakaan "libc.a", yang akan datang daripada standard
cari direktori. (Lihat perbincangan mengenai -l pilihan di bawah.)

Beberapa pilihan baris arahan untuk ld boleh ditentukan pada mana-mana titik dalam baris arahan.
Walau bagaimanapun, pilihan yang merujuk kepada fail, seperti -l or -T, menyebabkan fail dibaca di
titik di mana pilihan muncul dalam baris arahan, berbanding dengan fail objek dan
pilihan fail lain. Mengulangi pilihan bukan fail dengan hujah yang berbeza akan sama ada
tiada kesan lanjut, atau mengatasi kejadian sebelumnya (yang lebih jauh ke kiri pada arahan
baris) daripada pilihan itu. Pilihan yang mungkin dinyatakan secara bermakna lebih daripada sekali ialah
tercatat dalam huraian di bawah.

Argumen bukan pilihan ialah fail objek atau arkib yang akan dipautkan bersama. mereka
boleh mengikuti, mendahului, atau bercampur dengan pilihan baris arahan, kecuali fail objek
hujah tidak boleh diletakkan di antara pilihan dan hujahnya.

Biasanya penyambung dipanggil dengan sekurang-kurangnya satu fail objek, tetapi anda boleh menentukan yang lain
bentuk fail input binari menggunakan -l, -R, dan bahasa arahan skrip. Jika tidak perduaan
fail input sama sekali ditentukan, pemaut tidak menghasilkan sebarang output, dan mengeluarkan fail
mesej Tidak input fail.

Jika pemaut tidak dapat mengenali format fail objek, ia akan menganggap bahawa ia adalah a
skrip penghubung. Skrip yang ditentukan dengan cara ini menambah skrip pemaut utama yang digunakan
pautan (sama ada skrip pemaut lalai atau yang ditentukan dengan menggunakan -T). Ini
ciri membenarkan pemaut untuk memaut ke fail yang kelihatan seperti objek atau
arkib, tetapi sebenarnya hanya mentakrifkan beberapa nilai simbol, atau menggunakan "INPUT" atau "GROUP" untuk
memuatkan objek lain. Ambil perhatian bahawa menyatakan skrip dengan cara ini hanya menambah yang utama
skrip penghubung; menggunakan -T pilihan untuk menggantikan skrip pemaut lalai sepenuhnya.

Untuk pilihan yang namanya satu huruf, hujah pilihan mesti sama ada mengikut
surat pilihan tanpa campur tangan ruang putih, atau diberikan sebagai hujah yang berasingan
serta-merta mengikut pilihan yang memerlukannya.

Untuk pilihan yang namanya berbilang huruf, sama ada satu sempang atau dua boleh mendahului
nama pilihan; sebagai contoh, -simbol-simbol and --simbol-simbol adalah setara. Nota---di sana
adalah satu pengecualian kepada peraturan ini. Pilihan berbilang huruf yang bermula dengan huruf kecil 'o'
hanya boleh didahului dengan dua sengkang. Ini adalah untuk mengurangkan kekeliruan dengan -o pilihan. Jadi
contohnya -omagic menetapkan nama fail output kepada sihir sedangkan --omagic menetapkan NMAGIC
bendera pada output.

Argumen kepada pilihan berbilang huruf mesti sama ada dipisahkan daripada nama pilihan dengan an
sama dengan tanda, atau diberikan sebagai hujah berasingan serta-merta mengikut pilihan itu
memerlukan mereka. Sebagai contoh, --simbol-simbol foo and --trace-symbol=foo setaraf.
Singkatan unik bagi nama pilihan berbilang huruf diterima.

Nota---jika pemaut sedang dipanggil secara tidak langsung, melalui pemacu pengkompil (cth gcckemudian
semua pilihan baris arahan penghubung hendaklah diawali dengan -Wl, (atau apa sahaja yang sesuai
untuk pemacu pengkompil tertentu) seperti ini:

gcc -Wl,--kumpulan permulaan foo.o bar.o -Wl,--kumpulan akhir

Ini penting, kerana jika tidak, program pemacu pengkompil mungkin secara senyap menggugurkan
pilihan pemaut, mengakibatkan pautan yang buruk.

Berikut ialah jadual suis baris arahan generik yang diterima oleh pemaut GNU:

-akata kunci
Pilihan ini disokong untuk keserasian HP/UX. The kata kunci hujah mesti salah satu
rentetan arkib, dikongsi, Atau lalai. -arkib berfungsi sama dengan
-Bstatik, dan dua kata kunci yang lain secara fungsinya setara dengan -Bdinamik. ini
pilihan boleh digunakan beberapa kali.

-Aseni bina
--seni bina=seni bina
Dalam keluaran semasa ld, pilihan ini hanya berguna untuk keluarga Intel 960
seni bina. Dalam itu ld konfigurasi, yang seni bina hujah mengenal pasti
seni bina tertentu dalam keluarga 960, membolehkan beberapa perlindungan dan mengubah suai
laluan carian arkib-perpustakaan.

Keluaran masa depan bagi ld mungkin menyokong fungsi yang serupa untuk seni bina lain
keluarga.

-b format input
--format=format input
ld boleh dikonfigurasikan untuk menyokong lebih daripada satu jenis fail objek. Jika anda ld is
dikonfigurasikan dengan cara ini, anda boleh menggunakan -b pilihan untuk menentukan format binari untuk input
fail objek yang mengikuti pilihan ini pada baris arahan. Walaupun ketika ld dikonfigurasikan
untuk menyokong format objek alternatif, anda biasanya tidak perlu menentukan ini, sebagai ld
harus dikonfigurasikan untuk mengharapkan sebagai format input lalai format yang paling biasa pada setiap satu
mesin. format input ialah rentetan teks, nama format tertentu yang disokong oleh
perpustakaan BFD. (Anda boleh menyenaraikan format binari yang tersedia dengan objdump -i.)

Anda mungkin mahu menggunakan pilihan ini jika anda memautkan fail dengan binari yang luar biasa
format. Anda juga boleh menggunakan -b untuk menukar format secara eksplisit (apabila memautkan fail objek
daripada format yang berbeza), dengan memasukkan -b format input sebelum setiap kumpulan fail objek
dalam format tertentu.

Format lalai diambil daripada pembolehubah persekitaran "GNUTARGET".

Anda juga boleh menentukan format input daripada skrip, menggunakan arahan "TARGET";

-c Fail arahan MRI
--mri-skrip=Fail arahan MRI
Untuk keserasian dengan penghubung yang dihasilkan oleh MRI, ld menerima fail skrip yang ditulis dalam
bahasa arahan ganti, terhad, diterangkan dalam Fail Skrip Serasi MRI
bahagian dokumentasi GNU ld. Memperkenalkan fail skrip MRI dengan pilihan -c; menggunakan
yang -T pilihan untuk menjalankan skrip penghubung yang ditulis dalam tujuan umum ld skrip
bahasa. Jika MRI-cmdfile tidak wujud, ld mencarinya dalam direktori yang ditentukan
oleh mana-mana -L pilihan.

-d
-dc
-dp Tiga pilihan ini adalah setara; berbilang borang disokong untuk keserasian
dengan penghubung lain. Mereka memberikan ruang kepada simbol biasa walaupun output yang boleh dipindahkan
fail ditentukan (dengan -r). Arahan skrip "FORCE_COMMON_ALLOCATION" mempunyai
kesan yang sama.

-e kemasukan
--masuk=kemasukan
Penggunaan kemasukan sebagai simbol eksplisit untuk memulakan pelaksanaan program anda, bukannya
titik masuk lalai. Jika tiada simbol dinamakan kemasukan, penghubung akan cuba
menghurai kemasukan sebagai nombor, dan gunakan itu sebagai alamat kemasukan (nombornya ialah
ditafsirkan dalam asas 10; anda boleh menggunakan peneraju 0x untuk asas 16, atau peneraju 0 untuk asas
8).

--exclude-libs lib,lib, ...
Menentukan senarai pustaka arkib yang simbolnya tidak sepatutnya secara automatik
dieksport. Nama perpustakaan mungkin dibataskan dengan koma atau titik bertindih. Menentukan
"--exclude-libs ALL" mengecualikan simbol dalam semua pustaka arkib daripada eksport automatik.
Pilihan ini tersedia hanya untuk port sasaran i386 PE bagi pemaut dan untuk ELF
pelabuhan yang disasarkan. Untuk i386 PE, simbol yang disenaraikan secara eksplisit dalam fail .def masih kekal
dieksport, tanpa mengira pilihan ini. Untuk port sasaran ELF, simbol dipengaruhi oleh ini
pilihan akan dianggap sebagai tersembunyi.

-E
--eksport-dinamik
Apabila mencipta boleh laku yang dipautkan secara dinamik, tambahkan semua simbol pada simbol dinamik
meja. Jadual simbol dinamik ialah set simbol yang boleh dilihat daripada dinamik
objek pada masa larian.

Jika anda tidak menggunakan pilihan ini, jadual simbol dinamik biasanya akan mengandungi sahaja
simbol-simbol yang dirujuk oleh beberapa objek dinamik yang disebut dalam pautan.

Jika anda menggunakan "dlopen" untuk memuatkan objek dinamik yang perlu merujuk kembali kepada simbol
ditakrifkan oleh program, dan bukannya beberapa objek dinamik lain, maka anda mungkin akan
perlu menggunakan pilihan ini apabila memautkan program itu sendiri.

Anda juga boleh menggunakan skrip versi untuk mengawal simbol yang perlu ditambah pada
jadual simbol dinamik jika format output menyokongnya. Lihat penerangan tentang
--version-script dalam @ref{VERSION}.

-EB Pautkan objek besar-endian. Ini menjejaskan format output lalai.

-THE Pautkan objek little-endian. Ini menjejaskan format output lalai.

-f
--bantuan nama
Apabila mencipta objek kongsi ELF, tetapkan medan DT_AUXILIARY dalaman kepada
nama yang ditentukan. Ini memberitahu pemaut dinamik bahawa jadual simbol yang dikongsi
objek harus digunakan sebagai penapis tambahan pada jadual simbol objek kongsi
nama.

Jika anda kemudiannya memautkan program dengan objek penapis ini, maka, apabila anda menjalankan
program, pemaut dinamik akan melihat medan DT_AUXILIARY. Jika penghubung dinamik
menyelesaikan sebarang simbol daripada objek penapis, ia akan terlebih dahulu menyemak sama ada terdapat a
definisi dalam objek yang dikongsi nama. Jika ada, ia akan digunakan sebagai ganti
definisi dalam objek penapis. Objek yang dikongsi nama tidak perlu wujud. Justeru itu
objek kongsi nama boleh digunakan untuk menyediakan pelaksanaan alternatif tertentu
fungsi, mungkin untuk penyahpepijatan atau untuk prestasi khusus mesin.

Pilihan ini boleh ditentukan lebih daripada sekali. Entri DT_AUXILIARY akan dibuat
mengikut susunan yang muncul pada baris arahan.

-F nama
--penapis nama
Apabila mencipta objek kongsi ELF, tetapkan medan DT_FILTER dalaman kepada yang ditentukan
nama. Ini memberitahu pemaut dinamik bahawa jadual simbol objek kongsi yang
sedang dibuat hendaklah digunakan sebagai penapis pada jadual simbol objek kongsi
nama.

Jika anda kemudiannya memautkan program dengan objek penapis ini, maka, apabila anda menjalankan
program, pemaut dinamik akan melihat medan DT_FILTER. Penghubung dinamik akan
menyelesaikan simbol mengikut jadual simbol objek penapis seperti biasa, tetapi ia
sebenarnya akan memaut kepada definisi yang terdapat dalam objek kongsi nama. Oleh itu,
objek penapis boleh digunakan untuk memilih subset simbol yang disediakan oleh objek
nama.

Beberapa pemaut lama menggunakan -F pilihan sepanjang rantai alat kompilasi untuk
menentukan format fail objek untuk kedua-dua fail objek input dan output. Penyambung GNU
menggunakan mekanisme lain untuk tujuan ini: the -b, --format, --oformat pilihan, yang
Perintah "TARGET" dalam skrip pemaut dan pembolehubah persekitaran "GNUTARGET". GNU
penghubung akan mengabaikan -F pilihan apabila tidak mencipta objek kongsi ELF.

-fini nama
Apabila mencipta objek boleh laku atau kongsi ELF, panggil NAME apabila objek boleh laku atau
objek kongsi dipunggah, dengan menetapkan DT_FINI kepada alamat fungsi. Oleh
lalai, pemaut menggunakan "_fini" sebagai fungsi untuk memanggil.

-g tidak diendahkan. Disediakan untuk keserasian dengan alat lain.

-Gnilai
--gpsize=nilai
Tetapkan saiz maksimum objek untuk dioptimumkan menggunakan daftar GP saiz. ini
hanya bermakna untuk format fail objek seperti MIPS ECOFF yang menyokong meletakkan
objek besar dan kecil kepada bahagian yang berbeza. Ini diabaikan untuk objek lain
format fail.

-hnama
-sonname=nama
Apabila mencipta objek kongsi ELF, tetapkan medan DT_SONAME dalaman kepada yang ditentukan
nama. Apabila boleh laku dipautkan dengan objek kongsi yang mempunyai medan DT_SONAME,
maka apabila boleh laku dijalankan, pemaut dinamik akan cuba memuatkan perkongsian
objek yang ditentukan oleh medan DT_SONAME dan bukannya menggunakan nama fail yang diberikan kepada
penghubung.

-i Lakukan pautan tambahan (sama seperti pilihan -r).

-di dalamnya nama
Apabila mencipta objek boleh laku atau kongsi ELF, panggil NAME apabila objek boleh laku atau
objek kongsi dimuatkan, dengan menetapkan DT_INIT kepada alamat fungsi. Oleh
lalai, pemaut menggunakan "_init" sebagai fungsi untuk memanggil.

-larkib
--perpustakaan=arkib
Tambah fail arkib arkib ke senarai fail untuk dipautkan. Pilihan ini boleh digunakan mana-mana
Beberapa kali. ld akan mencari senarai laluannya untuk kejadian "libarkib.a" Untuk
setiap arkib dinyatakan.

Pada sistem yang menyokong perpustakaan kongsi, ld juga boleh mencari perpustakaan dengan
sambungan selain daripada ".a". Khususnya, pada sistem ELF dan SunOS, ld akan mencari a
direktori untuk perpustakaan dengan sambungan ".so" sebelum mencari satu dengan
sambungan ".a". Mengikut konvensyen, sambungan ".so" menunjukkan perpustakaan kongsi.

Pemaut akan mencari arkib sekali sahaja, di lokasi yang dinyatakan
baris arahan. Jika arkib mentakrifkan simbol yang tidak ditentukan dalam beberapa objek
yang muncul sebelum arkib pada baris arahan, pemaut akan menyertakan
fail yang sesuai daripada arkib. Walau bagaimanapun, simbol yang tidak ditentukan dalam objek
muncul kemudian pada baris arahan tidak akan menyebabkan pemaut mencari arkib
lagi.

Melihat -( pilihan untuk cara memaksa pemaut mencari arkib beberapa kali.

Anda boleh menyenaraikan arkib yang sama beberapa kali pada baris arahan.

Jenis carian arkib ini adalah standard untuk pemaut Unix. Walau bagaimanapun, jika anda
menggunakan ld pada AIX, ambil perhatian bahawa ia berbeza daripada kelakuan pemaut AIX.

-Lsearchdir
--library-path=searchdir
Tambah laluan searchdir kepada senarai laluan yang ld akan mencari perpustakaan arkib dan
ld skrip kawalan. Anda boleh menggunakan pilihan ini beberapa kali. Direktori adalah
dicari mengikut susunan yang dinyatakan pada baris arahan. Direktori
yang ditentukan pada baris arahan dicari sebelum direktori lalai. Semua -L
pilihan terpakai kepada semua -l pilihan, tanpa mengira susunan pilihan muncul.

If searchdir bermula dengan "=", kemudian "=" akan digantikan dengan sysroot awalan,
laluan yang ditentukan apabila pemaut dikonfigurasikan.

Set lalai laluan yang dicari (tanpa dinyatakan dengan -L) bergantung kepada yang mana
mod emulasi ld sedang digunakan, dan dalam beberapa kes juga tentang cara ia dikonfigurasikan.

Laluan juga boleh ditentukan dalam skrip pautan dengan arahan "SEARCH_DIR".
Direktori yang dinyatakan dengan cara ini dicari pada titik di mana skrip pemaut
muncul dalam baris arahan.

-memulasi
Mencontohi emulasi penghubung. Anda boleh menyenaraikan emulasi yang tersedia dengan
--verbose or -V pilihan.

Jika -m pilihan tidak digunakan, emulasi diambil dari "LDEMULATION"
pembolehubah persekitaran, jika itu ditakrifkan.

Jika tidak, emulasi lalai bergantung pada cara pemaut dikonfigurasikan.

-M
--cetak-peta
Cetak peta pautan ke output standard. Peta pautan menyediakan maklumat tentang
pautan, termasuk yang berikut:

* Di mana fail dan simbol objek dipetakan ke dalam ingatan.

* Cara simbol biasa diperuntukkan.

* Semua ahli arkib disertakan dalam pautan, dengan sebutan simbol yang
menyebabkan ahli arkib itu dibawa masuk.

-n
--nmagik
Matikan penjajaran halaman bahagian, dan tandakan output sebagai "NMAGIC" jika boleh.

-N
--omagic
Tetapkan bahagian teks dan data supaya boleh dibaca dan ditulis. Juga, jangan selaraskan halaman
segmen data dan lumpuhkan pemautan terhadap perpustakaan kongsi. Jika format output
menyokong nombor ajaib gaya Unix, tandakan output sebagai "OMAGIC". Nota: Walaupun a
bahagian teks boleh tulis dibenarkan untuk sasaran PE-COFF, ia tidak mematuhi
spesifikasi format yang diterbitkan oleh Microsoft.

--no-omagic
Pilihan ini menafikan kebanyakan kesan daripada -N pilihan. Ia menetapkan bahagian teks kepada
menjadi baca sahaja dan memaksa segmen data dijajarkan halaman. Nota - pilihan ini tidak
tidak membolehkan pemautan terhadap perpustakaan kongsi. guna -Bdinamik untuk ini.

-o output
--output=output
Penggunaan output sebagai nama program yang dihasilkan oleh ld; jika pilihan ini tidak
dinyatakan, nama a. keluar digunakan secara lalai. Perintah skrip "OUTPUT" juga boleh
nyatakan nama fail output.

-O tahap
If tahap ialah nilai berangka yang lebih besar daripada sifar ld mengoptimumkan output. Ini mungkin
mengambil masa yang lebih lama dan oleh itu mungkin hanya perlu didayakan untuk perlawanan akhir
binari.

-q
--memancarkan-relok
Tinggalkan bahagian penempatan semula dan kandungan dalam boleh laku yang dipautkan sepenuhnya. Pautan siaran
alat analisis dan pengoptimuman mungkin memerlukan maklumat ini untuk berfungsi dengan betul
pengubahsuaian boleh laku. Ini menghasilkan laksana yang lebih besar.

Pilihan ini pada masa ini hanya disokong pada platform ELF.

-r
--boleh dipindahkan
Hasilkan keluaran yang boleh dipindahkan---iaitu, hasilkan fail output yang boleh berfungsi sebagai
input kepada ld. Ini sering dipanggil separa menghubungkan. Sebagai kesan sampingan, dalam persekitaran
yang menyokong nombor ajaib Unix standard, pilihan ini juga menetapkan fail output
nombor ajaib kepada "OMAGIC". Jika pilihan ini tidak dinyatakan, fail mutlak adalah
dihasilkan. Apabila memautkan program C++, pilihan ini akan tidak menyelesaikan rujukan kepada
pembina; untuk melakukan itu, gunakan -Ur.

Apabila fail input tidak mempunyai format yang sama seperti fail output, pemautan separa
hanya disokong jika fail input itu tidak mengandungi sebarang penempatan semula. Berbeza
format output boleh mempunyai sekatan lanjut; contohnya beberapa format berasaskan "a.out".
tidak menyokong pemautan separa dengan fail input dalam format lain sama sekali.

Pilihan ini melakukan perkara yang sama seperti -i.

-R nama fail
--just-simbol=nama fail
Baca nama simbol dan alamatnya dari nama fail, tetapi jangan letakkannya semula atau sertakan
ia dalam output. Ini membolehkan fail output anda merujuk secara simbolik kepada mutlak
lokasi memori yang ditakrifkan dalam program lain. Anda boleh menggunakan pilihan ini lebih daripada
sekali.

Untuk keserasian dengan penyambung ELF lain, jika -R pilihan diikuti oleh direktori
nama, bukannya nama fail, ia dianggap sebagai -rath pilihan.

-s
--strip-semua
Abaikan semua maklumat simbol daripada fail output.

-S
--strip-debug
Abaikan maklumat simbol penyahpepijat (tetapi bukan semua simbol) daripada fail output.

-t
--jejak
Cetak nama fail input sebagai ld memproses mereka.

-T fail skrip
--skrip=fail skrip
Penggunaan fail skrip sebagai skrip penghubung. Skrip ini menggantikan ldskrip pemaut lalai
(daripada menambahnya), jadi fail perintah mesti menyatakan segala yang perlu untuk
terangkan fail output. Jika fail skrip tidak wujud dalam direktori semasa,
"ld" mencarinya dalam direktori yang ditentukan oleh mana-mana sebelumnya -L pilihan. Pelbagai
-T pilihan terkumpul.

-u lambang
--undefined=lambang
Memaksa lambang untuk dimasukkan ke dalam fail output sebagai simbol yang tidak ditentukan. Melakukan ini mungkin,
contohnya, pencetus pemautan modul tambahan daripada perpustakaan standard. -u mungkin
diulang dengan argumen pilihan yang berbeza untuk memasukkan simbol tambahan yang tidak ditentukan. ini
pilihan adalah bersamaan dengan arahan skrip pemaut "EXTERN".

-Ur Untuk apa-apa selain program C++, pilihan ini bersamaan dengan -r: ia menjana
output boleh pindah---iaitu, fail output yang seterusnya boleh berfungsi sebagai input kepada ld. Apabila
menghubungkan program C++, -Ur tidak menyelesaikan rujukan kepada pembina, tidak seperti -r. Ia berlaku
tidak berfungsi untuk digunakan -Ur pada fail yang dipautkan sendiri -Ur; sekali
jadual pembina telah dibina, ia tidak boleh ditambah. guna -Ur hanya untuk yang terakhir
pautan separa, dan -r untuk yang lain.

--unik[=BAHAGIAN]
Mencipta bahagian output yang berasingan untuk setiap pemadanan bahagian input BAHAGIAN, atau jika
kad bebas pilihan BAHAGIAN hujah tiada, untuk setiap bahagian input anak yatim. An
bahagian yatim adalah bahagian yang tidak disebut secara khusus dalam skrip penghubung. Anda boleh menggunakan ini
pilihan beberapa kali pada baris arahan; Ia menghalang penggabungan biasa input
bahagian dengan nama yang sama, mengatasi tugasan bahagian output dalam skrip pemaut.

-v
--versi
-V Paparkan nombor versi untuk ld. Yang -V pilihan juga menyenaraikan emulasi yang disokong.

-x
--buang-semua
Padam semua simbol tempatan.

-X
--buang-orang tempatan
Padamkan semua simbol tempatan sementara. Untuk kebanyakan sasaran, ini semua adalah simbol tempatan yang
nama bermula dengan L.

-y lambang
--simbol-simbol=lambang
Cetak nama setiap fail yang dipautkan lambang muncul. Pilihan ini boleh diberikan
berapa kali pun. Pada banyak sistem adalah perlu untuk menambah garis bawah.

Pilihan ini berguna apabila anda mempunyai simbol yang tidak ditentukan dalam pautan anda tetapi tidak tahu
dari mana datangnya rujukan.

-Y jalan
Tambah jalan ke laluan carian perpustakaan lalai. Pilihan ini wujud untuk Solaris
keserasian.

-z kata kunci
Kata kunci yang diiktiraf ialah:

combreloc
Menggabungkan berbilang bahagian reloc dan mengisihnya untuk membuat carian simbol dinamik
caching mungkin.

kekurangan
Tidak membenarkan simbol yang tidak ditentukan dalam fail objek. Simbol tidak ditentukan dalam dikongsi
perpustakaan masih dibenarkan.

initfirst
Pilihan ini hanya bermakna apabila membina objek kongsi. Ia menandakan objek
supaya permulaan masa jalannya akan berlaku sebelum permulaan masa jalan bagi
sebarang objek lain yang dibawa ke dalam proses pada masa yang sama. Begitu juga dengan
pemuktamadkan masa jalan bagi objek akan berlaku selepas pemuktamadkan masa jalan bagi
sebarang objek lain.

interpose
Menandai objek yang jadual simbolnya bersilang sebelum semua simbol kecuali
boleh laku utama.

loadfltr
Menandai objek bahawa penapisnya diproses serta-merta semasa masa jalan.

muldef
Membolehkan pelbagai definisi.

nocombreloc
Melumpuhkan gabungan berbilang bahagian reloc.

nocopyreloc
Melumpuhkan pengeluaran salinan relocs.

nodefaultlib
Menandai objek bahawa carian untuk kebergantungan objek ini akan mengabaikan sebarang
laluan carian perpustakaan lalai.

nodelete
Menandai objek tidak boleh dipunggah pada masa jalan.

nodlopen
Menandai objek tidak tersedia untuk "dlopen".

nodump
Menandai objek tidak boleh dibuang oleh "dldump".

kini Apabila menjana pustaka boleh laku atau kongsi, tandai untuk memberitahu dinamik
penghubung untuk menyelesaikan semua simbol apabila program dimulakan, atau apabila dikongsi
perpustakaan dikaitkan dengan menggunakan dlopen, bukannya menangguhkan resolusi panggilan fungsi
ke titik apabila fungsi pertama kali dipanggil.

asal
Menandakan objek mungkin mengandungi $ORIGIN.

Kata kunci lain diabaikan untuk keserasian Solaris.

-( arkib -)
- memulakan kumpulan arkib - kumpulan akhir
. arkib mestilah senarai fail arkib. Mereka mungkin sama ada fail eksplisit
nama, atau -l pilihan.

Arkib yang ditentukan dicari berulang kali sehingga tiada rujukan baru yang tidak ditentukan
dicipta. Biasanya, arkib dicari sekali sahaja mengikut susunan yang ditentukan
pada baris arahan. Jika simbol dalam arkib itu diperlukan untuk menyelesaikan masalah yang tidak ditentukan
simbol yang dirujuk oleh objek dalam arkib yang muncul kemudian pada baris arahan,
pemaut tidak akan dapat menyelesaikan rujukan itu. Dengan mengelompokkan arkib,
semuanya dicari berulang kali sehingga semua rujukan yang mungkin diselesaikan.

Menggunakan pilihan ini mempunyai kos prestasi yang ketara. Lebih baik menggunakannya hanya apabila
terdapat rujukan pekeliling yang tidak dapat dielakkan antara dua atau lebih arkib.

--accept-unknown-input-arch
--no-accept-unknown-input-arch
Memberitahu pemaut untuk menerima fail input yang seni binanya tidak dapat dikenali. The
andaian ialah pengguna tahu apa yang mereka lakukan dan sengaja mahu memautkan
dalam fail input yang tidak diketahui ini. Ini ialah kelakuan lalai pemaut, sebelum ini
keluaran 2.14. Tingkah laku lalai dari keluaran 2.14 dan seterusnya adalah untuk menolak input tersebut
fail, dan sebagainya --accept-unknown-input-arch pilihan telah ditambahkan untuk memulihkan yang lama
tingkah laku.

--seperti yang diperlukan
--tidak-seperti-perlu
Pilihan ini mempengaruhi teg ELF DT_NEEDED untuk perpustakaan dinamik yang disebut pada arahan
garis selepas --seperti yang diperlukan pilihan. Biasanya, pemaut akan menambah teg DT_NEEDED untuk
setiap perpustakaan dinamik yang disebut pada baris arahan, tidak kira sama ada perpustakaan
sebenarnya diperlukan. --seperti yang diperlukan menyebabkan teg DT_NEEDED hanya dikeluarkan untuk
perpustakaan yang memenuhi beberapa rujukan simbol daripada objek biasa yang tidak ditentukan
pada ketika perpustakaan itu dikaitkan. --tidak-seperti-perlu memulihkan lalai
tingkah laku.

--tambah-diperlukan
--tidak-tambah-diperlukan
Pilihan ini menjejaskan rawatan perpustakaan dinamik daripada teg ELF DT_NEEDED masuk
perpustakaan dinamik yang disebut pada baris arahan selepas --tidak-tambah-diperlukan pilihan.
Biasanya, pemaut akan menambah teg DT_NEEDED untuk setiap perpustakaan dinamik daripada DT_NEEDED
tags. --tidak-tambah-diperlukan menyebabkan teg DT_NEEDED tidak akan dikeluarkan untuk perpustakaan tersebut
daripada tag DT_NEEDED. --tambah-diperlukan memulihkan kelakuan lalai.

-tegaskan kata kunci
Pilihan ini diabaikan untuk keserasian SunOS.

-Bdinamik
-dy
-call_shared
Pautan terhadap perpustakaan dinamik. Ini hanya bermakna pada platform yang dikongsi
perpustakaan disokong. Pilihan ini biasanya lalai pada platform tersebut. The
varian berbeza pilihan ini adalah untuk keserasian dengan pelbagai sistem. Anda boleh
gunakan pilihan ini beberapa kali pada baris arahan: ia mempengaruhi pencarian perpustakaan
-l pilihan yang mengikutinya.

-Bgroup
Tetapkan bendera "DF_1_GROUP" dalam entri "DT_FLAGS_1" dalam bahagian dinamik. ini
menyebabkan pemaut masa jalan mengendalikan carian dalam objek ini dan kebergantungannya menjadi
dilakukan hanya di dalam kumpulan. --unresolved-symbols=laporkan-semua tersirat. ini
pilihan hanya bermakna pada platform ELF yang menyokong perpustakaan kongsi.

-Bstatik
-dn
-non_shared
-statik
Jangan paut ke perpustakaan kongsi. Ini hanya bermakna pada platform yang
perpustakaan kongsi disokong. Varian berbeza pilihan ini adalah untuk
keserasian dengan pelbagai sistem. Anda boleh menggunakan pilihan ini beberapa kali pada
baris arahan: ia menjejaskan carian perpustakaan untuk -l pilihan yang mengikutinya. ini
pilihan juga membayangkan --unresolved-symbols=laporkan-semua.

-Simbolik
Apabila membuat perpustakaan kongsi, ikat rujukan kepada simbol global pada definisi
dalam pustaka kongsi, jika ada. Biasanya, adalah mungkin untuk program yang dipautkan
terhadap perpustakaan kongsi untuk mengatasi definisi dalam perpustakaan kongsi. ini
pilihan hanya bermakna pada platform ELF yang menyokong perpustakaan kongsi.

--semak-bahagian
--tiada-semak-bahagian
Tanya penghubung tidak untuk menyemak alamat bahagian selepas mereka ditugaskan untuk melihat sama ada
terdapat sebarang pertindihan. Biasanya penyambung akan melakukan semakan ini, dan jika ia menemui apa-apa
bertindih ia akan menghasilkan mesej ralat yang sesuai. Penghubung memang tahu tentang, dan
memang membuat elaun untuk bahagian dalam tindanan. Tingkah laku lalai boleh dipulihkan
dengan menggunakan suis baris arahan --semak-bahagian.

--cref
Keluarkan jadual rujukan silang. Jika fail peta pemaut sedang dijana, tanda silang
jadual rujukan dicetak ke fail peta. Jika tidak, ia dicetak pada standard
output.

Format jadual sengaja ringkas, supaya ia mudah diproses oleh
skrip jika perlu. Simbol dicetak, diisih mengikut nama. Bagi setiap simbol,
senarai nama fail diberikan. Jika simbol ditakrifkan, fail pertama yang disenaraikan ialah
lokasi definisi. Fail selebihnya mengandungi rujukan kepada simbol.

--no-define-common
Pilihan ini menghalang penyerahan alamat kepada simbol biasa. Skrip
arahan "INHIBIT_COMMON_ALLOCATION" mempunyai kesan yang sama.

. --no-define-common pilihan membenarkan penyahgandingan keputusan untuk memberikan alamat kepada
Simbol biasa daripada pilihan jenis fail output; sebaliknya tidak boleh dipindahkan
jenis output memaksa memberikan alamat kepada simbol Biasa. menggunakan --no-define-common
membenarkan simbol biasa yang dirujuk daripada perpustakaan kongsi untuk diberikan
alamat hanya dalam program utama. Ini menghapuskan ruang pendua yang tidak digunakan dalam
perpustakaan kongsi, dan juga menghalang sebarang kekeliruan yang mungkin berlaku untuk menyelesaikan perkara yang salah
pendua apabila terdapat banyak modul dinamik dengan laluan carian khusus untuk
resolusi simbol masa jalan.

--defsym lambang=ungkapan
Cipta simbol global dalam fail output, yang mengandungi alamat mutlak yang diberikan oleh
ungkapan. Anda boleh menggunakan pilihan ini seberapa banyak yang perlu untuk menentukan berbilang
simbol dalam baris arahan. Bentuk aritmetik terhad disokong untuk
ungkapan dalam konteks ini: anda boleh memberikan pemalar heksadesimal atau nama an
simbol sedia ada, atau gunakan "+" dan "-" untuk menambah atau menolak pemalar heksadesimal atau
simbol. Jika anda memerlukan ungkapan yang lebih terperinci, pertimbangkan untuk menggunakan arahan pemaut
bahasa daripada skrip. Catatan: tidak sepatutnya ada ruang kosong di antara lambang, yang
sama dengan tanda (``=''), dan ungkapan.

--demangle[=gaya]
--tiada-demangle
Pilihan ini mengawal sama ada untuk menghilangkan nama simbol dalam mesej ralat dan lain-lain
pengeluaran. Apabila pemaut diberitahu untuk demangle, ia cuba membentangkan nama simbol dalam a
fesyen boleh dibaca: ia menghilangkan garis bawah utama jika ia digunakan oleh fail objek
format, dan menukar nama simbol hancur C++ kepada nama yang boleh dibaca pengguna. Berbeza
penyusun mempunyai gaya mangling yang berbeza. Hujah gaya demangling pilihan boleh
digunakan untuk memilih gaya demangling yang sesuai untuk pengkompil anda. Penghubung akan
demangle secara lalai melainkan pembolehubah persekitaran COLLECT_NO_DEMANGLE ditetapkan. Ini
pilihan boleh digunakan untuk mengatasi lalai.

--dynamic-linker fail
Tetapkan nama pemaut dinamik. Ini hanya bermakna apabila menjana
boleh laku ELF yang dipautkan secara dinamik. Penyambung dinamik lalai biasanya betul;
jangan gunakan ini melainkan anda tahu apa yang anda lakukan.

--amaran maut
Anggap semua amaran sebagai ralat.

--force-exe-akhiran
Pastikan bahawa fail output mempunyai akhiran .exe.

Jika fail output dipautkan sepenuhnya yang berjaya dibina tidak mempunyai ".exe" atau ".dll"
akhiran, pilihan ini memaksa pemaut untuk menyalin fail output ke salah satu nama yang sama
dengan akhiran ".exe". Pilihan ini berguna apabila menggunakan fail make Unix yang tidak diubah suai pada a
Hos Microsoft Windows, kerana sesetengah versi Windows tidak akan menjalankan imej melainkan imej itu
berakhir dengan akhiran ".exe".

--tiada-gc-bahagian
--gc-bahagian
Dayakan pengumpulan sampah bahagian input yang tidak digunakan. Ia diabaikan pada sasaran yang melakukannya
tidak menyokong pilihan ini. Pilihan ini tidak serasi dengan -r. Tingkah laku lalai
(tidak melaksanakan kutipan sampah ini) boleh dipulihkan dengan menyatakan
--tiada-gc-bahagian pada baris arahan.

- membantu
Cetak ringkasan pilihan baris arahan pada output standard dan keluar.

--sasaran-bantuan
Cetak ringkasan semua pilihan khusus sasaran pada output standard dan keluar.

-Peta fail peta
Cetak peta pautan ke fail fail peta. Lihat penerangan tentang -M pilihan, di atas.

--tidak-simpan-ingatan
ld biasanya mengoptimumkan kelajuan melebihi penggunaan memori dengan menyimpan jadual simbol bagi
input fail dalam ingatan. Pilihan ini memberitahu ld sebaliknya mengoptimumkan penggunaan memori, dengan
membaca semula jadual simbol jika perlu. Ini mungkin diperlukan jika ld kehabisan
ruang memori semasa memautkan boleh laku yang besar.

--tidak-tidak ditentukan
-z kekurangan
Laporkan rujukan simbol yang belum diselesaikan daripada fail objek biasa. Ini dilakukan walaupun
pemaut sedang mencipta perpustakaan kongsi bukan simbolik. suis
--[no-]allow-shlib-undefined mengawal tingkah laku untuk melaporkan tidak dapat diselesaikan
rujukan yang terdapat dalam perpustakaan kongsi yang dipautkan.

--benarkan-berbilang-takrifan
-z muldef
Biasanya apabila simbol ditakrifkan beberapa kali, pemaut akan melaporkan kematian
ralat. Pilihan ini membenarkan berbilang definisi dan definisi pertama akan digunakan.

--benarkan-shlib-undefined
--no-allow-shlib-undefined
Membenarkan (lalai) atau tidak membenarkan simbol yang tidak ditentukan dalam perpustakaan kongsi. Suis ini
adalah sama dengan --tidak-tidak ditentukan kecuali ia menentukan tingkah laku apabila
simbol yang tidak ditentukan berada dalam perpustakaan kongsi dan bukannya fail objek biasa. Ia berlaku
tidak menjejaskan cara simbol yang tidak ditentukan dalam fail objek biasa dikendalikan.

Sebabnya --benarkan-shlib-undefined adalah lalai ialah perpustakaan kongsi
dinyatakan pada masa pautan mungkin tidak sama dengan yang tersedia semasa dimuatkan
masa, jadi simbol mungkin sebenarnya boleh diselesaikan pada masa muat. Tambahan pula ada beberapa
sistem, (cth BeOS) di mana simbol tidak ditentukan dalam perpustakaan kongsi adalah perkara biasa. (Inti
menampalnya pada masa muat untuk memilih fungsi yang paling sesuai untuk arus
seni bina. Ini digunakan sebagai contoh untuk memilih memset yang sesuai secara dinamik
fungsi). Nampaknya ia juga perkara biasa untuk perpustakaan kongsi HPPA untuk tidak ditentukan
simbol.

--no-undefined-version
Biasanya apabila simbol mempunyai versi yang tidak ditentukan, pemaut akan mengabaikannya. ini
pilihan tidak membenarkan simbol dengan versi yang tidak ditentukan dan ralat maut akan dikeluarkan
sebaliknya.

--default-symver
Cipta dan gunakan versi simbol lalai (soname) untuk simbol eksport yang tidak versi.

--default-imported-symver
Cipta dan gunakan versi simbol lalai (soname) untuk simbol yang diimport tidak versi.

--tiada-amaran-tidak sepadan
Biasanya ld akan memberikan ralat jika anda cuba memautkan bersama fail input yang
tidak sepadan atas sebab tertentu, mungkin kerana ia telah disusun untuk berbeza
pemproses atau untuk endianness yang berbeza. Pilihan ini memberitahu ld bahawa semestinya
secara senyap membenarkan kesilapan yang mungkin berlaku. Pilihan ini hanya boleh digunakan dengan berhati-hati, dalam
kes apabila anda telah mengambil beberapa tindakan khas yang memastikan bahawa ralat pemaut adalah
tidak sesuai.

--tiada-keseluruhan-arkib
Matikan kesan daripada --keseluruhan-arkib pilihan untuk fail arkib seterusnya.

--noinhibit-exec
Kekalkan fail output boleh laku apabila ia masih boleh digunakan. Biasanya, penghubung
tidak akan menghasilkan fail output jika ia menghadapi ralat semasa proses pautan; ia
keluar tanpa menulis fail output apabila ia mengeluarkan sebarang ralat.

-nostdlib
Hanya cari direktori perpustakaan yang dinyatakan secara eksplisit pada baris arahan. Perpustakaan
direktori yang dinyatakan dalam skrip pemaut (termasuk skrip pemaut yang dinyatakan pada
baris arahan) diabaikan.

--oformat format keluaran
ld boleh dikonfigurasikan untuk menyokong lebih daripada satu jenis fail objek. Jika anda ld is
dikonfigurasikan dengan cara ini, anda boleh menggunakan --oformat pilihan untuk menentukan format binari untuk
fail objek output. Walaupun ketika ld dikonfigurasikan untuk menyokong objek alternatif
format, anda biasanya tidak perlu menentukan ini, sebagai ld harus dikonfigurasikan untuk menghasilkan
sebagai format output lalai format yang paling biasa pada setiap mesin. format keluaran ialah
rentetan teks, nama format tertentu yang disokong oleh perpustakaan BFD. (Awak boleh
senaraikan format binari yang tersedia dengan objdump -i.) Perintah skrip
"OUTPUT_FORMAT" juga boleh menentukan format output, tetapi pilihan ini mengatasinya.

-pai
--pic-boleh laku
Cipta kedudukan bebas boleh laku. Pada masa ini ini hanya disokong pada ELF
platform. Kedudukan boleh laku bebas adalah serupa dengan perpustakaan kongsi dalam hal itu
mereka dipindahkan oleh pemaut dinamik ke alamat maya yang dipilih oleh OS
mereka (yang boleh berbeza-beza antara seruan). Seperti boleh laku dipautkan secara dinamik biasa
ia boleh dilaksanakan dan simbol yang ditakrifkan dalam boleh laku tidak boleh ditindih oleh
perpustakaan kongsi.

-qmagic
Pilihan ini diabaikan untuk keserasian Linux.

-Qy Pilihan ini diabaikan untuk keserasian SVR4.

--berehat
Pilihan dengan kesan bergantung kepada mesin. Pilihan ini hanya disokong pada beberapa sahaja
sasaran.

Pada beberapa platform, yang --berehat pilihan melaksanakan pengoptimuman global yang menjadi
mungkin apabila pemaut menyelesaikan pengalamatan dalam program, seperti alamat santai
mod dan mensintesis arahan baharu dalam fail objek output.

Pada sesetengah platform, pengoptimuman global masa pautan ini mungkin membuat penyahpepijatan simbolik
yang terhasil boleh laksana mustahil. Ini diketahui berlaku untuk Matsushita
Keluarga pemproses MN10200 dan MN10300.

Pada platform yang tidak disokong, --berehat diterima, tetapi tidak diendahkan.

--retain-symbols-file nama fail
Kekalkan hanyalah simbol yang disenaraikan dalam fail nama fail, membuang semua yang lain. nama fail
hanyalah fail rata, dengan satu nama simbol setiap baris. Pilihan ini adalah terutamanya
berguna dalam persekitaran (seperti VxWorks) yang mempunyai jadual simbol global yang besar
terkumpul secara beransur-ansur, untuk memulihara ingatan masa larian.

--retain-symbols-file tidak tidak buang simbol yang tidak ditentukan, atau simbol yang diperlukan untuk
penempatan semula.

Anda hanya boleh menentukan --retain-symbols-file sekali dalam baris arahan. Ia mengatasi -s
and -S.

-rath dir
Tambahkan direktori pada laluan carian perpustakaan masa jalan. Ini digunakan apabila memautkan ELF
boleh dilaksanakan dengan objek yang dikongsi. Semua -rath hujah dirangkaikan dan dihantar ke
pemaut runtime, yang menggunakannya untuk mencari objek kongsi semasa runtime. The -rath
pilihan juga digunakan apabila mencari objek kongsi yang diperlukan oleh objek kongsi
disertakan secara eksplisit dalam pautan; lihat penerangan tentang -pautan-rpath pilihan. Jika
-rath tidak digunakan apabila memautkan ELF boleh laku, kandungan persekitaran
pembolehubah "LD_RUN_PATH" akan digunakan jika ia ditakrifkan.

. -rath pilihan juga boleh digunakan pada SunOS. Secara lalai, pada SunOS, pemaut akan
membentuk tampung carian masa jalan daripada semua -L pilihan yang diberikan. Sekiranya -rath pilihan
digunakan, laluan carian masa jalan akan dibentuk secara eksklusif menggunakan -rath pilihan,
mengabaikan -L pilihan. Ini boleh berguna apabila menggunakan gcc, yang menambahkan banyak -L
pilihan yang mungkin ada pada sistem fail yang dipasang NFS.

Untuk keserasian dengan penyambung ELF lain, jika -R pilihan diikuti oleh direktori
nama, bukannya nama fail, ia dianggap sebagai -rath pilihan.

-pautan-rpath DIR
Apabila menggunakan ELF atau SunOS, satu perpustakaan kongsi mungkin memerlukan yang lain. Ini berlaku apabila an
Pautan "ld -shared" termasuk perpustakaan kongsi sebagai salah satu fail input.

Apabila pemaut menghadapi pergantungan sedemikian apabila melakukan bukan kongsi, tidak boleh dipindahkan
pautan, ia secara automatik akan cuba mencari pustaka kongsi yang diperlukan dan memasukkannya
dalam pautan, jika ia tidak disertakan secara eksplisit. Dalam kes sedemikian, -pautan-rpath pilihan
menentukan set pertama direktori untuk dicari. The -pautan-rpath pilihan boleh menentukan
urutan nama direktori sama ada dengan menyatakan senarai nama yang dipisahkan oleh
titik bertindih, atau dengan muncul beberapa kali.

Pilihan ini harus digunakan dengan berhati-hati kerana ia mengatasi laluan carian yang mungkin ada
telah disusun keras ke dalam perpustakaan kongsi. Dalam kes sedemikian adalah mungkin untuk digunakan
secara tidak sengaja laluan carian yang berbeza daripada yang akan dilakukan oleh pemaut masa jalan.

Pemaut menggunakan laluan carian berikut untuk mencari perpustakaan kongsi yang diperlukan.

1. Mana-mana direktori yang ditentukan oleh -pautan-rpath pilihan.

2. Mana-mana direktori yang ditentukan oleh -rath pilihan. Perbezaan antara -rath and
-pautan-rpath ialah direktori yang ditentukan oleh -rath pilihan disertakan dalam
boleh laksana dan digunakan semasa runtime, manakala -pautan-rpath pilihan hanya berkesan
pada masa pautan. Ia adalah untuk pemaut asli sahaja.

3. Pada sistem ELF, jika -rath dan pilihan "rpath-link" tidak digunakan, cari di
kandungan pembolehubah persekitaran "LD_RUN_PATH". Ia adalah untuk pemaut asli
sahaja.

4. Pada SunOS, jika -rath pilihan tidak digunakan, cari mana-mana direktori yang ditentukan
menggunakan -L pilihan.

5. Untuk pemaut asli, kandungan pembolehubah persekitaran "LD_LIBRARY_PATH".

6. Untuk pemaut ELF asli, direktori dalam "DT_RUNPATH" atau "DT_RPATH" kongsi
perpustakaan dicari untuk perpustakaan kongsi yang diperlukan olehnya. Entri "DT_RPATH" ialah
diabaikan jika entri "DT_RUNPATH" wujud.

7. Direktori lalai, biasanya / lib and / usr / lib.

8. Untuk pemaut asli pada sistem ELF, jika fail /etc/ld.so.conf wujud, senarai
daripada direktori yang terdapat dalam fail itu.

Jika perpustakaan kongsi yang diperlukan tidak ditemui, pemaut akan mengeluarkan amaran dan
teruskan dengan pautan.

-berkongsi
-Boleh dikongsi
Buat pustaka kongsi. Ini hanya disokong pada ELF, XCOFF dan SunOS pada masa ini
platform. Pada SunOS, pemaut akan membuat perpustakaan kongsi secara automatik jika -e
pilihan tidak digunakan dan terdapat simbol yang tidak ditentukan dalam pautan.

--macam-biasa
Pilihan ini memberitahu ld untuk mengisih simbol biasa mengikut saiz apabila ia meletakkannya dalam
bahagian keluaran yang sesuai. Mula-mula datang semua simbol satu bait, kemudian kedua-duanya
bait, kemudian semua empat bait, dan kemudian semua yang lain. Ini untuk mengelakkan jurang
antara simbol kerana kekangan penjajaran.

--bahagian-isih nama
Pilihan ini akan menggunakan "SORT_BY_NAME" pada semua corak bahagian kad bebas dalam pemaut
skrip.

--bahagian-isih penjajaran
Pilihan ini akan menggunakan "SORT_BY_ALIGNMENT" pada semua corak bahagian kad bebas dalam
skrip penghubung.

--berpisah-dengan-fail [saiz]
Sama seperti --berpisah-dengan-reloc tetapi mencipta bahagian keluaran baharu untuk setiap fail input apabila
saiz dicapai. saiz lalai kepada saiz 1 jika tidak diberikan.

--berpisah-dengan-reloc [mengira]
Cuba mencipta bahagian tambahan dalam fail output supaya tiada bahagian output tunggal masuk
fail mengandungi lebih daripada mengira penempatan semula. Ini berguna apabila menjana besar
fail yang boleh dipindahkan untuk dimuat turun ke dalam kernel masa nyata tertentu dengan objek COFF
format fail; memandangkan COFF tidak boleh mewakili lebih daripada 65535 penempatan semula dalam satu
bahagian. Ambil perhatian bahawa ini akan gagal berfungsi dengan format fail objek yang tidak
menyokong bahagian sewenang-wenangnya. Penyambung tidak akan membahagikan bahagian input individu
untuk pengagihan semula, jadi jika bahagian input tunggal mengandungi lebih daripada mengira penempatan semula
satu bahagian output akan mengandungi banyak penempatan semula. mengira lalai kepada nilai
32768.

--statistik
Kira dan paparkan statistik tentang operasi pemaut, seperti pelaksanaan
penggunaan masa dan ingatan.

--sysroot=direktori
Penggunaan direktori sebagai lokasi sysroot, mengatasi lalai masa konfigurasi.
Pilihan ini hanya disokong oleh pemaut yang dikonfigurasikan menggunakan --dengan-sysroot.

--format-tradisional
Untuk beberapa sasaran, output daripada ld berbeza dalam beberapa cara daripada output sesetengah
penghubung sedia ada. Permintaan suis ini ld untuk menggunakan format tradisional sebaliknya.

Contohnya, pada SunOS, ld menggabungkan entri pendua dalam jadual rentetan simbol. ini
boleh mengurangkan saiz fail output dengan maklumat penyahpepijatan penuh sebanyak lebih 30
peratus. Malangnya, program "dbx" SunOS tidak dapat membaca program yang dihasilkan
("gdb" tidak mempunyai masalah). The --format-tradisional suis memberitahu ld untuk tidak bergabung
entri pendua.

--bahagian-mula nama bahagian=org
Cari bahagian dalam fail output pada alamat mutlak yang diberikan oleh org. Anda boleh menggunakan
pilihan ini seberapa banyak yang perlu untuk mencari beberapa bahagian dalam arahan
line. org mestilah integer heksadesimal tunggal; untuk keserasian dengan penghubung lain,
anda boleh meninggalkan yang terkemuka 0x biasanya dikaitkan dengan nilai heksadesimal. Catatan: terdapat
sepatutnya tiada ruang kosong antara nama bahagian, tanda sama dengan (``=''), dan org.

-Tbss org
-Tdata org
-Tteks org
Sama seperti --section-start, dengan ".bss", ".data" atau ".text" sebagai nama bahagian.

--simbol-tidak diselesaikan=kaedah
Tentukan cara mengendalikan simbol yang tidak dapat diselesaikan. Terdapat empat nilai yang mungkin untuk
kaedah:

abaikan semua
Jangan laporkan sebarang simbol yang belum diselesaikan.

laporan-semua
Laporkan semua simbol yang belum diselesaikan. Ini adalah lalai.

abaikan-dalam-objek-fail
Laporkan simbol yang belum diselesaikan yang terkandung dalam perpustakaan kongsi, tetapi abaikan mereka
jika ia datang daripada fail objek biasa.

ignore-in-shared-libs
Laporkan simbol yang tidak dapat diselesaikan yang datang daripada fail objek biasa, tetapi abaikan jika
mereka datang dari perpustakaan kongsi. Ini boleh berguna apabila mencipta dinamik
binari dan diketahui bahawa semua perpustakaan kongsi yang harus dirujuk
disertakan pada baris arahan pemaut.

Tingkah laku untuk perpustakaan kongsi sendiri juga boleh dikawal oleh
--[no-]allow-shlib-undefined pilihan.

Biasanya penyambung akan menjana mesej ralat untuk setiap simbol yang belum diselesaikan yang dilaporkan
tetapi pilihan --simbol-simbol-amaran-yang belum diselesaikan boleh menukar ini kepada amaran.

--dll-verbose
--verbose
Paparkan nombor versi untuk ld dan senaraikan emulasi penghubung yang disokong. Paparan
fail input yang boleh dan tidak boleh dibuka. Paparkan skrip pemaut yang digunakan oleh
penghubung.

--version-script=version-scriptfile
Nyatakan nama skrip versi kepada pemaut. Ini biasanya digunakan apabila
mencipta perpustakaan kongsi untuk menentukan maklumat tambahan tentang versi
hierarki untuk perpustakaan yang dibuat. Pilihan ini hanya bermakna pada ELF
platform yang menyokong perpustakaan kongsi.

--amaran-biasa
Beri amaran apabila simbol biasa digabungkan dengan simbol biasa lain atau dengan simbol
takrifan. Pemaut Unix membenarkan latihan yang agak ceroboh ini, tetapi pemaut pada sesetengahnya
sistem pengendalian lain tidak. Pilihan ini membolehkan anda mencari masalah yang berpotensi
daripada menggabungkan simbol global. Malangnya, sesetengah perpustakaan C menggunakan amalan ini, jadi
anda mungkin mendapat beberapa amaran tentang simbol dalam perpustakaan dan juga dalam program anda.

Terdapat tiga jenis simbol global, digambarkan di sini oleh contoh C:

int i = 1;
Definisi, yang terdapat dalam bahagian data yang dimulakan pada fail output.

luar int i;
Rujukan yang tidak ditentukan, yang tidak memperuntukkan ruang. Mesti ada sama ada a
definisi atau simbol biasa untuk pembolehubah di suatu tempat.

int i;
Simbol biasa. Jika terdapat hanya (satu atau lebih) simbol biasa untuk pembolehubah,
ia masuk dalam kawasan data yang tidak dimulakan pada fail output. Penghubung bergabung
berbilang simbol biasa untuk pembolehubah yang sama menjadi satu simbol. Jika mereka
daripada saiz yang berbeza, ia memilih saiz terbesar. Penyambung menukar simbol biasa
menjadi pengisytiharan, jika terdapat definisi pembolehubah yang sama.

. --amaran-biasa pilihan boleh menghasilkan lima jenis amaran. Setiap amaran terdiri daripada
sepasang baris: yang pertama menerangkan simbol yang baru ditemui, dan yang kedua
menerangkan simbol sebelumnya yang ditemui dengan nama yang sama. Satu atau kedua-duanya
simbol akan menjadi simbol biasa.

1. Menjadikan simbol biasa sebagai rujukan, kerana sudah ada definisi
untuk simbol.

( ): amaran: biasa ` '
ditindih mengikut takrifan
( ): amaran: ditakrifkan di sini

2. Mengubah simbol biasa menjadi rujukan, kerana definisi kemudian untuk
simbol ditemui. Ini adalah sama seperti kes sebelumnya, kecuali bahawa
simbol ditemui dalam susunan yang berbeza.

( ): amaran: definisi ` '
mengatasi perkara biasa
( ): amaran: biasa ada di sini

3. Menggabungkan simbol biasa dengan simbol biasa bersaiz sama sebelumnya.

( ): amaran: berbilang biasa
daripada ` '
( ): amaran: biasa sebelumnya ada di sini

4. Menggabungkan simbol biasa dengan simbol biasa yang lebih besar sebelumnya.

( ): amaran: biasa ` '
ditindih oleh biasa yang lebih besar
( ): amaran: common large is here

5. Menggabungkan simbol biasa dengan simbol biasa yang lebih kecil sebelumnya. Ini pun sama
seperti kes sebelumnya, kecuali simbol ditemui dalam keadaan yang berbeza
perintah.

( ): amaran: biasa ` '
mengatasi perkara biasa yang lebih kecil
( ): amaran: commoner smaller is here

--amaran-pembina
Beri amaran jika mana-mana pembina global digunakan. Ini hanya berguna untuk beberapa fail objek
format. Untuk format seperti COFF atau ELF, pemaut tidak dapat mengesan penggunaan global
pembina.

--amaran-berbilang-gp
Beri amaran jika berbilang nilai penunjuk global diperlukan dalam fail output. Ini sahaja
bermakna untuk pemproses tertentu, seperti Alpha. Khususnya, beberapa pemproses
meletakkan pemalar bernilai besar dalam bahagian khas. Daftar khas (global
penunjuk) menunjuk ke tengah bahagian ini, supaya pemalar boleh dimuatkan
dengan cekap melalui mod pengalamatan relatif daftar asas. Sejak offset dalam asas-
mod relatif daftar adalah tetap dan agak kecil (cth, 16 bit), ini mengehadkan
saiz maksimum kolam malar. Oleh itu, dalam program besar, selalunya perlu
gunakan berbilang nilai penunjuk global agar dapat menangani semua yang mungkin
pemalar. Pilihan ini menyebabkan amaran dikeluarkan apabila kes ini berlaku.

--amaran-sekali
Hanya memberi amaran sekali untuk setiap simbol yang tidak ditentukan, bukannya sekali bagi setiap modul yang merujuk kepada
ia.

--warn-section-align
Beri amaran jika alamat bahagian output ditukar kerana penjajaran. lazimnya,
penjajaran akan ditetapkan oleh bahagian input. Alamat hanya akan ditukar jika ia
tidak dinyatakan secara jelas; iaitu, jika arahan "SEKSYEN" tidak menyatakan permulaan
alamat untuk bahagian tersebut.

--warn-shared-textrel
Beri amaran jika pemaut menambah DT_TEXTREL pada objek kongsi.

--simbol-simbol-amaran-yang belum diselesaikan
Jika penyambung akan melaporkan simbol yang tidak dapat diselesaikan (lihat pilihan
--simbol-tidak diselesaikan) ia biasanya akan menghasilkan ralat. Pilihan ini menjadikannya
menjana amaran sebaliknya.

--simbol-ralat-tidak-selesai
Ini memulihkan gelagat lalai pemaut untuk menjana ralat apabila ia melaporkan
simbol yang tidak dapat diselesaikan.

--keseluruhan-arkib
Untuk setiap arkib yang disebut pada baris arahan selepas --keseluruhan-arkib pilihan,
masukkan setiap fail objek dalam arkib dalam pautan, bukannya mencari fail
arkibkan fail objek yang diperlukan. Ini biasanya digunakan untuk menghidupkan fail arkib
ke dalam pustaka kongsi, memaksa setiap objek disertakan dalam perkongsian yang terhasil
perpustakaan. Pilihan ini boleh digunakan lebih daripada sekali.

Dua nota apabila menggunakan pilihan ini daripada gcc: Pertama, gcc tidak tahu tentang pilihan ini,
jadi anda perlu menggunakan -Wl,-keseluruhan-arkib. Kedua, jangan lupa gunakan
-Wl,-tiada-keseluruhan-arkib selepas senarai arkib anda, kerana gcc akan menambah senarainya sendiri
arkib ke pautan anda dan anda mungkin tidak mahu bendera ini juga mempengaruhinya.

--bungkus lambang
Gunakan fungsi pembalut untuk lambang. Sebarang rujukan yang tidak ditentukan kepada lambang akan diselesaikan
untuk membalut_simbol". Sebarang rujukan yang tidak ditentukan kepada "__real_simbol" akan diselesaikan untuk
lambang.

Ini boleh digunakan untuk menyediakan pembungkus untuk fungsi sistem. Fungsi pembalut
sepatutnya dipanggil "__wrap_simbol". Jika ia ingin memanggil fungsi sistem, ia sepatutnya
panggil "__sebenar_simbol".

Berikut adalah contoh remeh:

batal *
__wrap_malloc (saiz_t c)
{
printf ("malloc dipanggil dengan %zu\n", c);
pulangkan __real_malloc (c);
}

Jika anda memautkan kod lain dengan fail ini menggunakan --bungkus malloc, kemudian semua panggilan ke "malloc"
sebaliknya akan memanggil fungsi "__wrap_malloc". Panggilan ke "__real_malloc" masuk
"__wrap_malloc" akan memanggil fungsi "malloc" sebenar.

Anda mungkin ingin menyediakan fungsi "__real_malloc" juga, supaya pautan tanpa
--bungkus pilihan akan berjaya. Jika anda melakukan ini, anda tidak sepatutnya meletakkan definisi
"__real_malloc" dalam fail yang sama seperti "__wrap_malloc"; jika anda lakukan, pemasang boleh
selesaikan panggilan sebelum pemaut mempunyai peluang untuk membalutnya ke "malloc".

--dayakan-dtags-baru
--disable-new-dtags
Penyambung ini boleh mencipta teg dinamik baharu dalam ELF. Tetapi sistem ELF yang lebih lama mungkin tidak
memahami mereka. Jika anda nyatakan --dayakan-dtags-baru, teg dinamik akan dibuat
seperti yang diperlukan. Jika anda nyatakan --disable-new-dtags, tiada teg dinamik baharu akan dibuat.
Secara lalai, teg dinamik baharu tidak dibuat. Ambil perhatian bahawa pilihan tersebut adalah sahaja
tersedia untuk sistem ELF.

--saiz-cincang=nombor
Tetapkan saiz lalai jadual cincang pemaut kepada nombor perdana yang hampir dengannya nombor.
Meningkatkan nilai ini boleh mengurangkan tempoh masa yang diambil oleh pemaut untuk melaksanakannya
tugasan, dengan mengorbankan peningkatan keperluan ingatan penyambung. Begitu juga
mengurangkan nilai ini boleh mengurangkan keperluan memori dengan mengorbankan kelajuan.

--kurangkan-memori-overhed
Pilihan ini mengurangkan keperluan memori pada masa jalan ld, dengan mengorbankan pemautan
kelajuan. Ini diperkenalkan untuk memilih algoritma O(n^2) lama untuk fail peta pautan
generasi, dan bukannya algoritma O(n) baharu yang menggunakan lebih kurang 40% memori untuk
penyimpanan simbol.

Satu lagi kesan suis adalah untuk menetapkan saiz jadual cincang lalai kepada 1021, yang
sekali lagi menjimatkan memori dengan kos memanjangkan masa larian pemaut. Ini tidak dilakukan
namun sekiranya --saiz cincang suis telah digunakan.

. --kurangkan-memori-overhed suis juga boleh digunakan untuk membolehkan pertukaran lain masuk
versi masa hadapan pemaut.

Penyambung i386 PE menyokong -berkongsi pilihan, yang menyebabkan output menjadi a
perpustakaan dipautkan secara dinamik (DLL) dan bukannya boleh laku biasa. Anda harus menamakan
keluarkan "*.dll" apabila anda menggunakan pilihan ini. Di samping itu, penghubung menyokong sepenuhnya
fail standard "*.def", yang mungkin dinyatakan pada baris arahan pemaut seperti objek
fail (sebenarnya, ia harus mendahului arkib yang mengeksport simbol daripadanya, untuk memastikan ia mendapat
dipautkan, sama seperti fail objek biasa).

Sebagai tambahan kepada pilihan biasa untuk semua sasaran, penyambung i386 PE menyokong tambahan
pilihan baris arahan yang khusus untuk sasaran i386 PE. Pilihan yang mengambil nilai
boleh dipisahkan daripada nilainya sama ada dengan ruang atau tanda sama.

--add-stdcall-alias
Jika diberikan, simbol dengan akhiran stdcall (@nn) akan dieksport sebagaimana adanya dan juga dengan
akhiran dilucutkan. [Pilihan ini khusus untuk port sasaran i386 PE bagi pemaut]

--base-file fail
Penggunaan fail sebagai nama fail untuk menyimpan alamat asas semua
penempatan semula diperlukan untuk menjana DLL dengan dlltool. [Ini adalah i386 PE khusus
pilihan]

--dll
Buat DLL dan bukannya boleh laku biasa. Anda juga boleh menggunakan -berkongsi atau nyatakan a
"PERPUSTAKAAN" dalam fail ".def" yang diberikan. [Pilihan ini khusus untuk i386 PE yang disasarkan
pelabuhan penyambung]

--dayakan-stdcall-fixup
--disable-stdcall-fixup
Jika pautan menemui simbol yang tidak dapat diselesaikan, ia akan cuba melakukan ``kabur
menghubungkan'' dengan mencari simbol lain yang ditakrifkan yang berbeza hanya dalam format
nama simbol (cdecl vs stdcall) dan akan menyelesaikan simbol itu dengan memaut pada perlawanan.
Sebagai contoh, simbol "_foo" yang tidak ditentukan mungkin dipautkan kepada fungsi "_foo@12", atau
simbol yang tidak ditentukan "_bar@16" mungkin dikaitkan dengan fungsi "_bar". Apabila
linker melakukan ini, ia mencetak amaran, kerana ia biasanya gagal memaut,
tetapi kadangkala import perpustakaan yang dijana daripada dll pihak ketiga mungkin memerlukan ciri ini
untuk boleh digunakan. Jika anda nyatakan --dayakan-stdcall-fixup, ciri ini didayakan sepenuhnya
dan amaran tidak dicetak. Jika anda nyatakan --disable-stdcall-fixup, ciri ini ialah
dilumpuhkan dan ketidakpadanan sedemikian dianggap sebagai ralat. [Pilihan ini khusus untuk
port sasaran i386 PE bagi pemaut]

--eksport-semua-simbol
Jika diberikan, semua simbol global dalam objek yang digunakan untuk membina DLL akan dieksport oleh
DLL. Ambil perhatian bahawa ini adalah lalai jika tidak ada apa-apa yang dieksport
simbol. Apabila simbol dieksport secara eksplisit melalui fail DEF atau dieksport secara tersirat
melalui atribut fungsi, lalai adalah untuk tidak mengeksport apa-apa lagi melainkan pilihan ini
diberikan. Ambil perhatian bahawa simbol "DllMain@12", "DllEntryPoint@0",
"DllMainCRTSstartup@12", dan "impure_ptr" tidak akan dieksport secara automatik. Juga,
simbol yang diimport daripada DLL lain tidak akan dieksport semula, begitu juga simbol yang dinyatakan
susun atur dalaman DLL seperti yang bermula dengan "_head_" atau berakhir dengan
"_Nama Saya". Selain itu, tiada simbol daripada "libgcc", "libstd++", "libmingw32", atau
"crtX.o" akan dieksport. Simbol yang namanya bermula dengan "__rtti_" atau "__builtin_"
tidak akan dieksport, untuk membantu dengan C++ DLL. Akhirnya, terdapat senarai yang luas
simbol cygwin-private yang tidak dieksport (jelas, ini digunakan semasa membina
DLL untuk sasaran cygwin). Pengecualian cygwin ini ialah: "_cygwin_dll_entry@12",
"_cygwin_crt0_common@8", "_cygwin_noncygwin_dll_entry@12", "_fmode", "_impure_ptr",
"cygwin_attach_dll", "cygwin_premain0", "cygwin_premain1", "cygwin_premain2",
"cygwin_premain3", dan "persekitaran". [Pilihan ini khusus untuk i386 PE yang disasarkan
pelabuhan penyambung]

--kecualikan-simbol lambang,lambang, ...
Menentukan senarai simbol yang tidak sepatutnya dieksport secara automatik. Simbol
nama mungkin dibataskan dengan koma atau titik bertindih. [Pilihan ini khusus untuk i386 PE
pelabuhan sasaran pemaut]

--penjajaran fail
Tentukan penjajaran fail. Bahagian dalam fail akan sentiasa bermula pada ofset fail
yang merupakan gandaan nombor ini. Ini lalai kepada 512. [Pilihan ini khusus
ke port sasaran i386 PE bagi pemaut]

--timbunan rizab
--timbunan rizab,melakukan
Tentukan jumlah memori untuk disimpan (dan secara pilihan dikomit) untuk digunakan sebagai timbunan
program ini. Lalai adalah 1Mb dikhaskan, 4K dilakukan. [Pilihan ini khusus untuk
port sasaran i386 PE bagi pemaut]

--asas-imej nilai
Penggunaan nilai sebagai alamat asas program atau dll anda. Ini adalah ingatan paling rendah
lokasi yang akan digunakan apabila program atau dll anda dimuatkan. Untuk mengurangkan keperluan untuk
menempatkan semula dan meningkatkan prestasi dll anda, setiap satu harus mempunyai alamat pangkalan yang unik
dan tidak bertindih mana-mana dll lain. Lalai ialah 0x400000 untuk boleh laku, dan
0x10000000 untuk dll. [Pilihan ini khusus untuk port sasaran i386 PE bagi
penghubung]

--bunuh-di
Jika diberikan, stdcall memberi imbuhan (@nn) akan dilucutkan daripada simbol sebelum ianya
dieksport. [Pilihan ini khusus untuk port sasaran i386 PE bagi pemaut]

--alamat-besar-sedar
Jika diberikan, bit yang sesuai dalam medan ``Karakteristik'' pengepala COFF ialah
ditetapkan untuk menunjukkan bahawa boleh laku ini menyokong alamat maya lebih daripada 2
gigabait. Ini harus digunakan bersama dengan /3GB atau /USERVA=nilai megabait
suis dalam bahagian ``[sistem pengendalian]'' BOOT.INI. Jika tidak, sedikit ini
tiada kesan. [Pilihan ini khusus untuk port sasaran PE bagi pemaut]

--versi-imej-utama nilai
Menetapkan nombor utama ``versi imej''. Lalai kepada 1. [Pilihan ini ialah
khusus untuk port sasaran i386 PE bagi pemaut]

--major-os-versi nilai
Menetapkan nombor utama ``versi os''. Lalai kepada 4. [Pilihan ini khusus
ke port sasaran i386 PE bagi pemaut]

--subsistem-versi utama nilai
Menetapkan nombor utama ``versi subsistem''. Lalai kepada 4. [Pilihan ini ialah
khusus untuk port sasaran i386 PE bagi pemaut]

--versi-imej-kecil nilai
Menetapkan nombor kecil ``versi imej''. Lalai kepada 0. [Pilihan ini ialah
khusus untuk port sasaran i386 PE bagi pemaut]

--minor-os-version nilai
Menetapkan nombor kecil bagi ``versi os''. Lalai kepada 0. [Pilihan ini khusus
ke port sasaran i386 PE bagi pemaut]

--versi-subsistem-kecil nilai
Menetapkan nombor kecil ``versi subsistem''. Lalai kepada 0. [Pilihan ini ialah
khusus untuk port sasaran i386 PE bagi pemaut]

--output-def fail
Penyambung akan mencipta fail fail yang akan mengandungi fail DEF yang sepadan dengannya
DLL yang dijana oleh pemaut. Fail DEF ini (yang sepatutnya dipanggil "*.def") mungkin
digunakan untuk mencipta perpustakaan import dengan "dlltool" atau boleh digunakan sebagai rujukan kepada
simbol yang dieksport secara automatik atau tersirat. [Pilihan ini khusus untuk i386 PE
pelabuhan sasaran pemaut]

--out-imlib fail
Penyambung akan mencipta fail fail yang akan mengandungi lib import yang sepadan dengannya
DLL yang dijana oleh pemaut. Lib import ini (yang sepatutnya dipanggil "*.dll.a" atau
"*.a" boleh digunakan untuk memautkan klien dengan DLL yang dijana; tingkah laku ini membuatnya
mungkin untuk melangkau langkah penciptaan perpustakaan import "dlltool" yang berasingan. [Pilihan ini ialah
khusus untuk port sasaran i386 PE bagi pemaut]

--dayakan-asas-imej-auto
Pilih pangkalan imej untuk DLL secara automatik, melainkan satu ditentukan menggunakan
Hujah "--image-base". Dengan menggunakan cincang yang dihasilkan daripada nama dll untuk mencipta unik
pangkalan imej untuk setiap DLL, perlanggaran dalam memori dan penempatan semula yang boleh melambatkan program
pelaksanaan dielakkan. [Pilihan ini khusus untuk port sasaran i386 PE bagi
penghubung]

--disable-auto-image-base
Jangan jana pangkalan imej unik secara automatik. Jika tiada pengguna yang ditentukan
pangkalan imej ("--image-base") kemudian gunakan lalai platform. [Pilihan ini khusus
ke port sasaran i386 PE bagi pemaut]

--dll-search-prefix rentetan
Apabila memaut secara dinamik ke dll tanpa perpustakaan import, cari
" .dll" sebagai keutamaan kepada "lib .dll". Tingkah laku ini membolehkan
perbezaan mudah antara DLL yang dibina untuk pelbagai "subplatform": asli, cygwin,
uwin, pw, dsb. Sebagai contoh, DLL cygwin biasanya menggunakan "--dll-search-prefix=cyg".
[Pilihan ini khusus untuk port sasaran i386 PE bagi pemaut]

--dayakan-auto-import
Lakukan pemautan canggih "_symbol" kepada "__imp__symbol" untuk import DATA daripada DLL,
dan cipta simbol thunking yang diperlukan semasa membina perpustakaan import dengan
eksport DATA tersebut. Nota: Penggunaan sambungan 'import automatik' akan menyebabkan teks
bahagian fail imej yang akan dibuat boleh ditulis. Ini tidak mematuhi PE-COFF
spesifikasi format yang diterbitkan oleh Microsoft.

Menggunakan 'autoimport' secara amnya 'hanya berfungsi' -- tetapi kadangkala anda mungkin melihat ini
mesej:

"pembolehubah ' ' tidak boleh diimport secara automatik. Sila baca dokumentasi untuk ld
"--enable-auto-import" untuk butiran."

Mesej ini berlaku apabila beberapa (sub) ungkapan mengakses alamat yang akhirnya diberikan oleh
jumlah dua pemalar (jadual import Win32 hanya membenarkan satu). Contoh di mana ini
mungkin berlaku termasuk akses kepada medan ahli pembolehubah struktur yang diimport daripada DLL,
serta menggunakan indeks malar ke dalam pembolehubah tatasusunan yang diimport daripada DLL. mana-mana
pembolehubah berbilang kata (tatasusunan, struct, long long, dll) boleh mencetuskan keadaan ralat ini.
Walau bagaimanapun, tanpa mengira jenis data yang tepat bagi pembolehubah yang dieksport yang menyinggung, ld akan
sentiasa mengesannya, mengeluarkan amaran dan keluar.

Terdapat beberapa cara untuk menangani kesukaran ini, tanpa mengira jenis data
pembolehubah yang dieksport:

Satu cara ialah menggunakan suis --enable-runtime-pseudo-reloc. Ini meninggalkan tugas
melaraskan rujukan dalam kod klien anda untuk persekitaran masa jalan, jadi kaedah ini berfungsi
hanya apabila persekitaran masa jalan menyokong ciri ini.

Penyelesaian kedua ialah memaksa salah satu 'pemalar' menjadi pembolehubah -- iaitu,
tidak diketahui dan tidak boleh dioptimumkan pada masa penyusunan. Untuk tatasusunan, terdapat dua kemungkinan:
a) jadikan penerima indeks (alamat tatasusunan) pembolehubah, atau b) jadikan indeks 'malar'
pembolehubah. Oleh itu:

jenis luaran extern_array[];
tatasusunan_luar[1] -->
{ jenis meruap *t=extern_array; t[1] }

or

jenis luaran extern_array[];
tatasusunan_luar[1] -->
{ int tidak menentu t=1; tatasusunan_luar[t] }

Untuk struct (dan kebanyakan jenis data berbilang kata lain) satu-satunya pilihan adalah untuk membuat
struct itu sendiri (atau long long, atau ...) pembolehubah:

extern struct s extern_struct;
extern_struct.field -->
{ struct meruap s *t=&extern_struct; t->medan }

or

extern panjang panjang extern_ll;
extern_ll -->
{ volatile long long * local_ll=&extern_ll; *local_ll }

Kaedah ketiga untuk menangani kesukaran ini adalah dengan meninggalkan 'auto-import' untuk
simbol yang menyinggung perasaan dan tandakannya dengan "__declspec(dllimport)". Walau bagaimanapun, dalam amalan itu
memerlukan penggunaan compile-time #defines untuk menunjukkan sama ada anda sedang membina DLL,
membina kod pelanggan yang akan memaut ke DLL, atau hanya membina/memaut ke statik
perpustakaan. Dalam membuat pilihan antara pelbagai kaedah penyelesaian 'langsung
mengatasi masalah offset berterusan, anda harus mempertimbangkan penggunaan dunia sebenar yang biasa:

Asal:

--foo.h
extern int arr[];
--foo.c
#include "foo.h"
batal utama(int argc, char **argv){
printf("%d\n",arr[1]);
}

Penyelesaian 1:

--foo.h
extern int arr[];
--foo.c
#include "foo.h"
batal utama(int argc, char **argv){
/* Penyelesaian ini adalah untuk win32 dan cygwin; jangan "optimumkan" */
int meruap *parr = arr;
printf("%d\n",parr[1]);
}

Penyelesaian 2:

--foo.h
/* Nota: eksport automatik diandaikan (tiada __declspec(dllexport)) */
#if (defined(_WIN32) ⎪⎪ takrif(__CYGWIN__)) && \
!(ditakrifkan(FOO_BUILD_DLL) ⎪⎪ ditakrifkan(FOO_STATIC))
#define FOO_IMPORT __declspec(dllimport)
#selamat
#define FOO_IMPORT
#endif
extern FOO_IMPORT int arr[];
--foo.c
#include "foo.h"
batal utama(int argc, char **argv){
printf("%d\n",arr[1]);
}

Cara keempat untuk mengelakkan masalah ini adalah dengan mengekod semula pustaka anda untuk menggunakan fungsi
antara muka dan bukannya antara muka data untuk pembolehubah yang menyinggung perasaan (cth set_foo() and
get_foo() fungsi aksesori). [Pilihan ini khusus untuk port sasaran i386 PE
daripada penghubung]

--disable-auto-import
Jangan cuba melakukan pemautan canggih "_symbol" kepada "__imp__symbol" untuk DATA
import daripada DLL. [Pilihan ini khusus untuk port sasaran i386 PE bagi
penghubung]

--dayakan-runtime-pseudo-reloc
Jika kod anda mengandungi ungkapan yang diterangkan dalam bahagian --enable-auto-import, iaitu,
DATA diimport daripada DLL dengan offset bukan sifar, suis ini akan mencipta vektor
'runtime pseudo relocations' yang boleh digunakan oleh persekitaran runtime untuk melaraskan
rujukan kepada data sedemikian dalam kod pelanggan anda. [Pilihan ini khusus untuk i386 PE
pelabuhan sasaran pemaut]

--disable-runtime-pseudo-reloc
Jangan buat penempatan semula pseudo untuk import DATA bukan offset daripada DLL. Ini adalah
lalai. [Pilihan ini khusus untuk port sasaran i386 PE bagi pemaut]

--dayakan-extra-pe-debug
Tunjukkan maklumat nyahpepijat tambahan yang berkaitan dengan pemikiran simbol import automatik. [Pilihan ini ialah
khusus untuk port sasaran i386 PE bagi pemaut]

--penjajaran bahagian
Menetapkan penjajaran bahagian. Bahagian dalam ingatan akan sentiasa bermula pada alamat yang
adalah gandaan nombor ini. Lalai kepada 0x1000. [Pilihan ini khusus untuk
i386 PE disasarkan port pemaut]

--timbunan rizab
--timbunan rizab,melakukan
Tentukan jumlah memori untuk disimpan (dan secara pilihan dikomit) untuk digunakan sebagai tindanan
untuk program ini. Lalai adalah 2Mb dikhaskan, 4K dilakukan. [Pilihan ini ialah
khusus untuk port sasaran i386 PE bagi pemaut]

--subsistem yang
--subsistem yang:utama
--subsistem yang:utama.kecil
Menentukan subsistem di mana program anda akan dilaksanakan. Nilai undang-undang untuk
yang ialah "native", "windows", "console", "posix", dan "xbox". Anda boleh menetapkan secara pilihan
versi subsistem juga. Nilai angka juga diterima untuk yang. [Pilihan ini
adalah khusus untuk port sasaran i386 PE bagi pemaut]

Penyambung 68HC11 dan 68HC12 menyokong pilihan khusus untuk mengawal bank memori
menukar pemetaan dan penjanaan kod trampolin.

--tiada-trampolin
Pilihan ini melumpuhkan penjanaan trampolin. Secara lalai trampolin ialah
dihasilkan untuk setiap fungsi jauh yang dipanggil menggunakan arahan "jsr" (ini
berlaku apabila penunjuk ke fungsi jauh diambil).

--tetingkap bank nama
Pilihan ini menunjukkan kepada pemaut nama kawasan memori dalam MEMORY
spesifikasi yang menerangkan tetingkap bank memori. Definisi wilayah tersebut ialah
kemudian digunakan oleh pemaut untuk mengira halaman dan alamat dalam tetingkap memori.

PERSEKITARAN


Anda boleh mengubah tingkah laku ld dengan pembolehubah persekitaran "GNUTARGET",
"LDEMULATION" dan "COLLECT_NO_DEMANGLE".

"GNUTARGET" menentukan format objek fail input jika anda tidak menggunakan -b (atau sinonimnya
--format). Nilainya hendaklah salah satu daripada nama BFD untuk format input. Jika tiada
"GNUTARGET" dalam persekitaran, ld menggunakan format semula jadi sasaran. Jika "GNUTARGET"
ditetapkan kepada "lalai" kemudian BFD cuba menemui format input dengan memeriksa binari
fail input; kaedah ini selalunya berjaya, tetapi terdapat potensi kekaburan, sejak itu
bukan kaedah untuk memastikan bahawa nombor ajaib yang digunakan untuk menentukan format fail objek adalah
unik. Walau bagaimanapun, prosedur konfigurasi untuk BFD pada setiap sistem meletakkan
format konvensional untuk sistem itu terlebih dahulu dalam senarai carian, jadi kekaburan diselesaikan
memihak kepada konvensyen.

"LDEMULATION" menentukan emulasi lalai jika anda tidak menggunakan -m pilihan. The
emulasi boleh menjejaskan pelbagai aspek kelakuan pemaut, terutamanya pemaut lalai
skrip. Anda boleh menyenaraikan emulasi yang tersedia dengan --verbose or -V pilihan. Sekiranya
-m pilihan tidak digunakan, dan pembolehubah persekitaran "LDEMULATION" tidak ditakrifkan, the
emulasi lalai bergantung pada cara pemaut dikonfigurasikan.

Biasanya, pemaut akan lalai kepada demangling simbol. Namun, jika
"COLLECT_NO_DEMANGLE" ditetapkan dalam persekitaran, maka ia akan lalai untuk tidak demangling
simbol. Pembolehubah persekitaran ini digunakan dengan cara yang sama oleh pemaut "gcc".
program pembalut. Lalai mungkin ditindih oleh --demangle and --tiada-demangle
pilihan.

Gunakan h8300-hitachi-coff-ld dalam talian menggunakan perkhidmatan onworks.net


Pelayan & Stesen Kerja Percuma

Muat turun apl Windows & Linux

  • 1
    DivFix ++
    DivFix ++
    DivFix++ ialah pembaikan video AVI anda dan
    perisian pratonton. Ia direka untuk pembaikan
    dan pratonton fail yang sedang dimuat turun
    daripada ed2k(emule), torrent, gnutella, ftp...
    Muat turun DivFix++
  • 2
    Komuniti JBoss
    Komuniti JBoss
    Projek didorong komuniti yang menampilkan
    inovasi terkini untuk canggih
    aplikasi. Projek utama kami JBoss AS ialah
    Sumber Terbuka terkemuka,
    mematuhi piawaian...
    Muat turun Komuniti JBoss
  • 3
    Django Filer
    Django Filer
    django Filer ialah pengurusan fail
    permohonan untuk django yang membuat
    mengendalikan fail dan imej dengan mudah.
    django-filer ialah pengurusan fail
    permohonan untuk djang...
    Muat turun Django Filer
  • 4
    xCAT
    xCAT
    Kit Alat Pentadbiran Kluster Ekstrim.
    xCAT ialah pengurusan kluster berskala
    dan alat peruntukan yang menyediakan
    kawalan perkakasan, penemuan dan OS
    cakera penuh/di...
    Muat turun xCAT
  • 5
    Psi
    Psi
    Psi ialah XMPP berkuasa merentas platform
    pelanggan direka untuk pengguna berpengalaman.
    Terdapat binaan yang tersedia untuk MS
    Windows, GNU/Linux dan macOS.. Penonton:
    Pengguna terakhir...
    Muat turun Psi
  • 6
    Bola Tampar 2
    Bola Tampar 2
    Kesinambungan rasmi yang terkenal
    Permainan arked Blobby Volley 1.x..
    Khalayak: Pengguna Akhir/Desktop. pengguna
    antara muka: OpenGL, SDL. Pengaturcaraan
    Bahasa: C++, Lua. C...
    Muat turun Blobby Volley 2
  • Lebih »

Arahan Linux

Ad