Page 1 of 1

Datastage 8 installation/ compilation problem

Posted: Thu Nov 22, 2007 10:13 am
by JeroenDmt
We just installed datastage 8 on a windows server 2003 computer, after installing the microsoft visual c++ 2005 express compiler.

When I try to compile a parallel transformer job to see if the compiler is working, I am getting a compilation error.

Can anyone tell me how to find out what the problem is?

The compiler options in administrator are set to:

Code: Select all

APT_COMPILEROPT  -W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c 
APT_COMPILER cxx
APT_LINKER cxx
APT_LINKEROPT -s -W/dll -W/base:0x50000000

The error messages are as follows

Code: Select all

Output from transformer compilation follows:

##I IIS-DSEE-TFCN-00001 16:35:54(000) <main_program> 
IBM WebSphere DataStage Enterprise Edition 8.0.1.4458 
Copyright (c) 2001, 2005-2007 IBM Corporation. All rights reserved
 


##I IIS-DSEE-TOSH-00002 16:35:58(000) <main_program> orchgeneral: loaded
##I IIS-DSEE-TOSH-00002 16:35:58(001) <main_program> orchsort: loaded
##I IIS-DSEE-TOSH-00002 16:35:58(002) <main_program> orchstats: loaded
##W IIS-DSEE-TOSH-00049 16:36:00(000) <main_program> Parameter specified but not used in flow: DSPXWorkingDir
##E IIS-DSEE-TBLD-00076 16:36:35(000) <main_program> Error when checking composite operator: Subprocess command failed with exit status 20,480.
##E IIS-DSEE-TFSR-00019 16:36:35(001) <main_program> Could not check all operators because of previous error(s)
##W IIS-DSEE-TFTM-00012 16:36:35(002) <transform> Error when checking composite operator: The number of reject datasets "0" is less than the number of input datasets "1".
##I IIS-DSEE-TBLD-00000 16:36:35(003) <main_program> Error when checking composite operator: Output from subprocess: C:/PROGRA~1/MKSTOO~1/include\nutc/stdarg.h(55) : warning C4005: '_APALIGN' : macro redefinition
        C:/Program Files/Microsoft Visual Studio 8/VC/include\vadefs.h(84) : see previous definition of '_APALIGN'
C:/PROGRA~1/MKSTOO~1/include\nutc/stdarg.h(61) : warning C4005: '_INTSIZEOF' : macro redefinition
        C:/Program Files/Microsoft Visual Studio 8/VC/include\vadefs.h(101) : see previous definition of '_INTSIZEOF'
C:\IBM\InformationServer\Server\PXEngine\include\apt_util/keylookup.h(1148) : war
##I IIS-DSEE-TBLD-00000 16:36:35(004) <main_program> Error when checking composite operator: Output from subprocess: ning C4251: 'APT_KeyLookupRange::rangeOptions_' : class 'std::vector<_Ty>' needs to have dll-interface to be used by clients of class 'APT_KeyLookupRange'
        with
        [
            _Ty=APT_KeyLookupRange::rangeOption
        ]
C:\IBM\InformationServer\Server\Projects\DEMO\RT_BP9.O\V0S1_TestJob_Transformer_1.C(317) : warning C4244: '=' : conversion from 'APT_Int64' to 'int', possible loss of data

##I IIS-DSEE-TBLD-00079 16:36:35(005) <transform> Error when checking composite operator: cxx    -LC:/IBM/InformationServer/Server/Projects/DEMO/RT_BP9.O/ -LC:/IBM/InformationServer/Server/PXEngine/lib -LC:/IBM/InformationServer/Server/PXEngine/user_lib -s -W/dll -W/base:0x50000000 -lliborchnt -lliborchcorent -lliborchbuildopnt C:/IBM/InformationServer/Server/Projects/DEMO/RT_BP9.O/V0S1_TestJob_Transformer_1.tmp.o -o C:/IBM/InformationServer/Server/Projects/DEMO/RT_BP9.O/V0S1_TestJob_Transformer_1.dll.
##I IIS-DSEE-TBLD-00000 16:36:35(006) <main_program> Error when checking composite operator: Output from subprocess: LINK : fatal error LNK1104: cannot open file 'uuid.lib'

##E IIS-DSEE-TCOS-00029 16:36:35(007) <main_program> Creation of a step finished with status = FAILED. (TestJob.Transformer_1)

