1Alien::Build::Plugin::PUrsoebre:C:oVnctprkigb(u3t)ed PerAlliDeonc:u:mBeunitladt:i:oPnlugin::Probe::Vcpkg(3)
2
3
4
6 Alien::Build::Plugin::Probe::Vcpkg - Probe for system libraries using
7 Vcpkg
8
10 version 2.80
11
13 use alienfile;
14
15 plugin 'Probe::Vcpkg' => 'libffi';
16
18 This plugin probe can be used to find "system" packages using
19 Microsoft's "Vcpkg" package manager for Visual C++ builds of Perl.
20 "Vcpkg" is a package manager for Visual C++ that includes a number of
21 open source packages. Although "Vcpkg" does also support Linux and
22 macOS, this plugin does not support finding "Vcpkg" packages on those
23 platforms. For more details on "Vcpkg", see the project github page
24 here:
25
26 <https://github.com/microsoft/vcpkg>
27
28 Here is the quick start guide for getting Alien::Build to work with
29 "Vpkg":
30
31 # install Vcpkg
32 C:\> git clone https://github.com/Microsoft/vcpkg.git
33 C:\> cd vcpkg
34 C:\vcpkg> .\bootstrap-vcpkg.bat
35 C:\vcpkg> .\vcpkg integrate install
36
37 # update PATH to include the bin directory
38 # so that .DLL files can be found by Perl
39 C:\vcpkg> path c:\vcpkg\installed\x64-windows\bin;%PATH%
40
41 # install the packages that you want
42 C:\vcpkg> .\vcpkg install libffi
43
44 # install the alien that uses it
45 C:\vcpkg> cpanm Alien::FFI
46
47 If you are using 32 bit build of Perl, then substitute "x86-windows"
48 for "x64-windows". If you do not want to add the "bin" directory to
49 the "PATH", then you can use "x64-windows-static" instead, which will
50 provide static libraries. (As of this writing static libraries for 32
51 bit Windows are not available). The main downside to using
52 "x64-windows-static" is that Aliens that require dynamic libraries for
53 FFI will not be installable.
54
55 If you do not want to install "Vcpkg" user wide (the "integrate
56 install" command above), then you can use the "PERL_WIN32_VCPKG_ROOT"
57 environment variable instead:
58
59 # install Vcpkg
60 C:\> git clone https://github.com/Microsoft/vcpkg.git
61 C:\> cd vcpkg
62 C:\vcpkg> .\bootstrap-vcpkg.bat
63 C:\vcpkg> set PERL_WIN32_VCPKG_ROOT=c:\vcpkg
64
66 name
67 Specifies the name of the Vcpkg. This should not be used with the
68 "lib" property below, choose only one.
69
70 This is the default property, so these two are equivalent:
71
72 plugin 'Probe::Vcpkg' => (name => 'foo');
73
74 and
75
76 plugin 'Probe::Vcpkg' => 'foo';
77
78 lib
79 Specifies the list of libraries that make up the Vcpkg. This should
80 not be used with the "name" property above, choose only one. Note that
81 using this detection method, the version number of the package will not
82 be automatically determined (since multiple packages could potentially
83 make up the list of libraries), so you need to determine the version
84 number another way if you need it.
85
86 This must be an array reference. Do not include the ".lib" extension.
87
88 plugin 'Probe::Vcpkg' => (lib => ['foo','bar']);
89
90 ffi_name
91 Specifies an alternate ffi_name for finding dynamic libraries.
92
94 Alien::Build, alienfile, Alien::Build::MM, Alien
95
97 Author: Graham Ollis <plicease@cpan.org>
98
99 Contributors:
100
101 Diab Jerius (DJERIUS)
102
103 Roy Storey (KIWIROY)
104
105 Ilya Pavlov
106
107 David Mertens (run4flat)
108
109 Mark Nunberg (mordy, mnunberg)
110
111 Christian Walde (Mithaldu)
112
113 Brian Wightman (MidLifeXis)
114
115 Zaki Mughal (zmughal)
116
117 mohawk (mohawk2, ETJ)
118
119 Vikas N Kumar (vikasnkumar)
120
121 Flavio Poletti (polettix)
122
123 Salvador Fandiño (salva)
124
125 Gianni Ceccarelli (dakkar)
126
127 Pavel Shaydo (zwon, trinitum)
128
129 Kang-min Liu (劉康民, gugod)
130
131 Nicholas Shipp (nshp)
132
133 Juan Julián Merelo Guervós (JJ)
134
135 Joel Berger (JBERGER)
136
137 Petr Písař (ppisar)
138
139 Lance Wicks (LANCEW)
140
141 Ahmad Fatoum (a3f, ATHREEF)
142
143 José Joaquín Atria (JJATRIA)
144
145 Duke Leto (LETO)
146
147 Shoichi Kaji (SKAJI)
148
149 Shawn Laffan (SLAFFAN)
150
151 Paul Evans (leonerd, PEVANS)
152
153 Håkon Hægland (hakonhagland, HAKONH)
154
155 nick nauwelaerts (INPHOBIA)
156
157 Florian Weimer
158
160 This software is copyright (c) 2011-2022 by Graham Ollis.
161
162 This is free software; you can redistribute it and/or modify it under
163 the same terms as the Perl 5 programming language system itself.
164
165
166
167perl v5.38.0 2023-07-A2l0ien::Build::Plugin::Probe::Vcpkg(3)