İngilizceFransızcaİspanyolca

Sunucuları çalıştırın | Ubuntu > | Fedora > |


OnWorks favicon'u

winebuild-development - Bulutta Çevrimiçi

Winebuild-development'ı Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü üzerinden OnWorks ücretsiz barındırma sağlayıcısında çalıştırın

Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen winebuild-development komutudur.

PROGRAM:

ADI


winebuild - Şarap dll oluşturucu

SİNOPSİS


şarap yapımı [seçenekleri] [giriş dosyası...]

TANIM


şarap yapımı bir Wine dll oluşturmak için gerekli olan derleme dosyalarını oluşturur.
temelde bir Unix kitaplığı içinde kapsüllenmiş bir Win32 dll.

şarap yapımı ne tür bir dosya oluşturması istendiğine bağlı olarak farklı modlara sahiptir. NS
modu, aşağıda belirtilen mod seçeneklerinden biri ile belirlenir. moduna ek olarak
seçeneğinde açıklandığı gibi çeşitli diğer komut satırı seçenekleri belirtilebilir. SEÇENEKLER
Bölüm.

MOD SEÇENEKLER


Ne istediğinize bağlı olarak aşağıdaki seçeneklerden tam olarak birini belirtmelisiniz.
oluşturmak için winebuild.

--dll Bir .spec dosyasından bir derleme dosyası oluşturun (bkz. SPEC DOSYA SÖZDİZİMİ ayrıntılar için) veya
standart bir Windows .def dosyasından. .spec/.def dosyası, -E
seçenek. Ortaya çıkan dosya birleştirilmeli ve diğer nesne dosyalarına bağlanmalıdır.
çalışan bir Wine dll oluşturmak için. Bu modda, giriş Dosyaları listesi olmalı
izin vermek için son dll'ye bağlanacak tüm nesne dosyaları şarap yapımı almak
diğer dll'lerden içe aktarılması gereken tüm tanımsız sembollerin listesi.

--exe Yürütülebilir bir dosya için bir derleme dosyası oluşturun. Bu temelde aynı --dll
yürütülebilir bir dosya olduğundan giriş olarak bir .spec/.def dosyası gerektirmemesi dışında mod
işlevleri dışa aktarmaya gerek yoktur. Ancak bazı yürütülebilir dosyalar dışa aktarma işlevleri yapar ve
bunlar bir .spec/.def dosyası aracılığıyla belirtilebilir -E seçenek. Yürütülebilir dosyanın adı
varsa .spec/.def dosya adından veya açıkça -F seçeneği.
elde edilen dosya bir araya getirilmeli ve bir yapı oluşturmak için diğer nesne dosyalarına bağlanmalıdır.
Çalışan Wine yürütülebilir dosyası ve diğer tüm nesne dosyaları şu şekilde listelenmelidir: giriş
dosyaları.

--def Spesifikasyon dosyasından bir .def dosyası oluşturun. .Spec dosyası, -E seçeneği.
Bu, bir PE (Win32) derleyicisi ile dll'leri oluştururken kullanılır.

--implib
Spesifikasyon dosyasından bir PE içe aktarma kitaplığı oluşturun. .Spec dosyası, -E
seçeneği.

--Kaynaklar
Tüm girdi kaynaklarını içeren bir .o dosyası oluşturun. Bu, inşa ederken yararlıdır
bir PE derleyicisi ile, çünkü PE binutils birden çok kaynak dosyasını şu şekilde işleyemez:
giriş. Standart bir Unix derlemesi için kaynak dosyaları otomatik olarak dahil edilir
spec dosyasını oluştururken, bir ara .o dosyasına gerek yoktur.

SEÇENEKLER


--as-cmd=komut olarak
Derleme dosyalarını derlemek için kullanılacak komutu belirtin; varsayılan as.

-B, --hedef=işlemci üreticisi[-çekirdek]-os
Oluşturulan kodun oluşturulacağı hedef CPU'yu ve platformu belirtin. NS
hedef belirtimi, config.sub tarafından döndürüldüğü gibi standart autoconf biçimindedir.

