EnglishFrenchSpanish

Jalankan server | Ubuntu > | Fedora > |


favorit OnWorks

winebuild-development - Online di Cloud

Jalankan pengembangan winebuild di penyedia hosting gratis OnWorks melalui Ubuntu Online, Fedora Online, emulator online Windows, atau emulator online MAC OS

Ini adalah perintah pengembangan winebuild yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa stasiun kerja online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS

PROGRAM:

NAMA


winebuild - Pembuat anggur dll

RINGKASAN


pembuatan anggur [Pilihan] [file masukan...]

DESKRIPSI


pembuatan anggur menghasilkan file perakitan yang diperlukan untuk membangun dll Wine, yaitu
pada dasarnya Win32 dll dienkapsulasi di dalam perpustakaan Unix.

pembuatan anggur memiliki mode yang berbeda, tergantung pada jenis file yang diminta untuk dibuat. NS
mode ditentukan oleh salah satu opsi mode yang ditentukan di bawah ini. Selain modus
opsi, berbagai opsi baris perintah lainnya dapat ditentukan, seperti yang dijelaskan dalam PILIHAN
bagian.

MODE PILIHAN


Anda harus menentukan dengan tepat salah satu opsi berikut, tergantung pada apa yang Anda inginkan
winebuild untuk menghasilkan.

--dll Buat file assembly dari file .spec (lihat SPEC FILE SINTAKSIS untuk detail), atau
dari file .def Windows standar. File .spec/.def ditentukan melalui -E
pilihan. File yang dihasilkan harus dirakit dan ditautkan ke file objek lainnya
untuk membangun dll Wine yang berfungsi. Dalam mode ini, memasukkan arsip harus daftar
semua file objek yang akan ditautkan ke dll akhir, untuk memungkinkan pembuatan anggur untuk mendapatkan
daftar semua simbol yang tidak ditentukan yang perlu diimpor dari dll lain.

--exe Buat file assembly untuk executable. Ini pada dasarnya sama dengan --dll
mode kecuali bahwa itu tidak memerlukan file .spec/.def sebagai input, karena dapat dieksekusi
tidak perlu mengekspor fungsi. Namun beberapa executable melakukan fungsi ekspor, dan untuk
file .spec/.def tersebut dapat ditentukan melalui -E pilihan. Eksekusi bernama
dari nama file .spec/.def jika ada, atau secara eksplisit melalui -F pilihan. Itu
file yang dihasilkan harus dirakit dan ditautkan ke file objek lain untuk dibangun
Wine yang dapat dieksekusi, dan semua file objek lainnya harus terdaftar sebagai memasukkan
file.

--def Buat file .def dari file spesifikasi. File .spec ditentukan melalui -E pilihan.
Ini digunakan saat membangun dll dengan kompiler PE (Win32).

--implib
Buat perpustakaan impor PE dari file spesifikasi. File .spec ditentukan melalui -E
pilihan.

--sumber daya
Hasilkan file .o yang berisi semua sumber daya input. Ini berguna saat membangun
dengan kompiler PE, karena binutils PE tidak dapat menangani banyak file sumber daya sebagai
memasukkan. Untuk build Unix standar, file sumber daya disertakan secara otomatis
saat membuat file spesifikasi, jadi tidak perlu file .o perantara.

PILIHAN


--as-cmd=sebagai-perintah
Tentukan perintah yang akan digunakan untuk mengkompilasi file assembly; defaultnya adalah as.

-B, --target=cpu-produsen[-inti]-os
Tentukan CPU target dan platform tempat kode yang dihasilkan akan dibuat. NS
spesifikasi target dalam format autoconf standar seperti yang dikembalikan oleh config.sub.

--cc-cmd=cc-perintah
Tentukan compiler C yang akan digunakan untuk mengkompilasi file assembly; defaultnya adalah sebagai gantinya
gunakan assembler yang ditentukan dengan --as-cmd.

-D, --delay-lib=nama
Atur mode impor tertunda untuk perpustakaan yang ditentukan, yang harus menjadi salah satu dari
perpustakaan yang diimpor dengan -l pilihan. Mode tertunda berarti perpustakaan tidak akan
dimuat sampai fungsi yang diimpor darinya benar-benar dipanggil.

-D simbol
Diabaikan untuk kompatibilitas dengan kompiler C.

-e, --masuk=fungsi
Tentukan fungsi titik masuk modul; jika tidak ditentukan, defaultnya adalah DllUtama
untuk dll, dan utama untuk executable (jika standar C utama tak terdefinisi, Menang Utama
digunakan sebagai gantinya). Ini hanya berlaku untuk modul Win32.

