EnglishFrenchSpanyol

Ad


Favicon OnWorks

critcl - Dalam talian di Awan

Jalankan critcl dalam penyedia pengehosan percuma OnWorks melalui Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS

Ini ialah perintah critcl 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


critcl - Aplikasi CriTcl

SINOPSIS


critcl ?pilihan...? ?fail...?

_________________________________________________________________

DESCRIPTION


Selamat datang ke C Runtime In Tcl, CriTcl ringkasnya, sistem untuk membina pakej sambungan C
untuk Tcl dengan cepat, daripada kod C yang tertanam dalam skrip Tcl, untuk semua yang ingin membuat
kod mereka pergi lebih cepat.

Dokumen ini ialah halaman manual rujukan untuk critcl perintah. Penonton yang dimaksudkan ialah
orang yang perlu membina pakej menggunakan critcl untuk penempatan. Penulis pakej dengan
kod C terbenam boleh mengabaikan dokumen ini. Jika anda memerlukan gambaran keseluruhan
sistem sebaliknya, sila pergi dan baca Pengenalan Untuk CriTcl.

Aplikasi ini berada dalam Lapisan Aplikasi CriTcl.

*================*
|Aplikasi |
| critcl |
| critcl::app |
*================*

+----------------+
|Pakej Teras |
| critcl |
| critcl::util |
+----------------+

+----------------+
|Pakej Sokongan|
| rintisan::* |
| md5, platform |
| ... |
+----------------+

Aplikasi ini menyokong baris arahan umum berikut:

critcl ?pilihan...? ?fail...?
Set pilihan tepat yang disokong, maknanya dan interaksinya diperincikan dalam
seksyen Kesesuaian Pilihan di bawah. Untuk set contoh yang lebih besar sila lihat bahagian
"Membina Pakej Critcl" dalam dokumen tentang Menggunakan CriTcl.

PERMOHONAN PILIHAN


Pilihan berikut difahami

-v

--versi
Pilihan ini menyebabkan critcl mencetak versinya stdout dan kemudian keluar.

-I jalan
Pilihan ini menentukan laluan termasuk global tambahan untuk digunakan semasa penyusunan
daripada ".critcl" fail. Semua nilai digunakan jika ini dinyatakan beberapa kali.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-L jalan
Pilihan ini menentukan laluan pencarian perpustakaan global tambahan untuk digunakan semasa memaut
daripada ".critcl" fail. Semua nilai digunakan jika ini dinyatakan beberapa kali.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-cache jalan
Pilihan ini menentukan laluan ke direktori untuk digunakan sebagai cache hasil. Jika tidak
menyatakan ia lalai kepada "~/.critcl/", atau, apabila menjana pakej (lihat
pilihan -pkg di bawah), kepada "~/.critcl/.", Apabila dinyatakan beberapa kali
nilai terakhir digunakan.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-bersih Apabila dinyatakan, cache keputusan dikosongkan, iaitu semua fail dan direktori ditemui
bahagian dalam dipadamkan) sebelum penyusunan bermula.

Pilihan ini tidak relevan apabila menjana pakej (lihat pilihan -pkg di bawah) kerana
mod ini bermula dengan cache hasil yang unik dan kosong.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-config jalan
Pilihan ini menentukan laluan ke fail konfigurasi tersuai, membenarkan pengguna untuk
menggunakan spesifikasi sasaran mereka sendiri. Jika tidak dinyatakan lalai berwayar keras
konfigurasi yang dibenamkan dalam teras sistem digunakan sebaliknya. Apabila ditentukan berbilang
kali nilai terakhir digunakan.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-nyahpepijat mod
Pilihan ini mengaktifkan kompilasi dengan penyahpepijatan. Ia menerima mod di bawah. Bila
dinyatakan beberapa kali gabungan semua mod digunakan.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

memori Mod ini mengaktifkan penyahpepijatan memori bagi peruntukan yang dibuat melalui Tcl
teras.

simbol
Mod ini mengaktifkan pembinaan semua ".c" fail dengan simbol nyahpepijat.

semua Mod ini mengaktifkan kedua-duanya memori and simbol.

-lumpuhkan nama
Pilihan ini menetapkan nilai pilihan konfigurasi binaan tersuai nama kepada palsu.
Ia bersamaan dengan "-dengan-nama 0 ".

Maklumat itu disahkan hanya jika salah satu daripada ".critcl" fail input sebenarnya
mentakrifkan dan menggunakan pilihan konfigurasi binaan tersuai dengan itu nama.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-membolehkan nama
Pilihan ini menetapkan nilai pilihan konfigurasi binaan tersuai nama kepada benar.
Ia bersamaan dengan "-dengan-nama 1 ".

Maklumat itu disahkan hanya jika salah satu daripada ".critcl" fail input sebenarnya
mentakrifkan dan menggunakan pilihan konfigurasi binaan tersuai dengan itu nama.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-paksa Apabila kompilasi yang ditentukan sentiasa dilakukan, walaupun pustaka dikongsi untuk fail
sudah wujud. Kesan ini boleh didapati melalui pembersihan cache (lihat di atas) sebagai
baik, kecuali bahawa ia malas dalam pemusnahan fail dan tidak akan memusnahkan fail
tidak berkaitan dengan yang kami bina.

Pilihan ini tidak relevan apabila menjana pakej (lihat pilihan -pkg di bawah) kerana
mod ini bermula dengan cache hasil yang unik dan kosong.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-membantu Pilihan ini akan menyebabkan sistem mencetak bantuan ringkas tentang sintaks baris arahan
dan pilihan dan kemudian keluar dari aplikasi.

