Sign in Join
Wiki copytemporary

Deploying Your Application/fr: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Deploying Your Application/fr

OldNewLine
1+## Installateurs pour Windows
2+
3+### Inno Setup
4+
5+Inno Setup est un installateur libre pour des programmes Windows. Il peut être employé complètement gratuitement, même lorsque vous déployez une applications commerciale, le code source complet est disponible (Borland Delphi 2.0-5.0). (http://www.jrsoftware.org/).
6+
7+Il supporte toutes les versions de Windows en service aujourd'hui -- Windows 95, 98, 2000, 2003, XP, Me, NT 4.0, Vista, 7. L'installateur a la capacité de comparer l'information de version de fichier, remplacer des fichiers en cours d'utilisation, d'employer le compte de partagé de fichier, l'enregistrement de DLL/OCX et bibliothèques, et d'installer des polices. Créer des raccourcis n'importe où, d'inclure un icône dans le menu Démarrer et sur le bureau. Création dans le registre et des fichiers .INI; Moteur Pascal scripting intégré; Le soutien d'installation multilingue; Le soutien d'installation avec mot de passe et chiffrement; installation et désinstallation Silencieuse.
8+
9+Inno Setup est un logiciel avec des droits d'auteur, pas un logiciel du domaine public. Il y a quelques restrictions à la distribution et à l'utilisation; voir le fichier <http://www.jrsoftware.org/files/is/license.txt> pour les détails.
10+
11+Inno Setup est employé pour créer l'installation de Lazarus pour Windows.
12+
13+### InstallJammer
14+
15+[InstallJammer](http://www.installjammer.com/) un multi-plateformes, open source GUI l'installateur est conçu pour être complètement cross-plateformes et fonctionne sur Windows et la plupart des versions d'UNIX avec un certain soutien d'macOS.
16+
17+### HJ-Install
18+
19+HJ-Install est un installateur freeware pour Windows 95, 98, ME, NT 4.0, 2000 et XP. Il peut créer des installations distribués par Internet, CD-Rom, disquette simple et multi-disquettes, mais il peut également être employé sur des réseaux et comme moteur de scripting autonome. L'installateur est petit et ajoute seulement 138 KBs. Il ne change pas le registre et les fichiers INI, et il n'y a pas de désinstallation. Voir <http://www.freebyte.com/hjinstall/>
20+
21+### Installateur LizaJet
22+
23+L'installateur LizaJet est un installateur commercial, mais une édition libre est disponible. Utilisations de Pascal objet pour le scripting. Voir <http://www.lizajet.com>
24+
25+### NSIS (Nullsoft Scriptable Install System)
26+
27+Un système Open source professionnel pour créer des installateurs Windows. Un installateur complet de NSIS une taille de seulement 34 KBs. Voir <http://nsis.sourceforge.net/Main_Page> et <http://hmne.sourceforge.net/>
28+
29+### Trousse à outils d'installateur Windows XML (WiX)
30+
31+Une trousse à outils qui établit un paquet d'installation Windows en code source XML. La trousse à outils soutient l'environnement en ligne de commande que les développeurs peuvent intégrer dans leurs processus de construction pour établir des paquets d'installation MSI et MSM. Voir <http://wix.sourceforge.net/>
32+
33+## Installateurs Unix
34+
35+### Créer un paquet RPM sur Linux
36+
37+Sur Linux, la meilleure manière de déployer des applications est en employant le système de paquet natif. De nombreux systèmes de paquet existes, RPM (RedHat Package Manager) est le format le plus généralement utilisé, et est défini en tant que standard sur la norme de base Linux.
38+
39+Pour créer un fichier RPM, vous devez créer un fichier texte de Spec. avec l'information nécessaire pour créer le logiciel, et également un environnement pour construire ces Spec. Le meilleur éditeur pour créer des paquets RPM est Emacs, parce qu'il identifie l'extension de Spec., accentue le texte convenablement et a même une option de menu pour construire des paquets RPM.
40+
41+#### Installation de votre environnement de construction
42+
43+Des paquets RPM sont installés comme root au système de base (répertoire /), mais un accident comme root peut détruire votre machine. Pour éviter ceci, les paquets peuvent être construction comme utilisateur normale. Le processus de construction inclut une vrai installation, pour s'assurer des travaux du paquet, mais cette installation est faite à un faux répertoire racine représenté par la variable de \$RPM_BUILD_ROOT.
44+
45+D'abord, aller dans votre répertoire local(ou un autre répertoire à l'intérieur) et créer la structure de répertoires suivante:
46+
47+RPM
48+
49+RPM/BUILD - Ce répertoire est utilisé par RPM pour construire le paquet.
50+
51+RPM/RPMS - Ici vous pouvez trouver les RPMs binaire après que vous les construisiez.
52+
53+RPM/SOURCES - Placer vos fichiers comprimés tar et patch ici.
54+
55+RPM/SPECS - Placer tous vos fichiers de Spéc. ici.
56+
57+RPM/SRPMS - Ici vous pouvez trouver la source RPMs après que vous les construisiez.
58+
59+Après vous devrez créer un fichier de configuration pour dire au logiciel de construction de RPM où il peut trouver vos répertoires de construction. Aller à votre répertoire local et créer un fichier appelé .rpmmacros et placer le texte ci-dessous dedans. Veiller à changer les répertoires par rapport a votre système.
60+
61+ %_topdir /home/felipe/RPM/
62+ %_tmppath /home/felipe/tmp
63+
64+ %_signature gpg
65+ %_gpg_name Mandrakelinux
66+ %_gpg_path ~/.gnupg
67+
68+#### Créer seulement un paquet binaire
69+
70+La manière la plus facile de créer un paquet RPM est de la faire installer par le logiciel déjà compilé. Il y a une certaine raison pour laquelle nous pourrions vouloir éviter de compiler le logiciel dans le fichier de Spéc. :
71+
72+- Il exige de créer un fichier makefile et les fichiers makefile sont complexes
73+
74+- Quelques paquets n'ont aucun logiciel binaire dedans, ainsi ils n'ont pas besoin d'être construit.
75+
76+Chaque paquet RPM contient de simples archives comprimées tar. Placer les archives dans le répertoire de RPM/SOURCES. les compressions Zip, gz et bz2 devraient bien fonctionner. Le fichier peut contenir l'un ou l'autre la source complète du projet si vous voulez créer une source et un paquet binaire ou un répertoire avec les fichiers déjà en place, comme s'ils étaient installés sur la machine de l'utilisateur, si vous voulez créer seulement un paquet binaire.
77+
78+Pour custruire un paquet binaire ouvrir le fichier Spec. avec l'éditeur de texte Emacs. Sur Emacs ouvrir le menu "RPM spec" --\> "RPM Build" --\> "Build Binary Package". Ceci créera un fichier .rpm dans le répertoire RPM/RPMS
79+
80+Le texte si-dessous est un fichier Spéc. qui ne construit pas le logiciel. Dans ce cas-ci le logiciel est un cours de Braille composé de HTML et de fichier Flash Macromedia. Les fichiers Flash ne peuvent pas être construit sur Linux, ainsi il n'est pas possible de créer un paquet de source dans ce cas-ci.
81+
82+ %define name braillevirtual
83+ %define version 1.0
84+ %define release mdk
85+ %define dir braillevirtual
86+ %define root /home/felipe/tmp/ROOT/
87+
88+ Summary: Curso On-Line de Braille
89+ Name: %{name}
90+ Version: %{version}
91+ Release: %{release}
92+ Vendor: Laboratório de Brinquedos da Faculdade de Educação da USP
93+ URL: www.braillevirtual.fe.usp.br
94+ License: Distribuível livremente
95+ Group: Books/Other
96+ Packager: Felipe Monteiro de Carvalho
97+ Source0: home/felipe/Programacao/SOURCES/braillevirtual.tar.bz2
98+ BuildRoot: %{root}
99+
100+ %description
101+ O Braille Virtual é um curso on-line público e gratuito destinado à difusão e ensino do sistema Braille de leitura e escrita para cegos a pessoas que vêem. É orientado especialmente a pais, crianças, professores e funcionários de escolas inclusivas e pretende facilitar a comunicação entre estas pessoas e as pessoas com cegueira.
102+
103+ %prep
104+ cd $RPM_SOURCE_DIR
105+ cp braillevirtual.tar.bz2 $RPM_BUILD_DIR
106+ cd $RPM_BUILD_DIR
107+ rm -rf %{dir}
108+ rm -f braillevirtual.tar
109+ bunzip2 -d braillevirtual.tar.bz2
110+ tar -xvf braillevirtual.tar
111+
112+ %install
113+ rm -rf $RPM_BUILD_ROOT/usr/share/%{dir}
114+ cp -r $RPM_BUILD_DIR/%{dir} $RPM_BUILD_ROOT/usr/share/
115+
116+ %clean
117+ rm -rf $RPM_BUILD_DIR/*.*
118+
119+ %files
120+ /usr/share/%{dir}/
121+
122+ %changelog
123+
124+ * Mon Oct 24 2005 1.0-mdk.noarch.rpm
125+
126+ - Nova atualização do pacote de instalação. Inclusão dos exercícios avançados.
127+
128+ * Wed May 12 2005 1.0-mdk.noarch.rpm
129+
130+ - Atualizei o pacote para refletir as mudanças no site. Várias pequenas mudanças.
131+
132+ * Sun May 05 2005 1.0-1mdk.i586.rpm
133+
134+ - O pacote de instalação do braille Virtual para linux é criado.
135+
136+#### Créer une source et un paquet binaire
137+
138+Les distributions Linux acceptent seulement les paquets RPM qui peuvent construire le logiciel. Ceci exigera probablement de créer des scripts de construction et/ou un fichier makefile. Pour plus d'information voir la section [[Deploying Your Application|Deploying_Your_Application#Creating_a_Makefile_for_your_Lazarus_software]].
139+
140+Vous devez employer la section %build pour compiler le logiciel.
141+
142+Le texte ci-dessous est un exemple de fichier Spéc. capable de construire le logiciel. Faire très attention à ceci car chaque petit détail est important et bien suivre le modèle précis.
143+
144+ Name: magnifier
145+ Version: 3.2.1
146+ Release: 1
147+ Summary: Virtual Magnifying Glass
148+ Group: Accessibility
149+ License: GPL Version 2
150+ URL: http://magnifier.sourceforge.net
151+ Source0: http://internap.dl.sourceforge.net/sourceforge/magnifier/magnifier-3.2.1.zip
152+ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
153+ BuildRequires: fpc >= 2.0.2, lazarus >= 0.9.12
154+ Requires: ImageMagick
155+
156+ %description
157+
158+ Virtual Magnifying Glass is a free, open source, multiplatform, screen magnification tool. It is simple, customizable, and easy-to-use.
159+
160+ %prep
161+ %setup -q magnifier
162+
163+ %build
164+ make TARGET=%{_target_cpu}
165+
166+ %install
167+ ./install.sh DESTDIR=$RPM_BUILD_ROOT
168+
169+ %clean
170+ rm -rf $RPM_BUILD_ROOT/
171+
172+ %files
173+ %defattr(-,root,root,-)
174+ /usr/share/magnifier/
175+ /usr/bin/magnifier
176+
177+ %changelog
178+
179+ * Wed Feb 15 2006 Felipe Monteiro de Carvalho <felipemonteiro.carvalho at gmail.com> - 3.2-mdk.i386.rpm
180+ - The Linux RPM package is created.
181+
182+### Créer un paquet Debian sur Linux
183+
184+Svp, m'écrire.
185+
186+Aller voir en attendant ce cours d'instruction écrit par IBM.\
187+<http://www-128.ibm.com/developerworks/linux/library/l-debpkg.html>
188+
189+### GUInseng
190+
191+[GUInseng](http://www.guinseng.de/) est un installateur basé sur GTK pour Linux sous licence GPL.
192+
193+### The Zero Install system
194+
195+[The Zero Install system](http://0install.net/) aims to provide a better way of installing software than traditional systems
196+
197+(tarballs, apt-get, bundles, setup.exe, etc). Here are some of yours goals:
198+
199+#### Anyone can install software
200+
201+You don't have to be the administrator (root) just to install a word-processor.
202+
203+#### Anyone can distribute software
204+
205+You don't need to be blessed by a distribution (or anyone else) to be part of Zero Install. The system is completely
206+
207+decentralised.
208+
209+#### It doesn't matter whether software is installed or not
210+
211+You just run it. Zero Install handles the rest (downloading and caching as needed).
212+
213+#### Security
214+
215+If one user downloads a malicious program, other users aren't affected. Users can share downloads without having to trust
216+
217+each other. Installation does not execute any of the downloaded code. Digital signatures are always checked before new
218+
219+software is run.
220+
221+## Créer un fichier makefile pour votre logiciel Lazarus
222+
223+Ce qui suit est un système en ligne de commande pour construire un logiciel Lazarus. C'est en particulier une utilisation complète si vous voulez créer un paquet RPM approprié à inclure sur des distributions GNU/Linux. Les commentaires sur les fichiers devraient expliquer chaque partie.
224+
225+make.sh
226+
227+\<bash\>
228+
229+1.
230+2. Detects and parses the architecture
231+3.
232+
233+ARCH=\$(uname -m)
234+
235+case "\$ARCH" in
236+
237+`"i686") ARCH="i386";;`
238+
239+`"i586") ARCH="i386";;`
240+
241+`"i486") ARCH="i386";;`
242+
243+esac
244+
245+echo "Target architecture: \$ARCH"
246+
247+1.
248+2. Detects and parses the OS
249+3.
250+
251+OS="linux"
252+
253+echo "Target operating system: \$OS"
254+
255+1.
256+2. Command line to build the sofware
257+3.
258+
259+fpc -S2cgi -OG1 -gl -WG -vewnhi -l -Fu/usr/lib/lazarus/components/opengl/gtk2x11/ -Fi/usr/lib/lazarus/components/opengl/gtk2x11/include/ -Fu/usr/lib/lazarus/components/jpeg/ -Fu/usr/lib/lazarus/lcl/units/\$ARCH-\$OS/ -Fu/usr/lib/lazarus/lcl/units/\$ARCH-\$OS/ -Fu/usr/lib/lazarus/lcl/units/\$ARCH-\$OS/gtk2/ -Fu/usr/lib/lazarus/packager/units/\$ARCH-\$OS/ -Fu. -o./magnifier -dLCL -dLCLgtk2 magnifier.dpr \</bash\>
260+
261+install.sh
262+
263+\<bash\>
264+
265+1.
266+2. Parses command line options. Currently supported options are:
267+3.
268+4. DESTDIR Destination root directory
269+5.
270+
271+DESTDIR=""
272+
273+for arg; do
274+
275+` case $arg in`
276+
277+`   DESTDIR=*) DESTDIR=${arg#DESTDIR=};;`
278+
279+` esac;`
280+
281+done
282+
283+1.
284+2. Does the install
285+3.
286+4. "mkdir -p" is equivalent to ForceDirectories pascal function
287+5.
288+
289+mkdir -p \$DESTDIR/usr/share/magnifier
290+
291+cp ./topleft.bmp \$DESTDIR/usr/share/magnifier/ cp ./topright.bmp \$DESTDIR/usr/share/magnifier/ cp ./bottomleft.bmp \$DESTDIR/usr/share/magnifier/ cp ./bottomright.bmp \$DESTDIR/usr/share/magnifier/ cp ./top.bmp \$DESTDIR/usr/share/magnifier/ cp ./left.bmp \$DESTDIR/usr/share/magnifier/ cp ./bottom.bmp \$DESTDIR/usr/share/magnifier/ cp ./right.bmp \$DESTDIR/usr/share/magnifier/ cp ./icon3.ico \$DESTDIR/usr/share/magnifier/
292+
293+mkdir -p \$DESTDIR/usr/bin
294+
295+cp ./magnifier \$DESTDIR/usr/bin/ \</bash\>
296+
297+clean.sh
298+
299+\<bash\> rm -rf *.o rm -rf *.ppu
300+
301+rm -rf *.pas~ rm -rf *.sh~ rm -rf *.bak
302+
303+rm -rf *~
304+
305+rm -rf magnifier \</bash\>
306+
307+uninstall.sh
308+
309+\<bash\>
310+
311+1.
312+2. Don´t use "rm -rf" in here, because you should only remove the files you created
313+3.
314+
315+rm -f /usr/share/magnifier/topleft.bmp rm -f /usr/share/magnifier/topright.bmp rm -f /usr/share/magnifier/bottomleft.bmp rm -f /usr/share/magnifier/bottomright.bmp rm -f /usr/share/magnifier/top.bmp rm -f /usr/share/magnifier/left.bmp rm -f /usr/share/magnifier/bottom.bmp rm -f /usr/share/magnifier/right.bmp rm -f /usr/share/magnifier/icon3.ico
316+
317+rm -f /usr/share/magnifier/magnifier
318+
319+rm -f /usr/bin/magnifier
320+
321+rmdir /usr/share/magnifier \</bash\>
322+
323+Makefile
324+
325+ #
326+ # Targets
327+ #
328+
329+ #
330+ # The First target is the one build when there is nothing on make command line
331+ #
332+ all:
333+ ./make.sh
334+
335+ clean:
336+ ./clean.sh
337+
338+ install:
339+ ./install.sh
340+
341+ uninstall:
342+ ./uninstall.sh
343+
344+## macOS installers
345+
346+### Using PackageMaker on macOS
347+
348+Most macOS programs are distributed as a disk image file (.dmg extension). Normally you download or copy a program's .dmg file to your Mac and double-click it. This "mounts" the disk image and opens it in a window on the desktop, where you'll typically see a package file (.pkg extension) that you double-click to perform the actual program installation. After installation is complete, you "unmount" (eject) the mounted disk image by dragging it to the trash. You can also delete the .dmg file by dragging it to the trash as well.
349+
350+The installer .pkg file is actually a directory, as is the resulting application bundle (.app extension) that it copies to the Applications folder. To the user, .pkg and .app files look and act like ordinary files, but they're really directories whose details have been hidden from the user. You can see what's inside a .pkg or .app file by entering normal cd commands in a terminal window (for example, cd progname.app) or by Ctrl-clicking the file and choosing Show Package Contents from the popup menu.
351+
352+You create .pkg files using PackageMaker, which is installed along with the XCode tools in /Developer/Applications/Utilities. With PackageMaker, you select the folder containing the files you want to package and set other installation options, for example whether a password must be entered to install the program. Note that the folder you select can be an .app file. Choose File \| Create Package to create the .pkg file. You can also save your settings for future use in PackageMaker by choosing File \| Save to create a .pmsp file that you name (.pmproj with later versions).
353+
354+To create a .dmg file, run the macOS Disk Utility, which is installed in /Applications/ Utilities. Select Images \| New \| Image from Folder and choose the folder containing your .pkg file and any other files you want to include in the disk image. In the Convert Image dialog, enter the name of the .dmg file to create, select where it should be saved, and select "compressed" as the image format. The .dmg file that Disk Utility creates is then ready for distribution.
355+
356+### Installing X11 and GTK on macOS
357+
358+GUI apps created with Lazarus that use the GTK widgetset require X11 and the GTK libraries to run. X11 is included with macOS, but may not be installed by default on a user's Mac, so you'll want to mention this in your app's read-me file.
359+
360+To install the GTK libraries on a user's system, you could include instructions for using fink. Or you could create a separate .dmg file containing just the files from the /sw/lib folder on your Mac. If you don't want to install all of the subfolders under the /sw/lib folder, copy just the .dylib files from /sw/lib to a different folder and package this folder instead of /sw/lib. Also, remember that the GTK libraries installed on your Mac are specific to the processor that you're running. That is, if you want to support both PowerPC and Intel Macs you'll need to create two different .dmg files and instruct your users to install the appropriate one. Note that the GTK libraries only need to be installed once and can be used with any number of Lazarus GUI programs that you develop.
361+
362+---
363+*From the Free Pascal wiki, page "Deploying Your Application/fr", as it stood on 2019-12-22 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history