-E, --ekspor=nama file
Tentukan file .spec (lihat SPEC FILE SINTAKSIS untuk detailnya), atau standar Windows .def
file yang mendefinisikan ekspor DLL atau executable yang sedang dibangun.

--simbol-eksternal
Izinkan penautan ke simbol eksternal langsung dari file spesifikasi. Biasanya simbol
diekspor oleh dll harus didefinisikan dalam dll itu sendiri; opsi ini membuatnya
mungkin untuk menggunakan simbol yang didefinisikan di perpustakaan Unix lain (untuk simbol yang didefinisikan dalam
dll lain, a meneruskan spesifikasi harus digunakan sebagai gantinya).

-f pilihan
Tentukan opsi pembuatan kode. Saat ini -fPIC serta -fasynchronous-unwind-tabel
didukung. Opsi lain diabaikan untuk kompatibilitas dengan kompiler C.

--fake-modul
Buat modul PE palsu untuk dll atau exe, alih-alih perakitan atau objek normal
mengajukan. Modul PE berisi sumber daya untuk modul, tetapi tidak ada kode yang dapat dieksekusi.

-F, --nama file=nama file
Tetapkan nama file modul. Standarnya adalah menggunakan nama dasar spesifikasi
file (tanpa ekstensi apa pun).

-H, --membantu
Tampilkan pesan penggunaan dan keluar.

-H, --tumpukan=ukuran
Tentukan ukuran tumpukan lokal modul dalam byte (hanya berlaku untuk modul Win16);
default adalah tidak ada tumpukan lokal.

-I direktori
Diabaikan untuk kompatibilitas dengan kompiler C.

-k, --bunuh-at
Hapus dekorasi stdcall dari nama simbol di file .def yang dihasilkan.
Hanya berarti di --def mode.

-K bendera
Diabaikan untuk kompatibilitas dengan kompiler C.

--besar-alamat-sadar
Setel tanda di executable untuk memberi tahu loader bahwa aplikasi ini mendukung
ruang alamat yang lebih besar dari 2 gigabyte.

--ld-cmd=perintah-ld
Tentukan perintah yang akan digunakan untuk menautkan file objek; defaultnya adalah ld.

-L, --library-path=direktori
Tambahkan direktori yang ditentukan ke daftar direktori yang dicari
mengimpor perpustakaan.

-l, --perpustakaan=nama
Impor perpustakaan yang ditentukan, cari yang sesuai libname.def file di
direktori yang ditentukan dengan -L pilihan.

-m16, -m32, -m64
Hasilkan masing-masing kode 16-bit, 32-bit atau 64-bit.

-mar, -jempol, -maret=pilihan, -mcpu=pilihan
Tetapkan opsi pembuatan kode untuk assembler.

-M, --main-modul=modul
Saat membuat dll 16-bit, tetapkan nama rekan 32-bitnya ke modul. Ini
digunakan untuk memastikan bahwa urutan pemuatan untuk dll 16-bit cocok dengan urutan
32-bit satu.

-N, --dll-nama=nama dll
Tetapkan nama internal modul. Ini hanya digunakan dalam modul Win16. Standarnya
adalah menggunakan nama dasar file spesifikasi (tanpa ekstensi apa pun). Ini digunakan untuk
KERNEL, karena ia tinggal di KRNL386.EXE. Seharusnya tidak diperlukan sebaliknya.

--nm-cmd=nm-perintah
Tentukan perintah yang akan digunakan untuk mendapatkan daftar simbol yang tidak ditentukan; defaultnya adalah nm.

--nxcompat=iya nih|tidak
Tentukan apakah modul kompatibel dengan dukungan no-exec. Standarnya adalah ya.

-Hai, --keluaran=fillet
Tetapkan nama file output (default adalah output standar). Jika file keluaran
name diakhiri dengan .o, output teks dikirim ke file sementara yang kemudian dirakit
untuk menghasilkan file .o yang ditentukan.

-R, --res=rsrc.res
Muat sumber daya dari file sumber daya biner yang ditentukan. NS rsrc.res file bisa
dihasilkan dari file sumber daya dengan wrc(1) (atau dengan sumber daya Windows
penyusun).
Opsi ini hanya diperlukan untuk file sumber daya Win16, yang Win32 dapat dengan mudah
terdaftar sebagai memasukkan arsip dan secara otomatis akan ditangani dengan benar (meskipun -r
opsi juga akan berfungsi untuk file Win32).