-simpan Pilihan ini akan menyebabkan sistem menyimpan ".c" fail yang dijana oleh larian dalam
cache hasil. Apabila menjana pakej (lihat pilihan -pkg di bawah) ini juga menghalang
pemadaman cache hasil unik yang digunakan oleh larian. Pilihan ini bertujuan
untuk penyahpepijatan critcl sendiri, di mana ia mungkin perlu untuk memeriksa
kod C yang dihasilkan.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-libdir jalan
Pilihan ini menentukan laluan di mana pakej dijana melalui pilihan -pkg
diselamatkan. Ia juga menentukan laluan untuk mencari perpustakaan, seperti untuk -L. Apabila
dinyatakan beberapa kali nilai terakhir digunakan. Apabila tidak dinyatakan sama sekali
lalai, "lib", digunakan. Perhatikan bagaimana ini adalah laluan relatif, meletakkan hasilnya ke dalam
direktori kerja semasa.

-termasukdir jalan
Pilihan ini menentukan laluan di mana mana-mana pengepala pakej yang dijana disimpan.
Ia juga menentukan laluan untuk mencari termasuk fail dalam, seperti untuk -I. Apabila dinyatakan
beberapa kali nilai terakhir digunakan sebagai destinasi, namun semua nilai sebelumnya
disimpan pada laluan carian termasuk. Apabila tidak dinyatakan sama sekali lalai,
"termasuk", digunakan. Perhatikan bagaimana ini adalah laluan relatif, meletakkan hasilnya ke dalam
direktori kerja semasa.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-pkg Mod lalai aplikasi adalah untuk membina ".critcl" fail yang disenaraikan di
baris arahan dan simpan keputusan dalam cache hasil. Pada asasnya pra-pengisian
cache dengan pakej penting, mengurangkan masa yang diperlukan untuk menggunakannya
pakej.

Pilihan ini mengaktifkan salah satu mod lain, penjanaan pakej. Dalam mod ini
fail input diproses terlebih dahulu seperti biasa, namun selepas itu ia digabungkan ke dalam
perpustakaan tunggal dan fail tambahan dijana untuk menjadikan perpustakaan ini boleh digunakan sebagai
pakej Tcl biasa.

pilihan -teh, lihat di bawah, menggunakan mod terakhir, penjanaan TEA. Jika kedua-dua pilihan,
iaitu -pkg and -teh ditentukan kemenangan terakhir yang ditentukan.

Dalam mod ini pilihan -bersih and -paksa tidak relevan dan tidak dipedulikan. Berbeza,
pilihannya -libdir adalah relevan dalam kedua-dua ini dan -teh mod.

Apabila pilihan ini ditentukan nama asas bagi argumen fail pertama selepas
pilihan digunakan sebagai nama pakej untuk dijana. Jika lanjutan itu
fail menunjukkan perpustakaan kongsi (".so"".sl"".dylib", dan". Dll") ia juga
dialih keluar daripada set fail input. A".tcl" fail disimpan sebagai sebahagian daripada input. A
fail tunggal tanpa sambungan diandaikan sebenarnya mempunyai ".tcl"sambungan. A
fail tanpa sambungan, tetapi fail input lain yang berikut dianggap seperti nama
perpustakaan kongsi yang betul, dan dialih keluar daripada set fail input.

Contoh:
=> Nama pakej ialah: foo
=> Fail input ialah: foo.tcl
=> Nama pakej ialah: foo
=> Fail input ialah: bar.tcl
=> Nama pakej ialah: foo
=> Fail input ialah: foo.tcl
=> Nama pakej ialah: foo
=> Fail input ialah: bar.tcl

-tunjukkan Pilihan ini, apabila dinyatakan, akan menyebabkan sistem mencetak konfigurasi
sasaran yang dipilih untuk stdout dan kemudian keluar. Pilihan sasaran boleh dipengaruhi
melalui pilihan -sasaran (lihat di bawah).

-tunjukkan semua
Pilihan ini, apabila dinyatakan, akan menyebabkan sistem mencetak keseluruhan yang dipilih
fail konfigurasi ke stdout dan kemudian keluar. Pilihan fail konfigurasi boleh
dipengaruhi melalui pilihan -config (lihat di atas).

-sasaran nama
Pilihan ini mengatasi pilihan lalai sasaran binaan dengan pilihan pengguna.
Apabila dinyatakan beberapa kali nilai terakhir digunakan. Sasaran yang dinamakan mesti wujud
dalam fail konfigurasi yang dipilih. Gunakan pilihan -sasaran (lihat di bawah) untuk mendapatkan senarai
sasaran yang boleh diterima. Pilihan fail konfigurasi boleh dipengaruhi melalui
pilihannya -config (lihat di atas).

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di bawah).

-sasaran
Pilihan ini, apabila dinyatakan, akan menyebabkan sistem mencetak senarai semua yang diketahui
sasaran daripada fail konfigurasi yang dipilih ke stdout dan kemudian keluar. Pilihan daripada
fail konfigurasi boleh dipengaruhi melalui pilihan -config (lihat di atas).

-teh Sama seperti pilihan -pkg, kecuali mod yang digunakan tidak menjana binari,
tetapi hierarki direktori yang mengandungi ".critcl" fail, fail temannya dan a
Sistem binaan serupa TEA dengan kebanyakan kod sokongan yang diperlukan (termasuk salinan
daripada pakej critcl).

Jika kedua-dua pilihan, iaitu -pkg and -teh ditentukan kemenangan terakhir yang ditentukan.

Dalam mod ini pilihan -I, -L, -bersih, -paksa, -cache, -termasukdir, -membolehkan,
-lumpuhkan, dan -dengan-FOO tidak relevan dan tidak dipedulikan. Sebaliknya, pilihan -libdir
adalah relevan dalam kedua-dua ini dan -pkg mod.