--cc-cmd=cc komutu
Derleme dosyalarını derlemek için kullanılacak C derleyicisini belirtin; bunun yerine varsayılan
ile belirtilen montajcıyı kullanın --as-cmd.

-NS, --delay-lib=isim
Aşağıdakilerden biri olması gereken belirtilen kitaplık için gecikmeli içe aktarma modunu ayarlayın.
ile içe aktarılan kütüphaneler -l seçenek. Gecikmeli mod, kitaplığın olmayacağı anlamına gelir
içe aktarılan bir işlev gerçekten çağrılana kadar yüklenir.

-D sembol
C derleyicisiyle uyumluluk için yok sayılır.

, -e --giriş=işlev
Modül giriş noktası işlevini belirtin; belirtilmemişse, varsayılan DllAna
dll'ler için ve ana yürütülebilir dosyalar için (standart C ise ana Tanımlanmadı, WinAna
yerine kullanılır). Bu yalnızca Win32 modülleri için geçerlidir.

-E, --dışa aktar=Dosya
Bir .spec dosyası belirtin (bkz. SPEC DOSYA SÖZDİZİMİ ayrıntılar için) veya standart bir Windows .def
Oluşturulmakta olan DLL veya yürütülebilir dosyanın dışa aktarımını tanımlayan dosya.

--harici-semboller
Doğrudan spesifikasyon dosyasından harici sembollere bağlantı verilmesine izin verin. Normalde semboller
bir dll tarafından dışa aktarılan, dll'nin kendisinde tanımlanmalıdır; bu seçenek onu yapar
başka bir Unix kitaplığında tanımlanan sembolleri kullanmak mümkündür (içinde tanımlanan semboller için)
başka bir dll, bir ileri bunun yerine spesifikasyon kullanılmalıdır).

-f seçenek
Bir kod oluşturma seçeneği belirtin. Şu anda -fPIC ve -fasenkronize-çözme-tabloları
Desteklenmektedir. Diğer seçenekler, C derleyicisiyle uyumluluk için yok sayılır.

--fake-modül
Normal derleme veya nesne yerine bir dll veya exe için sahte bir PE modülü oluşturun
dosya. PE modülü, modülün kaynaklarını içerir, ancak yürütülebilir kod içermez.

-F, --dosyaadı=Dosya
Modülün dosya adını ayarlayın. Varsayılan, spesifikasyonun temel adını kullanmaktır.
dosya (herhangi bir uzantı olmadan).

-H, --yardım et
Bir kullanım mesajı görüntüleyin ve çıkın.

-H, --yığın=boyut
Modül yerel yığınının boyutunu bayt cinsinden belirtin (yalnızca Win16 modülleri için geçerlidir);
varsayılan yerel yığın değildir.

-I rehber
C derleyicisiyle uyumluluk için yok sayılır.

-k, --öldürme
Oluşturulan .def dosyasındaki sembol adlarından stdcall süslemelerini kaldırın.
Sadece anlamlı --def modu.

-K bayraklar
C derleyicisiyle uyumluluk için yok sayılır.

--büyük-adres-farkında
Yükleyiciye bu uygulamanın desteklediğini bildirmek için yürütülebilir dosyada bir bayrak ayarlayın
2 gigabayttan büyük adres alanları.

--ld-cmd=ld-komutu
Nesne dosyalarını bağlamak için kullanılacak komutu belirtin; varsayılan ld.

-L, --kütüphane-yolu=rehber
Belirtilen dizini, aranan dizinler listesine ekleyin
kütüphaneleri içe aktarın.

-l, --kütüphane=isim
İlgili kitaplığı arayarak belirtilen kitaplığı içe aktarın. libname.def içindeki dosyayı
ile belirtilen dizinler -L seçeneği.

-m16, -m32, -m64
Sırasıyla 16-bit, 32-bit veya 64-bit kod oluşturun.

