Page 1 of 1

Transformer Compile Error Visual C++ 2008 Express Edition

Posted: Wed Dec 19, 2012 1:54 pm
by nvalia
Hi,

When I try to compile a job with a Transformer, I get error, else it compiles fine.

I have read through most posts on this topic and tried the suggested options of changing the LIB and INCLUDE system environment variables but it did not help. I tried all the combinations below but it did not work

Has any one resolved similar error? please advice

Environment Variables Setting
DS Project Level

APT_COMPILEOPT "-W/TP -W/EHa -DAPT_USE_ANSI_IOSTREAMS -c -W/Zc:wchar_t-"
APT_LINKOPT "-s -W/dll -W/base:0x50000000 -W/Zc:wchar_t-"
APT_COMPILER=cxx
APT_LINKER=cxx

System Level
LIB = "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib"
INCLUDE = "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include"

System Level
LIB = "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\lib"
INCLUDE = "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\include"

Both of the system level paths are valid

Thanks,
NV

Posted: Wed Dec 19, 2012 7:13 pm
by ray.wurlod
What's the exact error message? What does it tell you?

Posted: Thu Dec 20, 2012 7:34 am
by nvalia
This the error I get, as shown below..I am not sure what it means but one thing I see is this path (marked in BOLD)

##I IIS-DSEE-TBLD-00000 08:28:14(003) <main_program> Error when checking composite operator: Output from subprocess: C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/include\exception(85) : warning C4985: 'strcpy_s': attributes not present on previous declaration.

While the LIB and INCLUDE Env Variables have a different path..
LIB = "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib"
INCLUDE = "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Include"

I also restarted the server after altering the Env Variables..
So not sure why it is using this or what is the Error about

Output from transformer compilation follows:

##I IIS-DSEE-TFCN-00001 08:28:09(000) <main_program>
IBM InfoSphere DataStage Enterprise Edition 8.7.0.6118
Copyright (c) 2001, 2005-2011 IBM Corporation. All rights reserved