Apabila pilihan ini ditentukan nama asas bagi argumen fail pertama selepas
pilihan digunakan sebagai nama pakej untuk dijana. Jika lanjutan itu
fail menunjukkan perpustakaan kongsi (".so"".sl"".dylib", dan". Dll") ia juga
dialih keluar daripada set fail input. A".tcl" fail disimpan sebagai sebahagian daripada input. A
fail tunggal tanpa sambungan diandaikan sebenarnya mempunyai ".tcl"sambungan. A
fail tanpa sambungan, tetapi fail input lain yang berikut dianggap seperti nama
perpustakaan kongsi yang betul, dan dialih keluar daripada set fail input.

Contoh:
=> Nama pakej ialah: foo
=> Fail input ialah: foo.tcl
=> Nama pakej ialah: foo
=> Fail input ialah: bar.tcl
=> Nama pakej ialah: foo
=> Fail input ialah: foo.tcl
=> Nama pakej ialah: foo
=> Fail input ialah: bar.tcl

-dengan-nama nilai
Pilihan ini menetapkan nilai pilihan konfigurasi binaan tersuai nama kepada nilai.

Maklumat itu disahkan hanya jika salah satu daripada ".critcl" fail input sebenarnya
mentakrifkan dan menggunakan pilihan konfigurasi binaan tersuai dengan itu nama.

Pilihan ini tidak relevan apabila menjana pakej TEA (lihat pilihan -teh di atas).

PAKEJ STRUKTUR


Pakej yang dihasilkan oleh critcl mempunyai struktur asas berikut:

+- pkgIndex.tcl
+- critcl-rt.tcl
+- license.terms (pilihan)
|
+- tcl (pilihan)
| +-
|
+-
+-

Nota

[1] Fail "pkgIndex.tcl" ialah fail indeks pakej standard yang diharapkan oleh Tcl's
pengurusan pakej. Ia diperoleh semasa carian untuk pakej, dan mengisytiharkan
pakej ke Tcl dengan failnya, dan cara mengendalikannya.

[2] Fail "critcl-rt.tcl" ialah fail pembantu yang mengandungi kod biasa yang digunakan oleh
"pkgIndex.tcl"untuk melaksanakan tugasnya.

[3] Fail "lesen.syarat" adalah pilihan dan muncul hanya jika ".critcl"failkan
pakej dijana daripada arahan yang digunakan critcl::lesen untuk mengisytiharkan pakej
pengarang dan lesen.

[4] Semua fail diisytiharkan dengan arahan critcl::tsources dimasukkan ke dalam sub-direktori
"TCL".

[5] Pustaka kongsi yang dijana oleh critcl dimasukkan ke dalam sub-platform khusus
direktori.

Keseluruhan struktur, dan terutamanya titik terakhir, membolehkan kami menggabungkan hasilnya kemudian
(untuk pakej dan versi yang sama) untuk berbilang platform sasaran ke dalam satu direktori
struktur tanpa konflik, dengan hanya menyalin direktori teratas antara satu sama lain. The
hanya fail yang boleh bercanggah ada dalam dan"TCL" direktori, dan untuk ini kami
tahu bahawa mereka adalah sama merentas sasaran. Hasil gabungan sedemikian akan kelihatan seperti:

+- pkgIndex.tcl
+- critcl-rt.tcl
+- license.terms (pilihan)
|
+- tcl (pilihan)
| +-
|
+-
| +-
+-
| +-
+-
+-

PERUBAHAN UNTUK VERSION 2.1


[1] Membetulkan pepijat di mana critcl::tsources mentafsirkan laluan relatif sebagai relatif kepada
direktori kerja semasa dan bukannya relatif kepada ".critcl"fail menggunakan
perintah, seperti yang dilakukan oleh semua perintah lain jenis ini.

[2] Perbaikan dalaman, menghalang maklumat yang dikumpul untuk berbilang ".critcl" fail ke
bocor antara mereka. Terutamanya, critcl::tk bukan pilihan konfigurasi global
lagi.

[3] Membetulkan arahan critcl::lesen menjadi operasi batal dalam mod "kompilasi & jalankan",
bukannya membuang kesilapan.

[4] Memperbaiki gangguan aplikasi critcl dengan cache hasil "compile & run".
in -pkg mod dengan menggunakan mod yang berasingan sepenuhnya (dan secara lalai sementara)
direktori untuk mod itu.

[5] Membetulkan pepijat apabila perubahan kepada ".critcl" fail tidak menghasilkan binaan semula untuk mod
"susun & jalankan". Semua arahan API yang berkaitan kini memastikan perubahan UUID.

[6] Membetulkan pepijat dalam pengendalian bahagian belakang critcl::debug di mana sahabat c-sumber
ke ".critcl" fail tidak disusun dengan pilihan nyahpepijat, walaupun ".critcl"fail
adalah.

[7] Membetulkan pepijat masuk critcl::debug yang menghalang pengecaman mod "semua" apabila ia berlaku
bukan hujah pertama kepada arahan itu.

[8] Membetulkan pepijat dalam "pramuat.c" menghalang penyusunannya pada platform bukan tingkap.

[9] Membetulkan pepijat lama dalam pengendalian kelayakan ruang nama dalam nama arahan
hujah mengenai critcl::cproc and critcl::ccommand. Ia kini mungkin untuk menentukan a
nama arahan yang layak sepenuhnya tanpa masalah.

[10] Dilanjutkan/dikerjakan semula critcl::tsources menjadi cara kanonik untuk mengisytiharkan ".tcl"
fail pendamping walaupun untuk mod "kompilasi & jalankan".

[11] Dilanjutkan/dikerjakan semula critcl::tsources untuk membenarkan penggunaan ".critcl" fail sebagai miliknya
Fail pengiring Tcl.

[12] Dilanjutkan critcl:: rangka kerja untuk menyemak secara dalaman untuk sasaran binaan OS X, dan abaikan
pengisytiharan itu jika tidak.