-marm, -başparmak, -mart=seçenek, -mcpu=seçenek
Montajcı için kod oluşturma seçeneklerini ayarlayın.

-M, --ana-modül=modül
16 bitlik bir dll oluştururken, 32 bitlik muadili adını şu şekilde ayarlayın: modül. Bu
16 bitlik dll için yükleme sırasının aşağıdakiyle eşleşmesini sağlamak için kullanılır.
32 bit bir.

-N, --dll-adı=dllname
Modülün dahili adını ayarlayın. Yalnızca Win16 modüllerinde kullanılır. Varsayılan
spec dosyasının (herhangi bir uzantı olmadan) temel adını kullanmaktır. Bu için kullanılır
KERNEL, çünkü KRNL386.EXE içinde yaşıyor. Başka türlü gerekmemelidir.

--nm-cmd=nm-komutu
Tanımsız sembollerin listesini almak için kullanılacak komutu belirtin; varsayılan nm.

--nxcompat=Evet|yok hayır
Modülün yürütmesiz destekle uyumlu olup olmadığını belirtin. Varsayılan evet'tir.

-Ö, --çıktı=dosya
Çıktı dosyasının adını ayarlayın (varsayılan standart çıktıdır). çıktı dosyası ise
ad .o ile biter, metin çıktısı daha sonra bir araya getirilen geçici bir dosyaya gönderilir
belirtilen .o dosyasını üretmek için.

-r, --res=rsrc.res
Belirtilen ikili kaynak dosyasından kaynakları yükleyin. NS rsrc.res dosya olabilir
ile bir kaynak kaynak dosyasından üretilmiştir wrc(1) (veya bir Windows kaynağıyla
derleyici).
Bu seçenek yalnızca Win16 kaynak dosyaları için gereklidir, Win32 olanlar basitçe
Olarak listelenmiş giriş Dosyaları ve otomatik olarak doğru şekilde işlenecektir (ancak -r
seçeneği de Win32 dosyaları için çalışacaktır).

--kaydet-temps
çeşitli geçici dosyaları silmeyin. şarap yapımı üretir.

--alt sistem=alt[:büyük[.küçük]]
Aşağıdakilerden biri olabilecek yürütülebilir dosyanın alt sistemini ayarlayın:
konsol yürütülebilir bir komut satırı için,
pencereler bir grafik yürütülebilir dosya için,
yerli yerel mod dll için,
çekinme bir ce dll için.
Yürütülebilir bir komut satırının giriş noktası normal bir C'dir. ana işlevi. Bir ana
Unicode dizelerini kullanmak için bağımsız değişken dizisine ihtiyacınız varsa bunun yerine işlev kullanılabilir.
Bir grafik yürütülebilir dosyanın bir WinAna giriş noktası.
İsteğe bağlı olarak büyük ve küçük bir alt sistem sürümü de belirtilebilir; varsayılan
alt sistem sürümü 4.0.

-u, --tanımsız=sembol
Ekle sembol bağlayıcıyı çağırırken tanımsız semboller listesine. Bu onu yapar
statik bir kitaplığın belirli bir modülünü aşağıdaki durumlarda dahil edilmeye zorlamak mümkündür
ithalatı çözmek.

-v, --ayrıntılı
tarafından çağrılan çeşitli alt komutları görüntüleyin. şarap yapımı.

--versiyon
Program sürümünü görüntüleyin ve çıkın.

-w, --uyarılar
Uyarıları açın.

SPEC DOSYA SÖZDİZİMİ


genel sözdizimi
Bir spesifikasyon dosyası, sıralı bildirimlerin bir listesini içermelidir. Genel sözdizimi şudur:
Aşağıdaki:

sıra işlev türü [bayraklar] ihracat adı ( [argümanlar...] ) [işleyicisi]
sıra değişken [bayraklar] ihracat adı ( [veri...] )
sıra stajyer doktor [bayraklar] ihracat adı [sembol adı]
sıra saplama [bayraklar] ihracat adı [ (argümanlar...) ]
sıra eşitlemek [bayraklar] ihracat adı veri
# yorumlar

