ibmruntimes / node

This repository is moving to: https://github.com/ibmruntimes/node-zos
69 stars 24 forks source link

Mixed code page, or other garbled output when installing ibm_db module #119

Open johnottogood opened 5 years ago

johnottogood commented 5 years ago

Installing the ibm_db module, I get what seems might be mixed code page output, or some other odd escape sequence behavior:

/u/jgood/nodejs> npm install ibm_db

ibm_db@2.5.0 install /u/jgood/nodejs/node_modules/ibm_db node installer/driverInstall.js

oput 'DSN1210.DB2.SDSNMACS(DSNAO64C)' '/u/jgood/nodejs/node_modules/ibmdb/build/dsnao64c.x' /,����>����>ŀ������?��▒▒��??�>?����>?��^_?��%����_^�����%�▒▒ CXX(target) Release/obj.target/odbc_bindings/src/odbc.o CXX(target) Release/obj.target/odbc_bindings/src/odbc_connection.o CXX(target) Release/obj.target/odbc_bindings/src/odbc_statement.o CXX(target) Release/obj.target/odbc_bindings/src/odbc_result.o SOLINK_MODULE(target) Release/obj.target/odbc_bindings.node COPY Release/odbc_bindings.node _/,���<�/��>ŀ������?��▒▒��??�>?����>?��^?��%����^�����%�▒▒ john1@1.0.0 /u/jgood/nodejs `-- ibm_db@2.5.0

I tried various combinations of _BXK_AUTOCVT=ON/ALL and _CEE_RUNOPTS='FILETAG(AUTOCVT,AUTOTAG), but it doesn't seem to help. Not sure exactly what is emitting the odd output.

Has this behavior been noted before?

I noted the setup instructions for python 2.7 indicate there are some compatibility problems with python's TERMINFO database and vi. Do you know if this is related? - Could there be other utilities with TERMINFO/curses issues?

joransiu commented 5 years ago

@johnottogood : That might be related to the encoding of 'make' stdout/stderr output. The zOS Enhanced ASCII support does not auto conversion over sockets.

I believe we had added some custom handling for the Rocket tools that are -qascii compiled. Can you confirm the 'make' version you are using, and where 'make' is located on your system?

johnottogood commented 5 years ago

Sorry for the delay. I was cleaning up the environment and unsettled it, so I had to get back to where I could get ibm_db to build.

Using the Rocket produce make 4.0, I do not get the garbled output. Using Rocket 4.1, I get the garbled output, even with _BPXK_AUTOCVT=ON and _CEE_RUNOPTS='FILETAG(AUTOCVT,AUTOTAG) exported.

make location: I put the path containing the 4.1 make (/shared/rocket2/bin) first in the PATH env var before running npn install ibm_db

The output that is getting garbled is (apparently) from make issuing messages when it changes in and out of a directory. This messages are written to stdout

How do sockets come into play for the build?

IgorTodorovskiIBM commented 4 years ago

@johnottogood , is still an issue for you?

We changed the implementation in Node v12+ to use pipes for interprocess communication so autoconversion now works in this case.