[13] Dilanjutkan critcl::gagal boleh dipanggil lebih daripada sekali dalam ".critcl" fail. The
panggilan pertama memaksa binaan, jika ia belum dilakukan, untuk mendapatkan hasilnya. Selanjutnya
panggilan mengembalikan hasil cache bagi panggilan pertama.

[14] Memperluas pengendalian pembolehubah persekitaran CC dalam kod yang menentukan
pengkompil untuk digunakan untuk menangani (iaitu membuang) laluan ke pengkompil, fail pengkompil
sambungan, dan pilihan pengkompil yang ditentukan selepas pengkompil itu sendiri, meninggalkan sahaja
nama kosong penyusun.

[15] Memanjangkan kod yang mengendalikan carian untuk perpustakaan pramuat untuk mencetak laluannya
dicari, menjadikan penyahpepijatan kegagalan carian lebih mudah.

[16] Perintah baharu critcl::tcl boleh digunakan untuk mengisytiharkan versi Tcl secara minimum
diperlukan untuk membina dan menjalankan ".critcl" fail dan pakej. Lalai kepada 8.4 jika tidak
diisytiharkan. Kritcl lanjutan untuk mempunyai stub dan pengepala untuk semua Tcl 8.4, 8.5,
dan 8.6.

[17] Perintah baharu critcl::muat memaksa binaan dan beban sesuatu ".critcl" fail. Ini adalah
cara rasmi untuk mengatasi skim lazy-build-&-load-on-demand lalai critcl
untuk mod "kompilasi & jalankan".

Nota itu selepas digunakan critcl::muat / critcl::gagal didalam ".critcl"failkan tidak
mungkin untuk menggunakan arahan critcl dalam fail itu lagi. Melakukannya akan menimbulkan ralat.

[18] Memperluaskan penjanaan pragma '#line' untuk digunakan maklumat bingkai (jika ada) kepada
sediakan pengkompil C dengan nombor baris yang tepat ke dalam ".critcl"fail untuk
pelaporan amaran dan kesilapan.

[19] Dilanjutkan critcl::semak dengan pengelogan untuk membantu menyahpepijat semakan masa binaan
persekitaran, serta hujah pilihan tambahan untuk menyediakan pelabelan.

[20] Menambah arahan baharu critcl::pautan semak yang bukan sahaja cuba untuk memeriksa persekitaran
melalui penyusunan kod, tetapi juga keterkaitannya.

[21] Menambah arahan baharu critcl::msg untuk pemesejan, seperti arahan critcl::error adalah untuk
pelaporan ralat. Begitu juga ini adalah cangkuk yang dibenarkan oleh pengguna pakej
mengatasi. Pelaksanaan lalai, digunakan oleh mod menyusun & menjalankan tidak berbuat apa-apa. The
pelaksanaan untuk mod menjana pakej mencetak mesej ke stdout.

Penggunaan yang dibayangkan adalah untuk pelaporan keputusan yang ditentukan oleh critcl::semak and
critcl::pautan semak semasa membina, untuk membantu menyahpepijat apabila berlaku masalah
dengan cek.

[22] Mendedahkan dalaman pemprosesan hujah critcl::proc untuk digunakan oleh lanjutan
pengguna. Perintah baru ialah

[1] critcl::argnames

[2] critcl::argcnames

[3] critcl::argcsignature

[4] critcl::argvardecls

[5] critcl::argconversion

Sila lihat bahagian Maju Terbenam C Kod daripada critcl dokumentasi pakej untuk
butiran.

[23] Memanjangkan pakej critcl untuk memintas pakej menyediakan dan rekod fail ->
pemetaan nama pakej. Tambahan lagi perubahan dalaman yang lain kini membenarkan penggunaan ruang nama
nama pakej semasa masih menggunakan nama laluan yang betul dan fungsi init.

[24] Menggugurkan arahan yang tidak digunakan critcl::optimumkan and critcl::termasuk.

[25] Digugurkan -lib mod daripada aplikasi critcl.

[26] Menggugurkan sisa sokongan untuk Tcl 8.3 dan sebelumnya.

PERUBAHAN UNTUK VERSION 3


[1] Perintah itu critcl::platform telah ditamatkan dalam versi 2.1, digantikan oleh
critcl::targetplatform, namun disimpan untuk keserasian. Kini ia telah dikeluarkan.

[2] Perintah itu critcl::disusun telah disimpan dengan dalam versi 2.1 dengan semantik dalam
percanggahan dengannya, untuk keserasian. Percanggahan ini telah dihapuskan,
menukar semantik perintah yang boleh dilihat supaya selaras dengan namanya.

[3] Perubahan kepada versi 3 menjadi perlu kerana dua yang tidak serasi kelihatan
perubahan di atas.

[4] Melanjutkan pakej aplikasi dengan kod pengendalian pilihan baharu -teh. Menentukan
pilihan ini menggunakan mod khas di mana critcl menjana pakej TEA, iaitu balut
input ke dalam hierarki direktori dan fail sokongan yang menyediakannya TEA-
sistem binaan yang serupa.

Pilihan baharu ini, dan -pkg, mengecualikan satu sama lain. Jika kedua-duanya dinyatakan yang terakhir digunakan
pilihan diutamakan.

Hierarki direktori pakej yang dijana kebanyakannya serba lengkap, tetapi tidak sepenuhnya.
Ia memerlukan bukan sahaja pemasangan Tcl yang berfungsi, tetapi juga pemasangan yang berfungsi
daripada pakej tersebut md5 and cmdline. Kedua-dua ini disediakan oleh Tcllib ikatan.
Tidak diperlukan, tetapi disyorkan untuk dipasang adalah mana-mana pakej yang boleh
mempercepatkan operasi md5, iaitu cryptkit, tcllibc, Atau Trf.