Açıklamalar, satırın sonundan bir satır kullanılarak kaçılması dışında, tek bir satıra sığmalıdır.
ters eğik çizgi karakteri. NS # karakter, satırın herhangi bir yerinde satırın geri kalanının
yorum olarak görmezden gelindi.

sıra giriş noktasına karşılık gelen sıra numarasını veya için '@' belirtir
otomatik sıra tahsisi (yalnızca Win32).

bayraklar önünde bir '-' karakteri bulunan bir dizi isteğe bağlı bayraktır. Desteklenen bayraklar şunlardır:

-norelay
Giriş noktası, röle hata ayıklama izlerinde görüntülenmez (yalnızca Win32).

-isimsiz
Giriş noktası, ada göre değil, sıraya göre dışa aktarılacaktır. İsmi
hala ithalat için kullanılabilir.

-ret16 İşlev, 16 bitlik bir değer döndürür (yalnızca Win16).

-ret64 İşlev, 64 bitlik bir değer döndürür (yalnızca Win32).

-Kayıt ol
İşlev, argümanları iletmek için CPU kaydını kullanır.

-özel
İşlev diğer dll'lerden içe aktarılamaz, yalnızca erişilebilir
GetProcAddress aracılığıyla.

-sıralı
Giriş noktası, ada göre değil, sıraya göre içe aktarılacaktır. İsmi
hala ihraç ediliyor.

-ark=cpu[,cpu]
Giriş noktası yalnızca belirtilen CPU mimarisinde/mimarilerinde mevcuttur. NS
isimleri win32 ve win64 tüm 32-bit veya 64-bit CPU mimarilerini eşleştirin
sırasıyla. 16 bitlik dll'lerde, belirterek -arch=win32 giriş noktasına neden olur
32 bit sarmalayıcı modülünden dışa aktarılacak.

işlev sıra sayıları
Sözdizimi:
sıra işlev türü [bayraklar] ihracat adı ( [argümanlar...] ) [işleyicisi]

Bu bildirim, bir fonksiyon giriş noktası tanımlar. tarafından tanımlanan prototip
ihracat adı ( [argümanlar...] ) dinamik bağlantı için kullanılabilecek adı ve biçimi belirtir
argümanlardan. '@' yerine kullanılabilir ihracat adı yalnızca sıralı ihracatlar için.

işlev türü şunlardan biri olmalıdır:

standart çağrı
normal bir Win32 işlevi için

pascal normal bir Win16 işlevi için

cdecl C çağırma kuralını kullanan bir Win16 veya Win32 işlevi için

varargs
bir değişkenle C çağırma kuralını kullanan bir Win16 veya Win32 işlevi için
argüman sayısı

