Secure Servers: Package Building With EnGarde Secure Linux
Secure Servers: Package Building With EnGarde Secure LinuxContributors: Eckie Silapaswang and William Keys from Guardian Digital IntroductionAlthough EnGarde Secure Linux does not include a development environment "out of the box," all of the tools to set one up are available via the Guardian Digital Secure Network. The purpose of this document is to provide you, the software developer, with the instructions to set up a package building environment of your own. After building the environment, we will walk you through building a package for the popular object oriented programming language, Ruby. Setting Up Your EnvironmentWhat you'll need:
Once you have all of the above you may log in as root, transition over to sysadm_r, and disable SELinux:
[root@engarde ~]# newrole -r sysadm_r [root@engarde ~]# setenforce 0 Next you must install the following packages:
[root@engarde ~]# apt-get update
[root@engarde ~]# apt-get install rpm-build rpm-devel autoconf automake
gcc gcc-c++ make patch binutils glibc-devel kernel-headers
libstdc++-devel
![]() Guardian Digital Secure Network: Package Management Interface At this point you have most of the core development package installed. As you build packages which link against other packages, you'll most definitely have to install other -devel packages. You may install the packages via WebTool or the command-line using apt-get. [root@engarde ~]# echo "rpm-src gdsn://updates.guardiandigital.com/GDSNROOT rapier core" >> /etc/apt/sources.list Then run apt-get update: [root@engarde ~]# apt-get update
[root@engarde ~]# apt-get source ruby At this point the package sources are installed in /usr/src/engarde/SOURCES, and the spec file is in /usr/src/engarde/SPECS:
... Install the required packages shown above using apt-get: [root@engarde ~]# apt-get install readline readline-devel ncurses ncurses-devel gdbm gdbm-devel glibc-devel autoconf gcc unzip groff bison openssl-devel zlib-devel db4-devel libtermcap-devel From here you should check the architecture of your environment. Go to the /usr/include directory and note the 'asm' symbolic links:
[root@xen8 include]# cd /usr/include
[root@xen8 include]# rm asm To build the package, use rpmbuild (this step may take a while): [root@engarde SPECS]# rpmbuild -ba ruby.spec Of course, we'd like to build the latest possible package for Ruby. At the time of this article, the latest version of Ruby is 1.8.6.
[root@xen8 SOURCES]# wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6.tar.gz Change to the spec file directory and edit the ruby.spec file with your favorite text editor.
Release: 1 We then change the Ruby version from 1.8.4 to 1.8.6:
%doc %{name}-%{version}/ToDo This should be enough to build the source. One last thing you should do for all your hard work is to credit yourself for putting together this package - go to the end of the spec file and add yourself in:
[root@engarde SPECS]# rpmbuild -ba ruby.spec Great work! You've just built an updated package for the latest version of Ruby! References
|
Join the discussion.
www.seamlessenterprise.com
IP Convergence
Integrate your wireless and wireline networks.
Learn how from the experts at Sprint.
www.seamlessenterprise.com
Wireless & Wireline Integration
Thoughts, strategies and solutions: join the discussion
www.seamlessenterprise.com
Unified Communications 2009
Join the Discussion. Now.
www.seamlessenterprise.com
Red Hat Virtual Experience - a free virtual event. Dec. 9th








Recent comments
22 hours 5 min ago
1 day 1 hour ago
1 day 3 hours ago
1 day 12 hours ago
1 day 13 hours ago
1 day 15 hours ago
1 day 16 hours ago
1 day 17 hours ago
1 day 20 hours ago
2 days 1 hour ago