--save-temps
Jangan hapus berbagai file sementara yang pembuatan anggur menghasilkan.

--subsistem=subsistem[:utama[.minor]]
Atur subsistem dari executable, yang dapat berupa salah satu dari berikut ini:
konsol untuk baris perintah yang dapat dieksekusi,
jendela untuk executable grafis,
asli untuk mode asli dll,
menggerenyet untuk ce dll.
Titik masuk dari baris perintah yang dapat dieksekusi adalah C . normal utama fungsi. SEBUAH wmain
fungsi dapat digunakan sebagai gantinya jika Anda memerlukan array argumen untuk menggunakan string Unicode.
Sebuah executable grafis memiliki Menang Utama titik masuk.
Opsional versi subsistem mayor dan minor juga dapat ditentukan; defaultnya
versi subsistem adalah 4.0.

-u, --tidak terdefinisi=simbol
menambahkan simbol ke daftar simbol yang tidak ditentukan saat menjalankan tautan. Ini membuatnya
mungkin untuk memaksa modul tertentu dari perpustakaan statis untuk dimasukkan ketika
menyelesaikan impor.

-v, --verbose
Tampilkan berbagai sub-perintah yang dipanggil oleh pembuatan anggur.

--Versi: kapan
Tampilkan versi program dan keluar.

-w, --peringatan
Aktifkan peringatan.

SPEC FILE SINTAKSIS


Umum sintaksis
File spesifikasi harus berisi daftar deklarasi ordinal. Sintaks umumnya adalah
sebagai berikut:

urut tipe fungsi [bendera] nama ekspor ( [argumen...] ) [handler]
urut variabel [bendera] nama ekspor ( [data...] )
urut luar [bendera] nama ekspor [nama simbol]
urut potongan [bendera] nama ekspor [ (argumen...) ]
urut menyamakan [bendera] nama ekspor data
# komentar

Deklarasi harus muat pada satu baris, kecuali jika akhir baris diloloskan menggunakan a
karakter garis miring terbalik. NS # karakter di mana saja dalam satu baris menyebabkan sisa baris menjadi
diabaikan sebagai komentar.

urut menentukan nomor urut yang sesuai dengan titik masuk, atau '@' untuk
alokasi ordinal otomatis (hanya Win32).

bendera adalah serangkaian flag opsional, didahului oleh karakter '-'. Bendera yang didukung adalah:

-norelay
Titik masuk tidak ditampilkan dalam jejak debug relai (khusus Win32).

-tanpa nama
Titik masuk akan diekspor berdasarkan ordinal, bukan berdasarkan nama. Namanya adalah
masih tersedia untuk diimpor.

-ret16 Fungsi mengembalikan nilai 16-bit (hanya Win16).

-ret64 Fungsi mengembalikan nilai 64-bit (hanya Win32).

-daftar
Fungsi menggunakan register CPU untuk meneruskan argumen.

-pribadi
Fungsi tidak dapat diimpor dari dll lain, hanya dapat diakses
melalui GetProcAddress.

-urut
Titik masuk akan diimpor dengan ordinal, bukan berdasarkan nama. Namanya adalah
masih diekspor.

-lengkung=cpu[,cpu]
Titik masuk hanya tersedia pada arsitektur CPU yang ditentukan. NS
nama win32 serta win64 cocok dengan semua arsitektur CPU 32-bit atau 64-bit
masing-masing. Dalam dll 16-bit, tentukan -lengkungan=win32 menyebabkan titik masuk
untuk diekspor dari modul pembungkus 32-bit.

fungsi ordinal
sintaks:
urut tipe fungsi [bendera] nama ekspor ( [argumen...] ) [handler]

Deklarasi ini mendefinisikan titik masuk fungsi. Prototipe yang ditentukan oleh
nama ekspor ( [argumen...] ) menentukan nama yang tersedia untuk penautan dinamis dan formatnya
dari argumen. '@' dapat digunakan sebagai pengganti nama ekspor untuk ekspor ordinal saja.

tipe fungsi harus salah satu dari:

panggilan pertama
untuk fungsi Win32 normal

pascal untuk fungsi Win16 normal

cdecl untuk fungsi Win16 atau Win32 menggunakan konvensi panggilan C

varargs
untuk fungsi Win16 atau Win32 menggunakan konvensi panggilan C dengan variabel
jumlah argumen

panggilan ini
untuk fungsi Win32 menggunakan panggilan ini konvensi pemanggilan (parameter pertama
di %ecx mendaftar di i386)

args harus satu atau beberapa dari:

kata (16-bit nilai tidak ditandatangani)