bu çağrı
kullanarak bir Win32 işlevi için bu çağrı çağrı kuralı (ilk parametre
i386'da %ecx kaydında

args şunlardan biri veya birkaçı olmalıdır:

sözcük (16 bit işaretsiz değer)

Kılıç (16-bit imzalı sözcük)

ve kazandırdı (işaretçi boyutunda tam sayı değeri)

int64 (64 bit tam sayı değeri)

int128 (128 bit tam sayı değeri)

şamandıra (32 bit kayan nokta değeri)

çift (64 bit kayan nokta değeri)

ptr (doğrusal işaretçi)

str (boş sonlandırılmış bir ASCII dizesine doğrusal işaretçi)

wstr (boş sonlandırılmış bir Unicode dizesine doğrusal işaretçi)

segptr (bölümlü işaretçi)

segstr (boş sonlandırılmış bir ASCII dizesine segmentli işaretçi).

Not: 16 bitlik ve parçalı işaretçi türleri yalnızca Win16 işlevleri için geçerlidir.

işleyicisi bu giriş noktasını uygulayacak gerçek C işlevinin adıdır.
32 bit modu. İşleyici şu şekilde de belirtilebilir: dllname.işlev iletilen tanımlamak için
işlev (uygulaması başka bir dll'de olan). Eğer işleyicisi belirtilmemiş, bu
özdeş olduğu varsayılır ihracat adı.

Bu ilk örnek, 32 bitlik GetFocus() çağrısı için bir giriş noktası tanımlar:

@ stdcall GetFocus() GetFocus

Bu ikinci örnek, 16 bitlik CreateWindow() çağrısı için bir giriş noktası tanımlar (sıralı
100 sadece bir örnektir); ayrıca ters eğik çizgi kullanılarak satırların ne kadar uzun bölünebileceğini gösterir:

100 pascal CreateWindow(ptr ptr uzun s_word s_word s_word \
s_word kelime kelime kelime ptr) WIN_CreateWindow

Değişken sayıda argüman kullanarak bir işlev bildirmek için işlevi şu şekilde belirtin:
varargs ve bunu C dosyasında bir Win32 işlevi için bir '...' parametresiyle veya
Win16 işlevi için fazladan bir VA_LIST16 bağımsız değişkeni. wsprintf* işlevlerine bakın
örnek olarak user.exe.spec ve user32.spec.

Değişken sıra sayıları
Sözdizimi:
sıra değişken [bayraklar] ihracat adı ( [veri...] )

Bu bildirim, veri depolamayı belirtilen sırada 32 bitlik sözcükler olarak tanımlar.
ihracat adı dinamik bağlantı için kullanılabilecek ad olacaktır. veri ondalık sayı olabilir
veya başında "0x" olan bir onaltılık sayı. Aşağıdaki örnek, VariableA değişkenini şu konumda tanımlar:
sıra 2 ve 4 inç içeren:

2 değişken DeğişkenA(-1 0xff 0 0)

Bu bildirim yalnızca Win16 spesifikasyon dosyalarında çalışır. Win32'de kullanmalısınız stajyer doktor yerine
(aşağıya bakınız).

Dış sıra sayıları
Sözdizimi:
sıra stajyer doktor [bayraklar] ihracat adı [sembol adı]

Bu bildirim, basitçe bir C sembolüne (değişken veya fonksiyon) eşlenen bir girişi tanımlar.
Yalnızca Win32 spesifikasyon dosyalarında çalışır. ihracat adı sembolüne işaret edecek sembol adı o
C kodunda tanımlanmalıdır. Alternatif olarak, şu şekilde olabilir: dllname.sembol adı için
iletilen bir sembol tanımlayın (uygulaması başka bir dll'de olan). Eğer sembol adı is
belirtilmemişse, aynı olduğu varsayılır ihracat adı.

koçan sıra sayıları
Sözdizimi:
sıra saplama [bayraklar] ihracat adı [ (argümanlar...) ]

Bu bildirim bir saplama işlevi tanımlar. Adı ve sırayı kullanılabilir hale getirir
dinamik bağlantı, ancak işlev etkinse yürütmeyi bir hata mesajıyla sonlandıracaktır.
hiç aradı.

Kıyaslanmak sıra sayıları
Sözdizimi:
sıra eşitlemek [bayraklar] ihracat adı veri

Bu bildirim, bir sırayı mutlak bir değer olarak tanımlar. ihracat adı adı olacak
dinamik bağlantı için kullanılabilir. veri ondalık bir sayı veya önünde bir onaltılık sayı olabilir
"0x".

YAZARLAR


şarap yapımı yıllar boyunca birçok kişi tarafından çalışılmıştır. Ana yazarlar Robert J.
Amstadt, Alexandre Julliard, Martin von Loewis, Ulrich Weigand ve Eric Youngdale. Birçok
diğer insanlar yeni özelliklere ve hata düzeltmelerine katkıda bulundu. Tam bir liste için git'e bakın
günlükleri işlemek.

onworks.net hizmetlerini kullanarak winebuild geliştirmeyi çevrimiçi kullanın


Ad


Ad