Saturday, March 15, 2014

Egtm (GTM support for Erlang) using UTF-8 chset

If you've already seen this line, you know how this one can be frustrating :)
EGTM Common Error: egtm: 150373066,call^%egtmapi,%GTM-E-INVOBJ, Cannot ZLINK object file due to unexpected format,%GTM-I-TEXT, Object compiled with CHSET=UTF-8 which is different from $ZCHSET

Fighting with GTM to have the UTF8 routines of EGTM, I've finally won the round !
Here's my strategy: in rebar.config add the UTF-8 line ( and set the correct path for your gtm_dist:
{port_envs, [
  %% GT.M flags
  {".*", "gtm_dist", "/opt/application/lib/fis-gtm/V6.0-003_x86_64/utf8"},
  {".*", "gtm_chset", "UTF-8"},
  {".*", "LDFLAGS", "$LDFLAGS -I$gtm_dist -L$gtm_dist -Wl,-rpath -Wl,$gtm_dist -lgtmshr -lc"}
]}.
Then remove the 'egtm_worker.so' from the src directory, and finally recompile:
./rebar comp

No comments:

Sticky