cancel
Showing results for 
Search instead for 
Did you mean: 

sqsh-2.5.16.1 install on AIX

former_member89972
Active Contributor
0 Kudos
419

Greetings SQSH Gurus

I need some help !!

I am trying to get sqsh-2.5.16.1 installed on AIX.

I am using gcc.

So tar xvf extracts and creates the folder OK.

configure step goes OK.

But make fails with following messages for "ld"  phase

<...snip>

        gcc   -L/sybase/15/OCS-15_0/lib  cmd_alias.o cmd_bcp.o cmd_buf.o cmd_connect.o cmd_do.o  cmd_echo.o cmd_exit.o cmd_for.o cmd_func.o cmd_go.o  cmd_help.o cmd_history.o cmd_if.o cmd_input.o cmd_jobs.o  cmd_kill.o cmd_lock.o cmd_loop.o cmd_misc.o cmd_read.o  cmd_reconnect.o cmd_redraw.o cmd_reset.o cmd_return.o cmd_rpc.o  cmd_run.o cmd_set.o cmd_shell.o cmd_show.o cmd_sleep.o cmd_wait.o  cmd_warranty.o cmd_while.o var_ctlib.o var_date.o var_debug.o var_dsp.o var_hist.o  var_misc.o var_passwd.o var_readline.o var_thresh.o dsp.o dsp_bcp.o dsp_csv.o dsp_conv.o dsp_desc.o dsp_horiz.o  dsp_html.o dsp_meta.o dsp_none.o dsp_out.o dsp_pretty.o  dsp_vert.o dsp_x.o sqsh_alias.o sqsh_args.o sqsh_avl.o sqsh_buf.o sqsh_cmd.o  sqsh_compat.o sqsh_debug.o sqsh_env.o sqsh_error.o  sqsh_expand.o sqsh_fd.o sqsh_filter.o sqsh_fork.o sqsh_func.o  sqsh_getopt.o sqsh_global.o sqsh_history.o sqsh_init.o  sqsh_job.o sqsh_readline.o sqsh_sig.o sqsh_sigcld.o sqsh_stdin.o  sqsh_strchr.o sqsh_tok.o sqsh_varbuf.o sqsh_main.o -lsybblk -lsybcomn -lsybcs -lsybct -lsybintl -lsybtcl -lsybunic -lm   -lreadline -lcurses  -lcrypt sqsh_parser/sqsh_parser.a -o sqsh

ld: 0706-006 Cannot find or open library file: -l sybblk

        ld:open(): A file or directory in the path name does not exist.

ld: 0706-006 Cannot find or open library file: -l sybcomn

        ld:open(): A file or directory in the path name does not exist.

ld: 0706-006 Cannot find or open library file: -l sybcs

        ld:open(): A file or directory in the path name does not exist.

ld: 0706-006 Cannot find or open library file: -l sybct

        ld:open(): A file or directory in the path name does not exist.

ld: 0706-006 Cannot find or open library file: -l sybintl

        ld:open(): A file or directory in the path name does not exist.

ld: 0706-006 Cannot find or open library file: -l sybtcl

        ld:open(): A file or directory in the path name does not exist.

ld: 0706-006 Cannot find or open library file: -l sybunic

        ld:open(): A file or directory in the path name does not exist.

collect2: error: ld returned 255 exit status

make: 1254-004 The error code from the last command is 1.

I have verified that the library path has the necessary libraies e.g. for sybblk libaries, I have following files

sybase@sw53:/dba/scratch/Avis/sqsh-2.5> ls -l /sybase/15/OCS-15_0/lib/*sybblk*

-rw-r--r--    1 sybase   dba             303 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk.exp

-rwxr-xr-x    1 sybase   dba          165212 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk.so

-rw-r--r--    1 sybase   dba          203127 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk64.a

-rw-r--r--    1 sybase   dba             305 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk64.exp

-rwxr-xr-x    1 sybase   dba          186924 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk64.so

-rw-r--r--    1 sybase   dba             305 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk_r.exp

-rwxr-xr-x    1 sybase   dba          166644 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk_r.so

-rw-r--r--    1 sybase   dba          203503 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk_r64.a

-rw-r--r--    1 sybase   dba             307 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk_r64.exp

-rwxr-xr-x    1 sybase   dba          188460 Dec 12 2011  /sybase/15/OCS-15_0/lib/libsybblk_r64.so


I have verified that the library path has the necessary libraies e.g. for sybblk libaries, I have following files


And LIBPATH is

sybase@sw53:/dba/scratch/Avis/sqsh-2.5> echo $LIBPATH

/sybase/15/ASE-15_0/lib:/sybase/15/OCS-15_0/lib:/sybase/15/OCS-15_0/lib3p:/sybase/15/OCS-15_0/lib3p64:/oracle/11.2.0.3/lib:/usr/lib:/usr/lpp/mqm/lib

I have attached my session run.

TIA

Aviansh

View Entire Topic
dawn_kim
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi,

The only I can think of is that the 32 bit build is looking for libsybct.a instead of libsybct.so.
If this is the deal you need to get the 32 bit SDK for aix. The 64 bit SDK does not include the 32 bit static binary.

I have a compile line for gcc on aix to build dynamically so you use the libsybct.so file. I am thinking you can add one of these options somewhere in the configure file of sqsh to help use dynamic binary.


gcc -shared -Wl -G -Wl, -brtl -maix32 -l -l/Sybase/OCS-15_0/include -Drs6000=1 firstapp.c -L/Sybase/OCS-15_0/lib -lsybct -lsybtcl -lsybcs -lsybcomn -lsybintl -lsybunic -lm -o firstapp

Thanks,
Dawn Kim

former_member89972
Active Contributor
0 Kudos

Thanks for the feedback. 

Unfortunately 32 bit route seems closed for us. We have gone 64 bit all round. And on the download pages I see only 64 bit versions for AIX. 


Do you happen to know how I can get hold of old SDK 32-bit for AIX ?

Other folks can shed some light if SQSH 64 bit with 64 bit static libraries is possible at all ?

Avinash

dawn_kim
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi,

I am wondering if in the config build if you can add the switch like -shared so it will use the 32 bit dynamic binary.

If you can't do the above I am thinking if you want to build 64 bit squash you modify the config build to build 64 bit according to this line in your build process it is doing 32 bit:
checking Compiling 32/64 bit mode... 32

Thanks,
Dawn Kim

former_member89972
Active Contributor
0 Kudos

Thanks a lot Dawn

Some progress made. I got the 32 bit archive files from 32-SDK for ASE 15.5  and then copied them by hand to the OCS-15_0/lib folder.

So only one error remains now and that is as follows.

<....snip>

ld: 0711-224 WARNING: Duplicate symbol: .bcopy

ld: 0711-224 WARNING: Duplicate symbol: .memmove

ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.

ld: 0711-317 ERROR: Undefined symbol: ._rl_clear_screen

collect2: error: ld returned 8 exit status

Will be great if someone can point me to right path !

Avinash

dawn_kim
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi,

I remember seeing that issue on aix also but different undefined symbol. It has something to do with a missing 32 bit binary on gcc or operating system. I couldn't figure out which binary it was. So I ended up compiling with 64 bit binaries and it worked fine.

This has to do with the linking options in the build just like the issue above.

I know you can turn of screen captures by adding this to the compile line: 'configure -disable-readline'

Thanks,
Dawn Kim