*** Internal Generated Transformer Code follows:
0001: //
0002: // Generated file to implement the V0S1_TestJob_Transformer_1 transform operator.
0003: //
0004: 
0005: // define our input/output link names
0006: inputname 0 DSLink2;
0007: outputname 0 DSLink4;
0008: 
0009: initialize {
0010: 	// define our row rejected variable
0011: 	int8 RowRejected0;
0012: 
0013: 	// define our null set variable
0014: 	int8 NullSetVar0;
0015: 
0016: 	// Stage variable declaration and initialisation
0017: 	int32 StageVar0_StageVar;
0018: 	StageVar0_StageVar = 0;
0019: }
0020: 
0021: mainloop {
0022: 	// initialise our row rejected variable
0023: 	RowRejected0 = 1;
0024: 
0025: 	// evaluate the stage variables first
0026: 	StageVar0_StageVar = (DSLink2.field1 + 1);
0027: 
0028: 	// evaluate columns (no constraints) for link: DSLink4
0029: 	DSLink4.field1 = (StageVar0_StageVar + 1);
0030: 	writerecord 0;
0031: 	RowRejected0 = 0;
0032: }
0033: 
0034: finish {
0035: }
0036: 
*** End of Internal Generated Transformer Code

Posted: Thu Nov 22, 2007 11:48 am
by chulett
Is the Express compiler listed as one of the supported versions? :?

Posted: Thu Nov 22, 2007 12:45 pm
by JeroenDmt
chulett wrote:Is the Express compiler listed as one of the supported versions? :?
Yes, it is indeed

Posted: Thu Nov 22, 2007 2:39 pm
by chulett
Well then, with that out of the way I'll step aside in deference to people with actual 8.x PX experience. :wink:

Posted: Fri Nov 23, 2007 6:25 am
by iDomz
Try adding -W/Zc:wchar_t- to compileropt and linkeropt variables

Posted: Fri Nov 23, 2007 9:35 am
by JeroenDmt
iDomz wrote:Try adding -W/Zc:wchar_t- to compileropt and linkeropt variables
Then I get the same result.

Posted: Mon Nov 26, 2007 2:16 am
by iDomz
That was the setting on my server on win 2k3,IIS 8 and VS 2005 Enterprise.

Try installing the latest windows sdk from MS. That should upgrade your libraries and fix any missing dependancies.

Posted: Mon Nov 26, 2007 10:23 am
by JeroenDmt
iDomz wrote:That was the setting on my server on win 2k3,IIS 8 and VS 2005 Enterprise.

Try installing the latest windows sdk from MS. That should upgrade your libraries and fix any missing dependancies.
I did that, but unfortunately I still got the same error messages when trying to compile.

Posted: Mon Nov 26, 2007 10:24 am
by JeroenDmt
I "fixed" the problem. The microsoft platform sdk was installed in a directory "c:\program files\Microsoft Platform SDK for Windows Server 2003 R2". When I copied the lib directory from there to "c:\program files\Microsoft Platform SDK" it can compile jobs without a problem.

I have no idea why I would need to do this do. If anyone has any idea how to really solve this, let us know.

Posted: Mon Nov 26, 2007 11:38 am
by lstsaur
If you have both these downloads, NET 2005 Express Edition C++ and SDk, installed BEFORE installing DS/QS 8.0.1, then the Enterprise Edition installer will find them for you, otherwise EE assumes that the compiler and SDK are installed in their default locations.

Posted: Mon Nov 26, 2007 1:03 pm
by JeroenDmt
lstsaur wrote:If you have both these downloads, NET 2005 Express Edition C++ and SDk, installed BEFORE installing DS/QS 8.0.1, then the Enterprise Edition installer will find them for you, otherwise EE assumes that the compiler and SDK are installed in their default locations.
They were installed before installing DS/QS. Is there any way to change the pointer to where the location are expected to be?

Posted: Mon Nov 26, 2007 2:22 pm
by ray.wurlod
APT_COMPILER and APT_LINKER can be pathnames.

Posted: Mon Nov 26, 2007 9:46 pm
by trokosz
What is supported is Studio .NET 2005 C++ and Microsoft Visual Studio .NET 2005 Express Edition C++ but it has to be the full load libraries or the run-time version is not enough.

IS will pick up the paths automatically if you chose the suggested installation paths vs. overriding.

Posted: Mon Nov 26, 2007 9:48 pm
by trokosz
What is supported is Studio .NET 2005 C++ and Microsoft Visual Studio .NET 2005 Express Edition C++ but it has to be the full load libraries or the run-time version is not enough.

IS will pick up the paths automatically if you chose the suggested installation paths vs. overriding.