Think about Loose Coupling | |
PerlMonks |
Example of building/deploying perl program like StrawberryPerlby xiaoyafeng (Deacon) |
on Dec 10, 2018 at 08:04 UTC ( [id://1227025]=perlquestion: print w/replies, xml ) | Need Help?? |
xiaoyafeng has asked for the wisdom of the Perl Monks concerning the following question: Hi, Monks Recently,I have to port my program from Windows to Linux since the whole industry I've been worked on has gradually switch to it. Let me mention a little bit of current situation: When I'm on windows, I maintain an environment of Perl which is based on portable strawberry Perl. I added some more Perl libraries to Perl sub directory, some c libraries to c directory, and some executables to bin then I test my program on this . When the first installation, I installed the whole perl dist on customer machines, and with the every updates, I just need to change several files or scripts accordingly. Being about 8 years, this way works fine. It doesn't work on Linux world. Since the every Linux dist has already maintain a perl respectly which I may not test So I want to isolate my perl environment from system perl including 3rd binary libraries like I did on windows. but How install them(perl and c libraries) on individual users and the program can find it? I'm heard that the Docker would be suitable for this scenario, but I'm not sure. maybe it's out of topic, but if any monks know that Please point it out also. Based on Perl, as my poor perl knowledge (Little linux), there are several weapons I could use: perlbrew, Alien and Task family. As I preliminary think, I could use perlbrew to build a base perl dist, set it to default on .profile file. then use/create Alien module to add binary libraries for perl or directly using and Task for installing perl library. At last tar the whole directory and sent to customer! Am I right? Please enlighten me before I dive in, or point me out a better way! Thanks in advance. AndyI am trying to improve my English skills, if you see a mistake please feel free to reply or /msg me a correction
Back to
Seekers of Perl Wisdom
|
|