Ini adalah perintah ppkg-configp 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
PkgConfig - Pengganti Pure-Perl Core-Only untuk pkg-config
RINGKASAN
As a penggantian untuk "pkg-config"
$ ppkg-config --libs --cflags --statis gio-2.0
#outputs (baris dipecah secara artifisial agar mudah dibaca):
# -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
# -pthread -lgio-2.0 -lz -lresolv -lgobject-2.0
# -lgmodule-2.0 -ldl -lgthread-2.0 -pthread -lrt -lglib-2.0
"pkg-config.pl" dapat digunakan sebagai alias untuk "ppkg-config" pada platform yang mendukungnya.
Itu juga dapat diinstal sebagai "pkg-config" meskipun ini tidak disarankan jika sistem Anda memiliki
"pkg-config" asli.
Dibandingkan dengan:
$ pkg-config --libs --cflags --statis gio-2.0
#keluaran ( "" ):
# -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
# -pthread -lgio-2.0 -lz -lresolv -lgobject-2.0 -lgmodule-2.0
# -ldl -lgthread-2.0 -lrt -lglib-2.0
Mulai dari lain Perl modul
gunakan PkgConfig;
my $o = PkgConfig->find('gio');
if($o->errmsg) {
#menangani kesalahan
} Else {
$prefix saya = $o->get_var('prefix');
@cflags saya = $o->get_cflags;
@ldflags saya = $o->get_ldflags;
}
DESKRIPSI
"PkgConfig" menyediakan pengganti murni-perl, inti-saja untuk utilitas "pkg-config".
Ini bukan deskripsi penggunaan "pkg-config" melainkan deskripsi dari
perbedaan antara versi C dan versi Perl.
Sementara "pkg-config" adalah biner terkompilasi yang terhubung dengan glib, versi pure-perl tidak memiliki
persyaratan tersebut, dan akan berjalan di mana pun Perl ( >= 5.6 ) tidak.
Opsi utama yang didukung adalah "--libs", "--cflags", "--static", "--exists" dan
"--modversi".
SCRIPT PILIHAN
PENGGUNAAN
[ --pilihan ]
ARGUMEN
Secara default, nama perpustakaan harus diberikan kecuali salah satu dari --version, atau --real-version adalah
ditentukan.
Output biasanya harus sesuai untuk diteruskan ke kompiler favorit Anda.
--lib
(Juga) mencetak bendera penghubung. Dependensi dilintasi secara berurutan. Ketergantungan tingkat atas akan
muncul lebih awal di baris perintah daripada dependensi tingkat bawah.
--libs-only-L
Mencetak -L/-R bagian dari "--libs". Ini mendefinisikan jalur pencarian perpustakaan tetapi tanpa perpustakaan untuk
berhubungan dengan.
--libs-only-l
Mencetak bagian -l dari "--libs".
--libs-hanya-lainnya
Mencetak bagian dari "--libs" yang tidak tercakup oleh "--libs-only-L" dan "--libs-only-l", seperti
"--benang".
--daftar-semua
Daftar semua paket tahu.
--cflag
(Juga) kompiler cetak dan flag praprosesor C.
--cflags-saja-I
Mencetak bagian -I dari "--cflags"
--cflags-hanya-lainnya
Mencetak bagian dari "--cflags" yang tidak tercakup oleh "--cflags-only-I".
--modversi
Cetak versi paket yang diberikan.
--statis
Gunakan dependensi dan pustaka tambahan jika menautkan ke versi statis dari yang diminta
perpustakaan
--ada
Kembalikan sukses (0) jika paket ada di jalur pencarian.
--dengan-jalur=PATH
Tambahkan "PATH" ke daftar jalur pencarian yang berisi file ".pc".
Opsi ini dapat ditentukan beberapa kali dengan jalur yang berbeda, dan semuanya akan menjadi
menambahkan.
--env-saja
Menggunakan opsi ini, hanya jalur yang ditentukan dalam "PKG_CONFIG_PATH" dikenali dan hard-
kode default diabaikan.
--tebak-jalur
Panggil "gcc" dan "ld" untuk menentukan tautan default dan sertakan jalur. Jalur default adalah
dikecualikan dari flag -L dan -I eksplisit.
--define-variable=VARIABEL=VALUE
Mendefinisikan variabel, mengesampingkan definisi variabel tersebut dalam file .pc, dan mengizinkan
nilai Anda untuk diinterpolasi dengan penggunaan selanjutnya.
--variabel=VARIABEL
Ini mengembalikan nilai variabel yang ditentukan dalam file .pc paket.
--variabel-cetak
Cetak semua variabel yang ditentukan yang ditemukan di file .pc.
--Versi: kapan
Versi target "pkg-config" yang ditiru oleh skrip ini
--versi nyata
Versi sebenarnya dari skrip ini
--debug
Cetak informasi debug
--diam-kesalahan
Matikan kesalahan. Ini adalah default untuk argumen non-libs/cflag/modversion
--cetak-kesalahan
Cetak kesalahan ke STDERR dan lebih diutamakan daripada "--silence-errors"
--short-error
Diabaikan, tetapi dikenali untuk kompatibilitasnya.
--kesalahan-ke-stdout
Cetak kesalahan ke STDOUT dan lebih diutamakan daripada "--print-errors"
LINGKUNGAN
variabel "PKG_CONFIG_PATH" dan "PKG_CONFIG_LIBDIR" dihormati dan digunakan sebagai titik dua.
delimited (dibatasi titik koma pada Windows) daftar direktori yang berisi file ".pc".
Variabel lingkungan lain yang dikenali oleh "pkg-config" dan PkgConfig meliputi:
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS
PKG_CONFIG_ALLOW_SYSTEM_LIBS
Jika Win32API::Registry diinstal, pada Windows (tetapi bukan Cygwin) PkgConfig juga akan
lihat kunci registri ini. Nama-nama diabaikan, tetapi nilainya adalah jalur yang mengandung
file ".pc".
HKEY_CURRENT_USER\Perangkat Lunak\pkgconfig\PKG_CONFIG_PATH
HKEY_LOCAL_MACHINE\Perangkat Lunak\pkgconfig\PKG_CONFIG_PATH
Dukungan registri harus dianggap agak eksperimental, dapat berubah dalam
masa depan, meskipun bukan tanpa alasan yang baik. Alasan untuk peringatan ini adalah bahwa ini
fitur didokumentasikan di beberapa tempat, tetapi saya belum menemukan versi kerja yang
mengimplementasikan fitur ini.
MODUL PILIHAN
PkgConfig->temukan
my $result = PkgConfig->find($libary, %options);
Temukan perpustakaan dan kembalikan objek hasil. $library dapat berupa satu nama dari a
perpustakaan, atau referensi ke array nama perpustakaan
Opsinya dalam bentuk kunci dan nilai hash, dan berikut ini dikenali:
"jalur_pencarian"
"search_path_override"
Tambahkan jalur pencarian selain jalur yang ditentukan dalam $ENV{PKG_CONFIG_PATH}
nilai adalah referensi array.
varian "_override" mengabaikan default (seperti "PKG_CONFIG_PATH").
"file_path"
Menentukan path lengkap dari file .pc yang ingin Anda muat. Itu tidak
harus berada di jalur pencarian (walaupun dependensi apa pun harus ada). Berguna jika
Anda tahu jalur lengkap file .pc persis yang Anda inginkan.
"kecualikan_cflags"
"kecualikan_ldflags"
"kecualikan_cflags_override"
"kecualikan_ldflags_override"
Beberapa file ".pc" menentukan jalur pencarian compiler dan linker default, mis
"-I/usr/include -L/usr/lib". Menentukannya di baris perintah bisa menjadi masalah karena
itu secara drastis mengubah urutan pencarian.
Opsi di atas akan menambahkan atau mengganti opsi yang dikecualikan dan
tersaring.
Opsi penaut dan kompiler yang dikecualikan default dapat diperoleh melalui
@PkgConfig::DEFAULT_EXCLUDE_LFLAGS dan @PkgConfig::DEFAULT_EXCLUDE_CFLAGS,
masing.
"statis"
Tentukan juga perpustakaan statis.
"no_recurse"
Jangan mengulang dependensi. Ini berguna untuk hanya melakukan pemeriksaan versi.
"VARS"
Tentukan hashref variabel untuk mengganti definisi variabel apa pun dalam .pc
file. Ini setara dengan opsi baris perintah "--define-variable".
Objek "PkgConfig" dikembalikan dan mungkin ditanyakan tentang hasilnya:
$o->errmsg
Pesan kesalahan, jika ada. Ini adalah string dan menunjukkan kesalahan.
$o->pkg_ada
Nilai Boolean, benar jika paket ada.
$o->pkg_version
Versi paket
$o->get_cflags
$o->get_ldflags
Mengembalikan flag compiler dan linker, masing-masing.
Dalam konteks daftar, metode ini mengembalikan daftar dengan masing-masing argumen dibagi pada ruang yang tidak lolos.
Dalam konteks daftar, masing-masing mengembalikan daftar flag compiler dan linker.
Dalam konteks skalar mengembalikan string flag compiler dan linker dengan spasi dan tanda kutip
lolos dengan benar.
$o->get_var($nama)
Dapatkan variabel dengan nama yang diberikan.
PkgConfig->Tebak
Ini adalah metode kelas, dan akan menggantikan tautan default hard-coded dan menyertakan jalur
dengan yang ditemukan dengan memohon ld(1) dan cpp(1).
Saat ini ini hanya berfungsi dengan "ld" dan GNU "ld" yang disediakan GCC.
INSTALL
"Makefile.PL" yang disertakan dengan "PkgConfig" dapat mengambil satu atau lebih opsi "--script" untuk
perubahan nama script atau script yang di install.
--script ppkg-config.php
Ini adalah default dan berfungsi di semua platform
--skrip pkg-config.pl
Ini diinstal secara default pada semua platform kecuali untuk Windows, di mana .pl mungkin
membingungkan shell dan menyebabkan skrip dibuka di editor teks.
--skrip pkg-config
Ini adalah nama default dari "pkg-config" asli sehingga Anda harus secara khusus
aktifkan jika Anda menginginkannya.
--script tidak ada
Jangan menginstal skrip apa pun.
Contoh, instal semua nama skrip:
% perl Makefile.PL --skrip ppkg-config --skrip pkg-config.pl --skrip pkg-config.pl
Contoh, jangan instal skrip apa pun:
% perl Makefile.PL --script tidak ada
Anda juga dapat mengatur variabel lingkungan PERL_PKG_CONFIG_SCRIPTS ke --script . yang diinginkan
value (pisahkan setiap nama skrip dengan koma ",") untuk memastikan bahwa pemutakhiran PkgConfig
lakukan yang sama.
PERINGATAN
Pada Strawberry Perl "ppkg-config" bertindak seperti Strawberry adalah sistemnya. Ini berarti bahwa
· File .pc yang dibundel dengan Strawberry akan dicari secara default.
· Direktori include dan lib Strawberry digunakan untuk menghitung daftar pengecualian.
Pada Strawberry 5.20.0.1 PkgConfig dibundel dengan Strawberry dan "pkg-config" adalah
diinstal secara default (selain "ppkg-config", meskipun alias "ppkg-config" BUKAN
dibundel dengan Strawberry itu sendiri).
Untuk detail tentang cara menambal file .pc yang dibundel dengan Stroberi yang lebih lama, lihat
"README.win32" yang disertakan dengan Distribusi ini.
BUG
Urutan flag tidak sama persis dengan "pkg-config". Dari saya sendiri
pengamatan, sepertinya modul ini melakukan pekerjaan yang lebih baik, tetapi saya mungkin salah.
Tidak seperti "pkg-config", fungsi skrip "--exists" akan mengembalikan bukan nol jika sebuah paket or
salah satu dependensinya hilang. Ini berbeda dari perilaku "pkg-config" yang
hanya akan memeriksa definisi paket itu sendiri (tanpa ketergantungan).
Gunakan ppkg-configp online menggunakan layanan onworks.net