We get this compilation issue "make: 1254-055 Dependency line needs colon or double" while compiling C/C++ code in AIX machines.
It occurs if Makefile written in gmake format and then using native AIX make to compile it.
It can be resolved by installing gmake on AIX machine and then using it to compile.
We can verify whether the installed make is gmake or not by running 'make -v' to find out. If it's GNU, you'll know based on the output. If it gives you an error, then it's not GNU make.
-bash-3.00$ /usr/local/bin/make -v
GNU Make 3.80
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This is GNU Make
-bash-3.00$ make -v
make: Not a recognized flag: v
usage: make [-eiknqrst] [-k|-S] [-d[A|adg[1|2]msv]] [-D variable] [-f makefile ] [-j [jobs]] [variable=value ...] [target ...]
This is not GNU make.
Build automation | Release Management | DevOps | Site Reliabality Engineering | Configuration Management | Version Control Systems | Continuous Delivery | Containers | Microservices | Cluster resource management | Cloud services | Analytics
Showing posts with label AIX. Show all posts
Showing posts with label AIX. Show all posts
Wednesday, November 4, 2009
Friday, October 30, 2009
AIX install/unintall software - ssh
In AIX, we can use smitty to install software.
To uninstall, we can use "smit remove"
I wanted to install ssh on a AIX machine. But some how smit failed, so I tried compiling openssh from source.
We can download the openssh source code and compile it on our AIX box. Openssh needs zlib and openssl needs to be installed prior to it (I compiled both of these).
It looks for zlib.h zconf.h file /usr/inlcude directory and zlib.a file in /usr/lib directory.
After that we need to add new service on the system. Refer http://blog.thilelli.net/post/2005/06/14/How-to-Add-a-New-sshd_adm-Service-on-AIX-5X for this.
How to start sshd?
"startsrc -s sshd" will start the daemon.
Use "lssrc -s sshd" to see if it's already running.
Another way to start is "/usr/sbin/sshd -de"
lslpp --> The lslpp command displays information about installed filesets or fileset updates.
Example
[root@re-aix02:/usr/local/etc] lslpp -l bos.rte.libc openssh.base.server
Fileset Level State Description
----------------------------------------------------------------------------
Path: /usr/lib/objrepos
bos.rte.libc 5.1.0.69 COMMITTED libc Library
openssh.base.server 4.1.0.1 COMMITTED Open Secure Shell Server
oslevel -> Reports the latest installed maintenance level of the system
Here is some more info about installing ssh using smit
Installing openSSH on 5.1, 5.2, and 5.3
At 5.1, 5.2, and 5.3, the installation of openssh itself is in installp format, but all the prerequisites (including openssl) can be installed using the same rpm -i commands (using the same 4.3.3. rpm packages). The installp format package can be downloaded from the following site:http://sourceforge.net/projects/openssh-aix After installing the prerequisites using the following commands,
1. rpm -i zlib-1.1.4-3.aix4.3.ppc.rpm
2. rpm -i prngd-0.9.23-3.aix4.3.ppc.rpm AIX 5.2 uses /dev/urandom
3. rpm -i openssl-0.9.7d-1.aix5.1.ppc.rpm
4. rpm -i openssl-devel-0.9.7d-1.aix5.1.ppc.rpm
use smitty installp to install the openssh filesets extracted from the tar file openssh-3.8.1p1_51.tar (for 5.1), openssh-3.8.1p1_52.tar (for 5.2), and openssh-3.8.1p1_53.tar (for 5.3). The following steps need to be followed to install openssh.
1. In the directory where the images are, run the command inutoc.
2. Run smitty install.
3. Select "Install and Update Software".
4. While in smitty do the following:
4.1 Select "Install Software".
4.2 Enter a dot (".") in the field for "INPUT device / directory for software" and press ENTER.
4.3 Enter openssh in the "SOFTWARE to install" field.
4.4 Scroll down to "Preview new LICENSE agreements?" and press tab key to change the field to yes. Read the license agreement.
4.5 Scroll down to "ACCEPT new license agreements?" and press tab to change the field to yes. Press ENTER to begin the software installation.
Where to get openssl?
The OpenSSH software is shipped on the AIX 5.3 Expansion Pack. This version of OpenSSH is compiled and packaged as installp packages using the openssh-3.8.p1 level of source code. The installp packages include the man pages and the translated message filesets. The OpenSSH program contained in the Expansion Pack CD-ROM media is licensed under the terms and conditions of the IBM® International Program License Agreement (IPLA) for Non-Warranted Programs.
Before installing the OpenSSH installp format packages, you must install the Open Secure Sockets Layer (OpenSSL) software that contains the encrypted library. OpenSSL is available in RPM packages on the AIX Toolbox for Linux® Applications CD, or you can also download the packages from the following AIX Toolbox for Linux Applications Web site:
http://www-1.ibm.com/servers/aix/products/aixos/linux/download.html
Because the OpenSSL package contains cryptographic content, you must register on the Web site to download the packages. You can download the packages by completing the following steps:
1. Click the AIX Toolbox Cryptographic Content link on the right side of the AIX Toolbox for Linux Applications Web site.
2. Click I have not registered before.
3. Fill in the required fields in the form.
4. Read the license and then click Accept License. The browser automatically redirects to the download page.
5. Scroll down the list of cryptographic content packages until you see openssl-0.9.6m-1.aix4.3.ppc.rpm under OpenSSL — SSL Cryptographic Libraries.
6. Click the Download Now! button for the openssl-0.9.6m-1.aix4.3.ppc.rpm.
After you download the OpenSSL package, you can install OpenSSL and OpenSSH.
To uninstall, we can use "smit remove"
I wanted to install ssh on a AIX machine. But some how smit failed, so I tried compiling openssh from source.
We can download the openssh source code and compile it on our AIX box. Openssh needs zlib and openssl needs to be installed prior to it (I compiled both of these).
It looks for zlib.h zconf.h file /usr/inlcude directory and zlib.a file in /usr/lib directory.
After that we need to add new service on the system. Refer http://blog.thilelli.net/post/2005/06/14/How-to-Add-a-New-sshd_adm-Service-on-AIX-5X for this.
How to start sshd?
"startsrc -s sshd" will start the daemon.
Use "lssrc -s sshd" to see if it's already running.
Another way to start is "/usr/sbin/sshd -de"
lslpp --> The lslpp command displays information about installed filesets or fileset updates.
Example
[root@re-aix02:/usr/local/etc] lslpp -l bos.rte.libc openssh.base.server
Fileset Level State Description
----------------------------------------------------------------------------
Path: /usr/lib/objrepos
bos.rte.libc 5.1.0.69 COMMITTED libc Library
openssh.base.server 4.1.0.1 COMMITTED Open Secure Shell Server
oslevel -> Reports the latest installed maintenance level of the system
Here is some more info about installing ssh using smit
Installing openSSH on 5.1, 5.2, and 5.3
At 5.1, 5.2, and 5.3, the installation of openssh itself is in installp format, but all the prerequisites (including openssl) can be installed using the same rpm -i commands (using the same 4.3.3. rpm packages). The installp format package can be downloaded from the following site:http://sourceforge.net/projects/openssh-aix After installing the prerequisites using the following commands,
1. rpm -i zlib-1.1.4-3.aix4.3.ppc.rpm
2. rpm -i prngd-0.9.23-3.aix4.3.ppc.rpm AIX 5.2 uses /dev/urandom
3. rpm -i openssl-0.9.7d-1.aix5.1.ppc.rpm
4. rpm -i openssl-devel-0.9.7d-1.aix5.1.ppc.rpm
use smitty installp to install the openssh filesets extracted from the tar file openssh-3.8.1p1_51.tar (for 5.1), openssh-3.8.1p1_52.tar (for 5.2), and openssh-3.8.1p1_53.tar (for 5.3). The following steps need to be followed to install openssh.
1. In the directory where the images are, run the command inutoc.
2. Run smitty install.
3. Select "Install and Update Software".
4. While in smitty do the following:
4.1 Select "Install Software".
4.2 Enter a dot (".") in the field for "INPUT device / directory for software" and press ENTER.
4.3 Enter openssh in the "SOFTWARE to install" field.
4.4 Scroll down to "Preview new LICENSE agreements?" and press tab key to change the field to yes. Read the license agreement.
4.5 Scroll down to "ACCEPT new license agreements?" and press tab to change the field to yes. Press ENTER to begin the software installation.
Where to get openssl?
The OpenSSH software is shipped on the AIX 5.3 Expansion Pack. This version of OpenSSH is compiled and packaged as installp packages using the openssh-3.8.p1 level of source code. The installp packages include the man pages and the translated message filesets. The OpenSSH program contained in the Expansion Pack CD-ROM media is licensed under the terms and conditions of the IBM® International Program License Agreement (IPLA) for Non-Warranted Programs.
Before installing the OpenSSH installp format packages, you must install the Open Secure Sockets Layer (OpenSSL) software that contains the encrypted library. OpenSSL is available in RPM packages on the AIX Toolbox for Linux® Applications CD, or you can also download the packages from the following AIX Toolbox for Linux Applications Web site:
http://www-1.ibm.com/servers/aix/products/aixos/linux/download.html
Because the OpenSSL package contains cryptographic content, you must register on the Web site to download the packages. You can download the packages by completing the following steps:
1. Click the AIX Toolbox Cryptographic Content link on the right side of the AIX Toolbox for Linux Applications Web site.
2. Click I have not registered before.
3. Fill in the required fields in the form.
4. Read the license and then click Accept License. The browser automatically redirects to the download page.
5. Scroll down the list of cryptographic content packages until you see openssl-0.9.6m-1.aix4.3.ppc.rpm under OpenSSL — SSL Cryptographic Libraries.
6. Click the Download Now! button for the openssl-0.9.6m-1.aix4.3.ppc.rpm.
After you download the OpenSSL package, you can install OpenSSL and OpenSSH.
Thursday, December 4, 2008
How to know a Unix/Linux system is a 32/64 bit architecture?
To know whether given Unix/Linux machine is of type 32/64 bit architecure, use the command
getconf LONG_BIT
It outputs correspondingly 32 or 64 bit.
For AIX machine use "bootinfo -K" command for same purpose
Reference: http://www.unixguide.net/unixguide.shtml
getconf LONG_BIT
It outputs correspondingly 32 or 64 bit.
For AIX machine use "bootinfo -K" command for same purpose
Reference: http://www.unixguide.net/unixguide.shtml
Wednesday, December 3, 2008
How to know architecture of a AIX machine?
We can easily know the architecture type in Linux or Solaris systems with the help of "uname" command. But uname command in AIX don't give relevant information. To know the architecture (PowerPC, rs6000) of your AIX machine, use the following commands.
1) First know the processor characterstics by typing
[root@re-aix02:/] lsdev -Cc processor
proc0 Available 00-00 Processor
From this you know your processor is on "proc0 or proc1"
2) Using the information obtained from 1), know the attribute characteristics for processor
[root@re-aix02:/] lsattr -E -l proc0
state enable Processor state False
type PowerPC_POWER4 Processor type False
frequency 1200000000 Processor Speed False
The second line in output tells about processor architecture.
1) First know the processor characterstics by typing
[root@re-aix02:/] lsdev -Cc processor
proc0 Available 00-00 Processor
From this you know your processor is on "proc0 or proc1"
2) Using the information obtained from 1), know the attribute characteristics for processor
[root@re-aix02:/] lsattr -E -l proc0
state enable Processor state False
type PowerPC_POWER4 Processor type False
frequency 1200000000 Processor Speed False
The second line in output tells about processor architecture.
Thursday, November 13, 2008
“No licenses available. Contact your program supplier to add additional users. Compilation will proceed shortly.”
In AIX, the IBM c/c++ compiler xlc_r which gives the following licensing warning
“No licenses available. Contact your program supplier to add additional users. Compilation will proceed shortly.”
which considerably slows down the build process. This can be avoided by modifying /etc/vac.cfg file. Since license manager is optional, check out for "options", near the end, in DEFLT for xlc_r. Then add -qnolm option if it is not already exist, which means "no license manager".
Subscribe to:
Posts (Atom)