##I IIS-DSEE-TFCN-00006 08:28:09(001) <main_program> conductor uname: -s=Windows_NT; -r=1; -v=6; -n=PHSSQL440; -m=Pentium
##I IIS-DSEE-TOSH-00002 08:28:09(002) <main_program> orchgeneral: loaded
##I IIS-DSEE-TOSH-00002 08:28:09(003) <main_program> orchsort: loaded
##I IIS-DSEE-TOSH-00002 08:28:09(004) <main_program> orchstats: loaded
##W IIS-DSEE-TOSH-00049 08:28:10(000) <main_program> Parameter specified but not used in flow: DSPXWorkingDir
##E IIS-DSEE-TBLD-00076 08:28:14(000) <main_program> Error when checking composite operator: Subprocess command failed with exit status 40,192.
##E IIS-DSEE-TFSR-00019 08:28:14(001) <main_program> Could not check all operators because of previous error(s)
##W IIS-DSEE-TFTM-00012 08:28:14(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 08:28:14(003) <main_program> Error when checking composite operator: Output from subprocess: C:/Program Files (x86)/Microsoft Visual Studio 9.0/VC/include\exception(85) : warning C4985: 'strcpy_s': attributes not present on previous declaration.
C:/PROGRA~2/MKSTOO~1/include\string.h(90) : see declaration of 'strcpy_s'
C:\IBM\InformationServer\Server\PXEngine\include\apt_util/keylookup.h(1151) : warning C4251: 'APT_KeyLookupRange::rangeOptions_' : class 'std::vector<_Ty>' needs to have dll-interface to be used by clients of class 'APT_KeyLookupRange'
with
[
_
##I IIS-DSEE-TBLD-00000 08:28:14(004) <main_program> Error when checking composite operator: Output from subprocess: Ty=APT_KeyLookupRange::rangeOption
]
C:\IBM\InformationServer\Server\PXEngine\include\apt_components/transformop/transformbase.h(185) : warning C4244: 'argument' : conversion from 'APT_UInt64' to 'unsigned int', possible loss of data
C:\IBM\InformationServer\Server\PXEngine\include\apt_components/transformop/transformbase.h(185) : warning C4334: '<<' : result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)
C:\IBM\InformationServer\Server\PXEngine\include\apt_componen
##I IIS-DSEE-TBLD-00000 08:28:14(005) <main_program> Error when checking composite operator: Output from subprocess: ts/transformop/transformbase.h(185) : warning C4800: 'unsigned __int64' : forcing value to bool 'true' or 'false' (performance warning)
C:\IBM\InformationServer\Server\PXEngine\include\apt_components/transformop/transformbase.h(186) : warning C4244: 'argument' : conversion from 'APT_UInt64' to 'unsigned int', possible loss of data
C:\IBM\InformationServer\Server\PXEngine\include\apt_components/transformop/transformbase.h(186) : warning C4334: '<<' : result of 32-bit shift implicitly converted to 64 bits (
##I IIS-DSEE-TBLD-00000 08:28:14(006) <main_program> Error when checking composite operator: Output from subprocess: was 64-bit shift intended?)
C:\IBM\InformationServer\Server\PXEngine\include\apt_components/transformop/transformbase.h(187) : warning C4244: 'argument' : conversion from 'APT_UInt64' to 'unsigned int', possible loss of data
C:\IBM\InformationServer\Server\Projects\Finance_BI\RT_BP1.O\V0S11_Test_Campus_Stage_Transformer_11.C(205) : warning C4101: 'output' : unreferenced local variable
C:\IBM\InformationServer\Server\Projects\Finance_BI\RT_BP1.O\V0S11_Test_Campus_Stage_Transformer_11.C(200) : warning C410
##I IIS-DSEE-TBLD-00000 08:28:14(007) <main_program> Error when checking composite operator: Output from subprocess: 1: 'input' : unreferenced local variable

##I IIS-DSEE-TBLD-00079 08:28:14(008) <transform> Error when checking composite operator: cxx -LC:/IBM/InformationServer/Server/Projects/Finance_BI/RT_BP1.O/ -LC:/IBM/InformationServer/Server/PXEngine/lib -LC:/IBM/InformationServer/Server/PXEngine/user_lib -s -W/dll -W/base:0x50000000 -W/Zc:wchar_t- -lliborchnt -lliborchcorent -lliborchbuildopnt C:/IBM/InformationServer/Server/Projects/Finance_BI/RT_BP1.O/V0S11_Test_Campus_Stage_Transformer_11.tmp.o -o C:/IBM/InformationServer/Server/Projects/Finance_BI/RT_BP1.O/V0S11_Test_Campus_Stage_Transformer_11.dll.
##I IIS-DSEE-TBLD-00000 08:28:14(009) <main_program> Error when checking composite operator: Output from subprocess: LINK : fatal error LNK1181: cannot open input file 'kernel32.lib'

##E IIS-DSEE-TCOS-00029 08:28:14(010) <main_program> Creation of a step finished with status = FAILED. (Test_Campus_Stage.Transformer_11)

*** Internal Generated Transformer Code follows:
0001: //
0002: // Generated file to implement the V0S11_Test_Campus_Stage_Transformer_11 transform operator.
0003: //
0004:
0005: // define our input/output link names
0006: inputname 0 DSLink2;
0007: outputname 0 DSLink6;
0008:
0009: initialize {
0010: // define our control variables
0011: int8 RowRejected0;
0012: int8 NullSetVar0;
0013:
0014: }
0015:
0016: mainloop {
0017:
0018: // initialise the rejected row variable
0019: RowRejected0 = 1;
0020:
0021: // evaluate columns (no constraints) for link: DSLink6
0022: writerecord 0;
0023: RowRejected0 = 0;
0024: }
0025:
0026: finish {
0027: }
0028:
*** End of Internal Generated Transformer Code

Posted: Thu Dec 20, 2012 8:08 am
by chulett
First suggestion would be to ensure you are using a compiler version that is officially supported by both your platform and version.

Posted: Thu Dec 20, 2012 8:20 am
by nvalia
We installed the Compiler given to us by an IBM rep who helped Install it as well, Onsite
To double check how can I verify if the version we are using is supported or not?

Posted: Thu Dec 20, 2012 8:22 am
by chulett
So this IBM Rep installed the compiler for you but never actually tested it to make sure it was working properly with DataStage? :roll:

Someone else will have to answer your question, I didn't have any luck this morning trying to track down that information on IBM's site. [sigh]

Posted: Thu Dec 20, 2012 8:46 am
by nvalia
We are on Datastage 8.7 on Windows Server 2008 R2 Enterprise Edition

I see under Program Files on the server, Visual C++ 9.0 Express Edition and under which I see Microsoft Visual C++ 2008 Express Edition...So i believe we have the compiler - 2008 Express Edition?

Posted: Thu Dec 20, 2012 5:38 pm
by stuartjvnorton
Yep, it's 2008 Express.

These are the supported compilers for 8.7:

http://pic.dhe.ibm.com/infocenter/prodg ... rm=Windows#

That said, Microsoft have recently removed links to 2003, 2005 and 2008 from the normal Visual Studio download pages and 2012 isn't officially supported yet (even by v9.1).

Posted: Sun Jan 27, 2013 12:45 pm
by aymancherif
Hello, I'm facing the same problem... Could you please tell how you solved this or how i have to deal with it ?

Re: Transformer Compile Error Visual C++ 2008 Express Editio

Posted: Mon Jan 28, 2013 3:17 am
by manumace
Hi,

Can you please check whether .NET Framework 2.0 Software Development Kit (SDK) is installed on the machine? I had a similar issue, and was solved by installing the SDK. Please set the ENV varibales once you installed same.

You can download the same from below link
http://www.microsoft.com/en-us/download ... x?id=19988

Regards,
Manu