[5] Memanjangkan pakej critcl dengan arahan baharu critcl::scan mengambil jalan ke a
".critcl" fail, mengimbasnya secara statik dan mengembalikan lesen, versi, senarai
fail pengiringnya, senarai API yang diimport dan senarai tersuai yang ditentukan oleh pembangun
pilihan konfigurasi. Data ini adalah asas untuk pembalut TEH yang diterangkan
atas.

Perhatikan bahawa ini adalah statik imbas. Manakala mod binaan lain boleh (mesti) melaksanakan
".critcl" fail dan buat keputusan khusus platform berkenaan kod C yang dipasang,
fail pendamping, dsb. mod bungkus TEA tidak berada dalam kedudukan untuk membuat platform-
keputusan tertentu. Ia perlu membungkus segala-galanya yang mungkin diperlukan
apabila benar-benar membina. Oleh itu imbasan statik. Ini bagaimanapun mempunyai set sendiri
masalah, iaitu ketidakupayaan untuk memikirkan apa-apa pembinaan dinamik sahabat
laluan fail, sekurang-kurangnya sendiri. Oleh itu:

[6] Memanjangkan API yang digunakan oleh pakej berasaskan critcl dengan arahan critcl::memiliki. Walaupun
arahan ini diabaikan oleh mod binaan biasa yang diterangkan oleh pengimbas statik
di atas mengambil hujahnya sebagai nama fail pendamping yang perlu dibungkus
ke dalam pakej TEA dan tidak dapat digambarkan oleh pengimbas sebaliknya, seperti
kerana laluan dinamik ke critcl::tsources, critcl::csources, mendapat sumber
secara langsung, atau hanya menjadi fail data tambahan.

[7] Memanjangkan API yang digunakan oleh pakej berasaskan critcl dengan arahan critcl::api bagi
pengurusan jadual rintisan, sama ada penggunaannya, dan/atau pengisytiharan dan eksport.

Sila lihat bahagian Ranting Jadual pengurusan daripada critcl dokumentasi pakej untuk
butiran.

[8] Memanjangkan API yang digunakan oleh pakej berasaskan critcl dengan arahan critcl::userconfig
untuk pengurusan pilihan konfigurasi tersuai yang ditentukan oleh pembangun, sama ada pilihan itu
penggunaan dan/atau pengisytiharan.

Sila lihat bahagian Adat Membina konfigurasi daripada critcl dokumentasi pakej
untuk maklumat lanjut.

[9] Memanjangkan API yang digunakan oleh pakej berasaskan critcl dengan arahan
critcl::penerangan, critcl::ringkasan, critcl::subjek, critcl::meta, dan
critcl::buildrequirement untuk pengisytiharan data meta TEApot untuk/tentang
pakej.

Sila lihat bahagian Pakej meta Tarikh daripada critcl dokumentasi pakej untuk
butiran.

PERUBAHAN UNTUK VERSION 3.0.1


[1] Pembetulan pepijat di sekeliling. Secara terperinci:

[2] Rakaman tetap keperluan versi Tcl. Simpan nama dan versi pakej
bersama-sama, membongkar data meta yang dijana dan arahan memuatkan pakej.

[3] Membetulkan skrip binaan: Apabila memasang, atau membalut untuk TEA, jana mana-mana yang hilang
direktori

[4] Mengubah suai skrip binaan untuk keluar dari aplikasi dengan betul apabila tetingkap
GUI mereka ditutup melalui butang (X).

[5] Mengalih keluar 8.5-ism (wb terbuka) yang telah tergelincir ke dalam skrip binaan utama.

[6] Mengubah suai contoh binaan skrip untuk memisahkan output untuk yang berbeza
contoh (dan pakej) dengan menambah baris kosong.

[7] tindanan::c contoh pembetulan pepijat: Sertakan pengisytiharan API untuk digunakan dalam fail pasangan.

[8] Memperluaskan dokumentasi: Memperhatikan keperluan untuk pemasangan berfungsi C
penyusun

[9] Melanjutkan definisi dan kod sasaran Windows untuk mengendalikan fail manifes yang digunakan
oleh persekitaran pembangunan MS moden. Ambil perhatian bahawa kod ini mengendalikan kedua-duanya
kemungkinan, persekitaran menggunakan manifes, dan persekitaran (lama(er)) tanpa.

[10] Memperluas definisi dan kod sasaran Windows 64bit untuk mengesan keperluan secara automatik
perpustakaan pembantu "bufferoverflowU.lib" dan konfigurasi semula penyusun dan pautan
perintah dengan sewajarnya. Kami menganggap bahawa perpustakaan mesti dipautkan apabila ada.
Ini sepatutnya tidak memudaratkan jika perpustakaan ada, tetapi tidak diperlukan. Hanya berlebihan.
Kami mencari perpustakaan dalam laluan yang ditentukan oleh pembolehubah persekitaran LIB.

PERUBAHAN UNTUK VERSION 3.0.2


[1] Memperbaiki isu dalam mod kompil dan jalankan di mana arahan yang dimasukkan ke dalam auto_index tidak
ditemui oleh arahan [tidak diketahui] Tcl.

[2] Memperbaiki ketidakpadanan kunci tatasusunan yang memecahkan penggunaan data pelanggan dan fungsi pemadaman untuk
prosedur. Dilaporkan oleh Jos DeCoster, dengan tampalan.

[3] Melaksanakan pilihan baris arahan -L, setara dengan pilihan -I, hanya untuk perpustakaan
laluan carian.

[4] Isu github 5 dan 8 telah diperbaiki. Mengatasi pembolehubah yang hilang ::errorInfo. Ia
harus sentiasa ada, walau bagaimanapun nampaknya terdapat semakan Tcl di sekelilingnya
melanggar andaian ini.

PERUBAHAN UNTUK VERSION 3.0.3