pedang (16-bit kata yang ditandatangani)

panjang (nilai integer berukuran pointer)

int64 (nilai integer 64-bit)

int128 (nilai integer 128-bit)

mengapung (nilai titik mengambang 32-bit)

dua kali lipat (nilai titik mengambang 64-bit)

ptr (penunjuk linier)

str (penunjuk linier ke string ASCII yang diakhiri null)

wstr (penunjuk linier ke string Unicode yang diakhiri null)

segptr (Penunjuk tersegmentasi)

segstr (pointer tersegmentasi ke string ASCII yang diakhiri null).

Catatan: Jenis pointer 16-bit dan tersegmentasi hanya berlaku untuk fungsi Win16.

handler adalah nama fungsi C aktual yang akan mengimplementasikan titik masuk itu di
modus 32-bit. Handler juga dapat ditentukan sebagai nama dll.fungsi untuk menentukan diteruskan
fungsi (yang implementasinya ada di dll lain). Jika handler tidak ditentukan, itu adalah
diasumsikan identik dengan nama ekspor

Contoh pertama ini mendefinisikan titik masuk untuk panggilan GetFocus() 32-bit:

@ stdcall GetFocus() GetFocus

Contoh kedua ini mendefinisikan titik masuk untuk panggilan CreateWindow() 16-bit (ordinal
100 hanyalah sebuah contoh); itu juga menunjukkan berapa panjang garis dapat dipisah menggunakan garis miring terbalik:

100 pascal CreateWindow(ptr ptr long s_word s_word s_word \
s_word word word word ptr) WIN_CreateWindow

Untuk mendeklarasikan fungsi menggunakan sejumlah variabel argumen, tentukan fungsinya sebagai
varargs dan mendeklarasikannya dalam file C dengan parameter '...' untuk fungsi Win32, atau dengan
argumen VA_LIST16 tambahan untuk fungsi Win16. Lihat fungsi wsprintf* di
user.exe.spec dan user32.spec sebagai contoh.

Variabel ordinal
sintaks:
urut variabel [bendera] nama ekspor ( [data...] )

Deklarasi ini mendefinisikan penyimpanan data sebagai kata 32-bit pada ordinal yang ditentukan.
nama ekspor akan menjadi nama yang tersedia untuk penautan dinamis. data dapat berupa bilangan desimal
atau angka heksadesimal yang didahului dengan "0x". Contoh berikut mendefinisikan variabel VariabelA pada
ordinal 2 dan berisi 4 int:

2 variabel VariabelA(-1 0xff 0 0)

Deklarasi ini hanya berfungsi di file spesifikasi Win16. Di Win32 Anda harus menggunakan luar sebagai gantinya
(Lihat di bawah).

Secara eksternal ordinal
sintaks:
urut luar [bendera] nama ekspor [nama simbol]

Deklarasi ini mendefinisikan entri yang hanya memetakan ke simbol C (variabel atau fungsi).
Ini hanya berfungsi di file spesifikasi Win32. nama ekspor akan menunjuk ke simbol nama simbol bahwa
harus didefinisikan dalam kode C. Atau, itu bisa dalam bentuk nama dll.nama simbol untuk
tentukan simbol yang diteruskan (yang implementasinya ada di dll lain). Jika nama simbol is
tidak ditentukan, diasumsikan identik dengan nama ekspor

Potongan ordinal
sintaks:
urut potongan [bendera] nama ekspor [ (argumen...) ]

Deklarasi ini mendefinisikan fungsi rintisan. Itu membuat nama dan ordinal tersedia untuk
penautan dinamis, tetapi akan menghentikan eksekusi dengan pesan kesalahan jika fungsinya adalah
pernah menelepon.

Menyamakan ordinal
sintaks:
urut menyamakan [bendera] nama ekspor data

Deklarasi ini mendefinisikan ordinal sebagai nilai absolut. nama ekspor akan menjadi nama
tersedia untuk penautan dinamis. data dapat berupa bilangan desimal atau bilangan heksadesimal yang didahului oleh
"0x".

PENULIS


pembuatan anggur telah dikerjakan oleh banyak orang selama bertahun-tahun. Penulis utamanya adalah Robert J.
Amstadt, Alexandre Julliard, Martin von Loewis, Ulrich Weigand dan Eric Youngdale. Banyak
orang lain telah menyumbangkan fitur baru dan perbaikan bug. Untuk daftar lengkapnya, lihat git
melakukan log.

Gunakan pengembangan winebuild secara online menggunakan layanan onworks.net


Ad


Ad