Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ptp-user] SDM debugger for AIX

On Thursday, November 29, 2012 8:17:22 Dave Wootton wrote:
> Christoph
> By the way, I should have mentioned, if you want to try building SDM on 
> your own, the only change you should need to make is add 'char *ret' so 
> org.eclipse.ptp.utils/src/compat.c at or near line 58. That's the change I 
> was planning to make to the open source code.

Dave,

following your above hint, I made the following change (assuming that this was 
what you meant).

--- ./proxy/org.eclipse.ptp.utils_6.0.3.201211112147/src/compat.c       
2012-11-11 16:36:00.000000000 +0100
+++ compat_new.c        2012-11-30 09:49:00.223508529 +0100
@@ -51,7 +51,7 @@
  */
 
 int
-vasprintf(char **strp, const char *fmt, va_list ap)
+vasprintf(char **ret, const char *fmt, va_list ap)
 {
        va_list ac;
        size_t len

Then I wrapped up the the proxy sub directory and did an scp to the target 
system. Finally, I logged in to the target system,
* export CC=xlc_r
* tar -jxvf ptp-proxy-6.0.3.tar.bz2
* cd proxy/org.eclipse.ptp.aix.ppc_6.0.3.201211112147/
* sh BUILD

After this the bin directory looked like this.
total 2080
drwxr-xr-x 2 k205001 ki0437  16384 2012-11-30 09:57 .
drwxr-xr-x 4 k205001 ki0437  16384 2012-11-30 09:54 ..
-rwxr-xr-x 1 k205001 ki0437 449337 2012-11-30 09:57 ptp_ibmll_proxy
-rwxr-xr-x 1 k205001 ki0437  22229 2012-11-30 09:57 ptp_ibmpe_miniproxy
-rwxr-xr-x 1 k205001 ki0437 529734 2012-11-30 09:57 ptp_ibmpe_proxy

means ... still no sdm. But the other proxies weren't there before, so there 
is some progress.

Looking back - the sdm compile went like this. Somehow there are still 
problems with asprintf. So, some other change is needed. Any hint ?


Building org.eclipse.ptp.debug.sdm_6.0.3.201211112147...
checking for a BSD-compatible install... /client/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /client/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking build system type... rs6000-ibm-aix
checking for gcc... xlc_r
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... no
checking whether xlc_r accepts -g... yes
checking for xlc_r option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of xlc_r... aix
checking whether xlc_r and cc understand -c and -o together... yes
checking whether make sets $(MAKE)... (cached) yes
checking for ranlib... ranlib
checking for gethostbyname in -lnsl... yes
checking for socket in -lsocket... no
checking for library containing openpty... no
checking for bitset_new in -lutils... yes
checking for proxy_svr_init in -lproxysvr... yes
checking for proxy_clnt_init in -lproxyclnt... yes
checking for clock_gettime in -lposix4... no
checking how to run the C preprocessor... xlc_r -E
checking for grep that handles long lines and -e... /client/bin/grep
checking for egrep... /client/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for strings.h... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking jni.h usability... no
checking jni.h presence... no
checking for jni.h... no
checking whether time.h and sys/time.h may both be included... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for working memcmp... yes
checking return type of signal handlers... void
checking for vprintf... yes
checking for _doprnt... yes
checking for gethostname... yes
checking for select... yes
checking for strdup... yes
checking for strstr... yes
checking for strtoul... yes
checking for sigset... yes
checking for sighold... yes
checking for sigrelse... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
=== configuring in libaif 
(/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.debug.sdm_6.0.3.201211112147/libaif)
configure: running /bin/sh ./configure --disable-option-checking '--
prefix=/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.aix.ppc_6.0.3.201211112147'  
'CC=xlc_r' --cache-file=/dev/null --srcdir=.
checking for a BSD-compatible install... /client/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /client/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... xlc_r
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... no
checking whether xlc_r accepts -g... yes
checking for xlc_r option to accept ISO C89... none needed
checking dependency style of xlc_r... aix
checking whether xlc_r and cc understand -c and -o together... yes
checking for a BSD-compatible install... /client/bin/install -c
checking whether make sets $(MAKE)... (cached) yes
checking for ranlib... ranlib
checking how to run the C preprocessor... xlc_r -E
checking for grep that handles long lines and -e... /client/bin/grep
checking for egrep... /client/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking whether byte ordering is bigendian... yes
checking for long long... yes
checking size of long long... 8
checking for long double... yes
checking size of long double... 8
checking for double... yes
checking size of double... 8
checking for ANSI C header files... (cached) yes
checking for strings.h... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking whether time.h and sys/time.h may both be included... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for working memcmp... yes
checking for vprintf... yes
checking for _doprnt... yes
checking for strdup... yes
checking for xmlto... no
configure: WARNING: You must have XMLTO to compile the XML documentation for 
libaif.
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/Makefile
config.status: creating config.h
config.status: executing depfiles commands
=== configuring in libmi 
(/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.debug.sdm_6.0.3.201211112147/libmi)
configure: running /bin/sh ./configure --disable-option-checking '--
prefix=/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.aix.ppc_6.0.3.201211112147'  
'CC=xlc_r' --cache-file=/dev/null --srcdir=.
checking for a BSD-compatible install... /client/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /client/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking for gcc... xlc_r
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... no
checking whether xlc_r accepts -g... yes
checking for xlc_r option to accept ISO C89... none needed
checking dependency style of xlc_r... aix
checking whether xlc_r and cc understand -c and -o together... yes
checking for a BSD-compatible install... /client/bin/install -c
checking whether make sets $(MAKE)... (cached) yes
checking for ranlib... ranlib
checking how to run the C preprocessor... xlc_r -E
checking for grep that handles long lines and -e... /client/bin/grep
checking for egrep... /client/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for strings.h... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking whether time.h and sys/time.h may both be included... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for working memcmp... yes
checking for vprintf... yes
checking for _doprnt... yes
checking for strdup... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh 
/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.debug.sdm_6.0.3.201211112147/missing 
--run aclocal-1.11 
configure.in:144: warning: AC_CONFIG_SUBDIRS: you should use literals
../../lib/autoconf/status.m4:1098: AC_CONFIG_SUBDIRS is expanded from...
configure.in:144: the top level
 cd . && /bin/sh 
/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.debug.sdm_6.0.3.201211112147/missing 
--run automake-1.11 --gnu
configure.in:144: warning: AC_CONFIG_SUBDIRS: you should use literals
../../lib/autoconf/status.m4:1098: AC_CONFIG_SUBDIRS is expanded from...
configure.in:144: the top level
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh 
/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.debug.sdm_6.0.3.201211112147/missing 
--run autoconf
configure.in:144: warning: AC_CONFIG_SUBDIRS: you should use literals
../../lib/autoconf/status.m4:1098: AC_CONFIG_SUBDIRS is expanded from...
configure.in:144: the top level
/bin/sh ./config.status --recheck
running CONFIG_SHELL=/bin/sh /bin/sh configure --
prefix=/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.aix.ppc_6.0.3.201211112147 
CC=xlc_r --no-create --no-recursion
checking for a BSD-compatible install... /client/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /client/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking build system type... rs6000-ibm-aix
checking for gcc... xlc_r
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... no
checking whether xlc_r accepts -g... yes
checking for xlc_r option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of xlc_r... aix
checking whether xlc_r and cc understand -c and -o together... yes
checking whether make sets $(MAKE)... (cached) yes
checking for ranlib... ranlib
checking for gethostbyname in -lnsl... yes
checking for socket in -lsocket... no
checking for library containing openpty... no
checking for bitset_new in -lutils... yes
checking for proxy_svr_init in -lproxysvr... yes
checking for proxy_clnt_init in -lproxyclnt... yes
checking for clock_gettime in -lposix4... no
checking how to run the C preprocessor... xlc_r -E
checking for grep that handles long lines and -e... /client/bin/grep
checking for egrep... /client/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for strings.h... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking jni.h usability... no
checking jni.h presence... no
checking for jni.h... no
checking whether time.h and sys/time.h may both be included... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for working memcmp... yes
checking return type of signal handlers... void
checking for vprintf... yes
checking for _doprnt... yes
checking for gethostname... yes
checking for select... yes
checking for strdup... yes
checking for strstr... yes
checking for strtoul... yes
checking for sigset... yes
checking for sighold... yes
checking for sigrelse... yes
configure: creating ./config.status
 /bin/sh ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
Making install in libaif
make[1]: Entering directory 
`/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.debug.sdm_6.0.3.201211112147/libaif'
source='aif.c' object='libaif_a-aif.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-aif.o `test -f 'aif.c' || echo './'`aif.c
source='calc.c' object='libaif_a-calc.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-calc.o `test -f 'calc.c' || echo './'`calc.c
"calc.c", line 1192.45: 1506-492 (I) Redefinition of i hides previous 
definition.
"calc.c", line 1197.45: 1506-492 (I) Redefinition of i hides previous 
definition.
"calc.c", line 1302.37: 1506-492 (I) Redefinition of i hides previous 
definition.
source='fds.c' object='libaif_a-fds.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-fds.o `test -f 'fds.c' || echo './'`fds.c
"fds.c", line 783.14: 1506-492 (I) Redefinition of index hides previous 
definition.
"fds.c", line 1991.17: 1506-480 (I) Missing break statement allows fall-
through to this case.
"fds.c", line 2002.17: 1506-480 (I) Missing break statement allows fall-
through to this case.
"fds.c", line 2013.17: 1506-480 (I) Missing break statement allows fall-
through to this case.
"fds.c", line 2152.9: 1506-480 (I) Missing break statement allows fall-through 
to this case.
"fds.c", line 2254.9: 1506-480 (I) Missing break statement allows fall-through 
to this case.
"fds.c", line 2299.17: 1506-492 (I) Redefinition of index hides previous 
definition.
"fds.c", line 2313.17: 1506-492 (I) Redefinition of index hides previous 
definition.
"fds.c", line 2351.39: 1506-492 (I) Redefinition of index hides previous 
definition.
source='array.c' object='libaif_a-array.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-array.o `test -f 'array.c' || echo './'`array.c
"array.c", line 141.17: 1506-492 (I) Redefinition of index hides previous 
definition.
"array.c", line 240.9: 1506-480 (I) Missing break statement allows fall-
through to this case.
"array.c", line 312.29: 1506-492 (I) Redefinition of index hides previous 
definition.
"array.c", line 342.9: 1506-480 (I) Missing break statement allows fall-
through to this case.
"array.c", line 567.22: 1506-492 (I) Redefinition of index hides previous 
definition.
"array.c", line 775.27: 1506-492 (I) Redefinition of index hides previous 
definition.
"array.c", line 911.34: 1506-492 (I) Redefinition of index hides previous 
definition.
"array.c", line 1083.26: 1506-492 (I) Redefinition of index hides previous 
definition.
source='conv.c' object='libaif_a-conv.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-conv.o `test -f 'conv.c' || echo './'`conv.c
"conv.c", line 1960.17: 1506-492 (I) Redefinition of index hides previous 
definition.
"conv.c", line 2298.17: 1506-492 (I) Redefinition of index hides previous 
definition.
"conv.c", line 2614.17: 1506-492 (I) Redefinition of index hides previous 
definition.
source='cmp.c' object='libaif_a-cmp.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-cmp.o `test -f 'cmp.c' || echo './'`cmp.c
"cmp.c", line 1034.30: 1506-438 (I) The value of the variable "hi_ll" may be 
used before being set.
"cmp.c", line 1966.29: 1506-492 (I) Redefinition of i hides previous definition.
"cmp.c", line 1991.29: 1506-492 (I) Redefinition of i hides previous definition.
"cmp.c", line 2004.29: 1506-492 (I) Redefinition of i hides previous definition.
source='print.c' object='libaif_a-print.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-print.o `test -f 'print.c' || echo './'`print.c
source='error.c' object='libaif_a-error.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-error.o `test -f 'error.c' || echo './'`error.c
source='io.c' object='libaif_a-io.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-io.o `test -f 'io.c' || echo './'`io.c
source='aggregate.c' object='libaif_a-aggregate.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-aggregate.o `test -f 'aggregate.c' || echo './'`aggregate.c
"aggregate.c", line 114.17: 1506-492 (I) Redefinition of index hides previous 
definition.
"aggregate.c", line 144.16: 1506-492 (I) Redefinition of index hides previous 
definition.
"aggregate.c", line 344.17: 1506-480 (I) Missing break statement allows fall-
through to this case.
"aggregate.c", line 348.17: 1506-480 (I) Missing break statement allows fall-
through to this case.
"aggregate.c", line 352.17: 1506-480 (I) Missing break statement allows fall-
through to this case.
source='util.c' object='libaif_a-util.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.      -g -qinfo=gen -qcpluscmt -c -o 
libaif_a-util.o `test -f 'util.c' || echo './'`util.c
rm -f libaif.a
ar cru libaif.a libaif_a-aif.o libaif_a-calc.o libaif_a-fds.o libaif_a-array.o 
libaif_a-conv.o libaif_a-cmp.o libaif_a-print.o libaif_a-error.o libaif_a-io.o 
libaif_a-aggregate.o libaif_a-util.o 
ranlib libaif.a
source='testaif.c' object='testaif-testaif.o' libtool=no \
        DEPDIR=.deps depmode=aix /bin/sh ./depcomp \
        xlc_r -DHAVE_CONFIG_H -I.    -I.  -g -g -qinfo=gen -qcpluscmt -c -o 
testaif-testaif.o `test -f 'testaif.c' || echo './'`testaif.c
"testaif.c", line 236.21: 1506-492 (I) Redefinition of min hides previous 
definition.
"testaif.c", line 236.28: 1506-492 (I) Redefinition of size hides previous 
definition.
"testaif.c", line 237.21: 1506-492 (I) Redefinition of index hides previous 
definition.
"testaif.c", line 293.21: 1506-492 (I) Redefinition of min hides previous 
definition.
"testaif.c", line 293.28: 1506-492 (I) Redefinition of size hides previous 
definition.
"testaif.c", line 293.37: 1506-492 (I) Redefinition of index hides previous 
definition.
"testaif.c", line 779.21: 1506-492 (I) Redefinition of index hides previous 
definition.
xlc_r -I.  -g -g -qinfo=gen -qcpluscmt -g  -o testaif testaif-testaif.o 
libaif.a 
ld: 0711-317 ERROR: Undefined symbol: .asprintf
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more information.
make[1]: *** [testaif] Error 8
make[1]: Leaving directory 
`/pf/k/k205001/remote_tools/proxy/org.eclipse.ptp.debug.sdm_6.0.3.201211112147/libaif'
make: *** [install-recursive] Error 1

Remember, the target system is special, as it imposes OBJECT_MODE=64 on every 
user. So, *everything* is 64-bit here.
[k205001@passat1 proxy]$ nm -X64 
./org.eclipse.ptp.debug.sdm_6.0.3.201211112147/libaif/libaif.a | grep asprintf
.asprintf            U  

So the question eventually is - where did the asprintf go ? 

OK, I can answer this question myself.
[k205001@passat1 proxy]$ nm -X64 \
 org.eclipse.ptp.utils_6.0.3.201211112147/libutils.a | grep asprintf
.asprintf            T         192         152
.vasprintf           T           0         188
asprintf             D         688          24
asprintf             d         648           8
asprintf:F-1         -         192
vasprintf            D         664          24
vasprintf            d         640           8
vasprintf:F-1        -           0
.vasprintf           U           -
.vasprintf           U           -

But how do I tell configure to tell testaif where to look for it ?
-- 

Mit freundlichen Grüßen / Kind regards

Dr. Christoph Pospiech
High Performance & Parallel Computing
Phone: +49-351 86269826
Mobile: +49-171-765 5871
E-Mail: christoph.pospiech@xxxxxxxxxx
-------------------------------------------------------------------------------------------------------------------------------------------
IBM Deutschland GmbH / Vorsitzender des Aufsichtsrats: Martin Jetter
Geschäftsführung: Martina Koederitz (Vorsitzende), Reinhard Reschke, Dieter 
Scholz, Gregor Pillen, Joachim Heel, Christian Noll
Sitz der Gesellschaft: Ehningen / Registergericht: Amtsgericht Stuttgart, HRB 
14562 / WEEE-Reg.-Nr. DE 99369940 



Back to the top