[1] Isu github 5 dan 8 telah diperbaiki, untuk contoh skrip build.tcl. Bekerja di sekitar a
pembolehubah hilang ::errorInfo. Ia harus sentiasa ada, walau bagaimanapun nampaknya ada
semakan Tcl yang melanggar andaian ini.

PERUBAHAN UNTUK VERSION 3.0.4


[1] Penjanaan tetap nama init pakej apabila kod masuk dibaca daripada
stdin dan tidak mempunyai laluan yang betul.

[2] Isu github 11 telah diperbaiki. Kini menggunakan /LIBPATH dan bukannya -L pada Windows (libinclude
tetapan konfigurasi).

[3] Critcl lanjutan untuk mengendalikan format -l:path bagi pilihan -l. GNU ld 2.22+ mengendalikan ini
dengan mencari jalan yang ada. Baik apabila menentukan perpustakaan statik, seperti biasa -l
mencari perpustakaan kongsi sebagai keutamaan berbanding statik. critcl mengendalikannya sekarang, sebagai
GNU ld yang lebih lama tidak memahaminya, mahupun pelbagai pemaut khusus vendor.

[4] Isu github #12 telah diperbaiki. Critcl kini menentukan versi MSVC yang sedang digunakan dan digunakan
ia untuk bertukar antara pelbagai pilihan nyahpepijat pautan. Dipermudahkan pengendalian
bufferoverflowU.lib juga, menggunakan mekanisme yang sama dan meruntuhkan kedua-duanya
bahagian konfigurasi yang kami ada kembali menjadi satu.

[5] Mengolah semula sisipan #line pragma ke dalam kod C yang dijana untuk mengelakkan
had pada hujah nombor baris yang dikenakan oleh pelbagai penyusun, dan lebih banyak lagi
tepat.

[6] Pemprosesan hujah yang diubah suai. Pilihan -libdir kini juga membayangkan -L untuk hujahnya.

[7] Pengendalian lanjutan pilihan -show (critcl::showconfig) untuk menyenaraikan laluan
fail konfigurasi yang datang dari data. Baik untuk konfigurasi penyahpepijatan
pemprosesan.

[8] Memperluaskan skrip binaan dengan sasaran untuk menjana semula dokumentasi terbenam,
dan gambar rajah, dan untuk menjana keluaran.

PERUBAHAN UNTUK VERSION 3.0.5


[1] Membetulkan pepijat dalam kod baharu untuk pragma #line yang dicetuskan apabila menentukan kod C
tanpa memimpin ruang kosong.

[2] Memperluaskan dokumentasi untuk mempunyai halaman manual untuk lesen, pengambilan sumber,
pemasang, dan panduan pembangun.

PERUBAHAN UNTUK VERSION 3.0.6


[1] Isu github 10 telah diperbaiki. Aplikasi critcl kini menyampaikan kod keluar yang betul (1)
pada kegagalan binaan, bukannya sentiasa menunjukkan kejayaan (status 0).

[2] Isu github 13 telah diperbaiki. Pengendalian bufferoverflowU.lib untuk binaan keluaran ialah
tidak konsisten dengan pengendalian untuk binaan nyahpepijat. Ia kini dikendalikan secara serupa
(bersyarat) oleh kedua-dua kes.

[3] Pembersihan dokumentasi, terutamanya dalam panduan pemasangan, dan README.md ditunjukkan oleh
github

PERUBAHAN UNTUK VERSION 3.0.7


[1] Memperbaiki kod yang dijana oleh critcl::c++ command. Kod yang dipancarkan menyerahkan bukan-
jadual rentetan statik ke Tcl_GetIndexFromObj, melanggar kontrak, yang
memerlukan jadual mempunyai alamat tetap. Ini adalah kenangan yang menanti
berlaku. Terima kasih kepada Brian Griffin kerana mengingatkan kami kepada masalah umum.

PERUBAHAN UNTUK VERSION 3.1


[1] Menambah pakej peringkat tinggi baharu critcl::iassoc.

Pakej ini memudahkan penciptaan data yang mengaitkan kod dengan penterjemah
melalui Tcl's Tcl_(Dapatkan|Set)AssocData() API. Pengguna boleh menumpukan perhatian kepada datanya sambil
semua kod boilerplate C yang diperlukan untuk menyokong ini dihasilkan oleh pakej.

Pakej ini menggunakan beberapa ciri baharu yang telah ditambahkan pada teras critcl
pakej, lihat di bawah.

[2] Menambah pakej peringkat lebih tinggi critcl::kelas.

Pakej ini memudahkan penciptaan objek tahap C dengan kelas dan contoh
arahan. Pengguna boleh menulis definisi kelas dengan pembolehubah kelas dan contoh
dan -kaedah serupa dengan kelas TclOO, dengan semua kod boilerplate C yang diperlukan
menyokong ini yang dihasilkan oleh pakej.

Pakej ini menggunakan beberapa ciri baharu yang telah ditambahkan pada teras critcl
pakej, lihat di bawah.

[3] Memanjangkan API untuk mengendalikan metadata TEApot. Menambah arahan critcl::meta? kepada
menanyakan maklumat yang disimpan. Kegunaan utama yang dibayangkan pada masa ini ialah mendapatkan semula
nama pakej semasa dengan arahan utiliti, untuk digunakan dalam nama yang dibina. ini
maklumat tertentu sentiasa tersedia kerana imbasan statik pakej
fail pada pelaksanaan perintah critcl pertama.

Pakej baru critcl::iassoc and critcl::kelas (lihat di atas) adalah pengguna ini
perintah.

[4] Memanjangkan API dengan arahan, critcl::name2c, mendedahkan proses penukaran
nama Tcl ke dalam nama asas, ruang nama, dan ruang nama C. Ini membolehkan peringkat lebih tinggi
penjana kod untuk menjana jenis pengecam C yang sama seperti critcl sendiri.

Pakej baru critcl::kelas (lihat di atas) ialah pengguna arahan ini.

[5] Memanjangkan API dengan arahan, critcl::sumber, melaksanakan perintah critcl yang terdapat dalam
fail berasingan dalam konteks fail semasa. Ini membolehkan pengurusan lebih mudah
badan kod yang lebih besar kerana ia membolehkan pengguna membahagikan sedemikian kepada lebih mudah untuk
mencerna ketulan yang lebih kecil tanpa menyebabkan penjanaan berbilang pakej.

[6] Berkaitan dengan item sebelumnya, melanjutkan API dengan arahan untuk mengalihkan koleksi
kod C yang dihasilkan ke dalam ingatan. Ini menjadikannya lebih mudah untuk menggunakan arahan untuk
kod C tertanam dalam penjana kod peringkat lebih tinggi.

Lihat bahagian Advanced: Pelbagai untuk butiran arahan yang disediakan.

Pakej baru critcl::kelas (lihat di atas) adalah pengguna kemudahan ini.

[7] Memperluaskan API dengan arahan yang membantu pembangun dengan penjanaan C yang betul
#garisan arahan. Ini membolehkan penjana kod peringkat lebih tinggi untuk menjana dan memasukkan
arahan mereka sendiri, memastikan bahawa menyusun ralat dalam kod mereka adalah betul
dikaitkan.

Lihat bahagian Advanced: Lokasi pengurusan untuk butiran arahan yang disediakan.

Pakej baru critcl::iassoc and critcl::kelas (lihat di atas) adalah pengguna ini
kemudahan.

[8] Memperluaskan API dengan arahan yang memberi pengguna keupayaan untuk mentakrifkan hujah tersuai
dan jenis hasil untuk ::critcl::cproc.

Lihat bahagian Advanced: Memperluas cproc untuk butiran arahan yang disediakan.

PERUBAHAN UNTUK VERSION 3.1.1


[1] Pembetulan pepijat di sekeliling. Secara terperinci:

[2] Membetulkan penjanaan ralat salah#args untuk critcl::cproc dan kod terbitan
(critcl::kelas kaedah berasaskan cproc). Gunakan NULL jika tiada hujah, dan ambil
kira kira offset.

[3] Memperbaiki pengendalian nama pakej oleh critcl::kelas. Terlupa bahawa mereka mungkin mengandungi
pemisah ruang nama. Terjumpa ke versi 1.0.1.

[4] Dilanjutkan a critcl::kelas menjana mesej ralat dalam penciptaan contoh untuk kejelasan.
Terjumpa ke versi 1.0.2.

PERUBAHAN UNTUK VERSION 3.1.2


[1] Penambahbaikan. Secara terperinci:

[2] Dilanjutkan critcl::cproc untuk dapat mengendalikan hujah pilihan, dengan cara yang terhad.
Ini tersedia secara automatik untuk critcl::kelas kaedah berasaskan cproc juga.

[3] Pembetulan pepijat masuk lassign emulasi untuk Tcl 8.4. Tetapkan pembolehubah yang tidak digunakan dengan betul ke
rentetan kosong. Versi pakej emulasi terserempak lassign84 untuk 1.0.1.

PERUBAHAN UNTUK VERSION 3.1.3


[1] Penambahbaikan. Secara terperinci:

[2] Menambahkan jenis hujah baharu "pstring", untuk "Pascal String", rentetan yang dikira, iaitu a
gabungan penunjuk tali dan panjang tali.

[3] Menambah kaedah baharu critcl::argtypesupport and ::critcl::argsupport untuk menentukan dan menggunakan
kod sokongan tambahan untuk jenis hujah, di sini digunakan oleh "pstring" di atas untuk
tentukan struktur yang diperlukan.

[4] Pembetulan separa pepijat dalam pakej critcl::kelas and critcl::iassoc. Pragmas untuk AS
pengimbas data meta untuk memastikan bahawa fail templat dijadikan sebahagian daripada pakej.
Versi meningkat kepada 1.0.4 dan 1.0.1 masing-masing.

PERUBAHAN UNTUK VERSION 3.1.4


[1] Pembetulan pepijat dalam pakej critcl::kelas. Hasilkan medan tiruan dalam struktur kelas jika
kelas tidak mempunyai pembolehubah kelas. Tanpa perubahan ini struktur akan kosong,
dan beberapa penyusun tidak dapat mengendalikan jenis sedemikian.

[2] Memperbaiki kesilapan menaip yang memecahkan konfigurasi win64.

[3] Isu #16 telah diperbaiki, kesilapan menaip dalam dokumentasi arahan critcl::kelas.

PERUBAHAN UNTUK VERSION 3.1.5


[1] Isu #19 telah diperbaiki. Membuat ungkapan biasa mengekstrak nombor versi MSVC
lebih umum untuk menjadikannya berfungsi pada sistem bahasa Jerman. Ini mungkin perlu
dilawati semula pada masa hadapan, untuk tempat Windows yang lain.

[2] Isu #20 telah diperbaiki. Pilihan yang dibuat -teh berfungsi pada tingkap, sekurang-kurangnya dalam emulasi unix
persekitaran seperti msys/mingw.

PERUBAHAN UNTUK VERSION 3.1.6


[1] Isu #21 telah diperbaiki. Manakala multi-definisi pembolehubah penunjuk stub-table ialah
ok untuk semua pemaut C yang dilihat setakat ini pemaut C++ tidak menyukai ini sama sekali.
Mengolah semula kod untuk memastikan set pembolehubah ini dijana sekali sahaja, dalam
pembalut di sekeliling semua kepingan untuk dipasang.

[2] Isu #22 telah diperbaiki, pengendalian hujah pengecam perintah bagi
critcl::ccommand, critcl::cproc, dan critcl::cdata. Kami kini membenarkan mana-mana Tcl dengan betul
pengecam dan menjana pengecam C dalaman yang betul daripada mereka.

Sebagai sebahagian daripada ini tandatangan arahan critcl::name2c berubah. Perintah sekarang
menyampaikan senarai empat nilai bukannya tiga. Nilai baharu telah ditambah pada
akhir.

Selanjutnya menyesuaikan pelaksanaan pakej critcl::kelas, pengguna
critcl::name2c. Pakej ini kini berada pada versi 1.0.6 dan memerlukan critcl 3.1.6

Akhir sekali membetulkan kesilapan pengendalian pilihan -cname in critcl::ccommand, dan
critcl::cproc.

[3] Isu #23 telah diperbaiki.

PERUBAHAN UNTUK VERSION 3.1.7


[1] Isu #24 telah diperbaiki. Ekstrak dan paparan tanpa syarat amaran pengkompil yang terdapat dalam
membina log. Menghalang pengguna daripada kehilangan amaran yang, walaupun tidak menyebabkan binaan
gagal, mungkin masih menunjukkan masalah.

[2] Ciri baharu. Cangkuk keluaran. Semua output pengguna bukan pemesejan kini dialihkan melalui
arahan critcl::cetak, dan pengguna dibenarkan untuk mengatasinya apabila menggunakan critcl
aplikasi-sebagai-pakej.

[3] Ciri baharu, oleh Ashok P. Nadkarni. Konfigurasi platform boleh mewarisi nilai daripada
konfigurasi yang ditakrifkan sebelum mereka.

PERUBAHAN UNTUK VERSION 3.1.8


[1] Memperbaiki isu dengan indeks pakej yang dijana untuk Tcl 8.4. Sertai senarai arahan
dengan koma bertitik, bukan baris baharu.

[2] Memperbaiki isu #26 yang membawa kes penggunaan yang saya terlupa untuk pertimbangkan semasa membetulkannya
pepijat #21 (lihat critcl 3.1.6).

PERUBAHAN UNTUK VERSION 3.1.9


[1] Isu #27 telah diperbaiki. Menambah definisi platform yang hilang untuk pelbagai linux alternatif dan
Sasaran OS X.

[2] Isu #28 telah diperbaiki. Menambahkan bendera -mXX yang tiada untuk memaut di linux-{32,64}-*
sasaran.

[3] Isu #29 telah diperbaiki. Menggantikan penggunaan maklumat "cheader" mentah dalam pemprosesan
daripada "cdefines" dengan yang betul termasuk arahan yang diperoleh daripadanya.

[4] Memperbaiki isu di sebalik permintaan tarik ditolak #30 oleh Andrew Shadura. secara dinamik
ekstrak pengisytiharan pembolehubah rintisan daripada fail pengepala Tcl dan jana
memadankan definisi pembolehubah untuk digunakan dalam kod pakej. Kod yang dihasilkan akan
kini sentiasa konsisten dengan pengepala, walaupun salinannya sendiri critcl
digantikan dengan pengepala sistem.

[5] Isu #31 telah diperbaiki. Tampalan diterima oleh Andrew Shadura, dengan perubahan (komen), untuk
penyepaduan critcl yang lebih mudah dengan sistem pakej OS, menggantikan salinan critcl bagi
Pengepala Tcl dengan tajuknya sendiri.

[6] Isu #32 telah diperbaiki. Permintaan tarik gabungan oleh Andrew Shadura. Pelbagai typo masuk
dokumentasi dan ulasan.

[7] Isu #33 telah diperbaiki. Mengendalikan fail bermula dengan titik dengan lebih baik.

PENGARANG


Jean Claude Wippler, Steve Landers, Andreas Kupries

Gunakan critcl dalam talian menggunakan perkhidmatan onworks.net


Pelayan & Stesen Kerja Percuma

Muat turun apl Windows & Linux

  • 1
    Plugin Eclipse Tomcat
    Plugin Eclipse Tomcat
    Pemalam Eclipse Tomcat menyediakan
    penyepaduan mudah servlet tomcat
    bekas untuk pembangunan java
    aplikasi web. Anda boleh sertai kami untuk
    perbincangan...
    Muat turun Pemalam Eclipse Tomcat
  • 2
    Desktop WebTorrent
    Desktop WebTorrent
    WebTorrent Desktop adalah untuk penstriman
    torrents pada Mac, Windows atau Linux. Ia
    menyambung kepada kedua-dua BitTorrent dan
    WebTorrent rakan sebaya. Sekarang tidak ada
    perlu menunggu...
    Muat turun Desktop WebTorrent
  • 3
    GenX
    GenX
    GenX ialah program saintifik untuk memperhalusi
    refelcetivity sinar-x, neutron
    pemantulan dan sinar-x permukaan
    data pembelauan menggunakan pembezaan
    algoritma evolusi....
    Muat turun GenX
  • 4
    pspp4windows
    pspp4windows
    PSPP ialah program untuk statistik
    analisis data sampel. Ia adalah percuma
    penggantian untuk program proprietari
    SPSS. PSPP mempunyai kedua-dua berasaskan teks dan
    grafik kami...
    Muat turun pspp4windows
  • 5
    Sambungan Git
    Sambungan Git
    Sambungan Git ialah alat UI kendiri
    untuk menguruskan repositori Git. Ia juga
    berintegrasi dengan Windows Explorer dan
    Microsoft Visual Studio
    (2015/2017/2019). ke...
    Muat turun Sambungan Git
  • 6
    eSpeak: sintesis pertuturan
    eSpeak: sintesis pertuturan
    Teks ke Enjin Pertuturan untuk Bahasa Inggeris dan
    banyak bahasa lain. Saiz padat dengan
    sebutan yang jelas tetapi buatan.
    Tersedia sebagai program baris arahan dengan
    banyak ...
    Muat turun eSpeak: sintesis pertuturan
  • Lebih »

Arahan Linux

Ad