A fix is available
APAR status
Closed as program error.
Error description
Setting the iOS Deployment Target to 7 causes the following link errors: Undefined symbols for architecture i386: "std::string::c_str() const", referenced from: +[NSNumber(UCUtils) doubleToString:] in libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) "std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::str() const", referenced from: +[NSNumber(UCUtils) doubleToString:] in libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) "std::ostream::operator<<(double)", referenced from: +[NSNumber(UCUtils) doubleToString:] in libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) "std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()", referenced from: +[NSNumber(UCUtils) doubleToString:] in libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) "std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::basic_ostringstream(std::_Ios_Openmode)", referenced from: +[NSNumber(UCUtils) doubleToString:] in libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) "std::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_ostringstream()", referenced from: +[NSNumber(UCUtils) doubleToString:] in libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation) Setting it back to anything between 5.0 to 6.1 links and executes successfully.
Local fix
In the Build Phases tab, remove the libraries libstdc++.sylib and the libc++.dynlib, and add libstdc++.6.dylib instead
Problem summary
**************************************************************** * USERS AFFECTED: * * iOS developers creating hybrid or native applications using * * IBM Worklight 6.1, who use would like to use iOS 7 as the * * Deployment Target * **************************************************************** * PROBLEM DESCRIPTION: * * Setting the iOS Deployment Target to 7 causes the following * * link * * errors: * * * * Undefined symbols for architecture i386: * * "std::string::c_str() const", referenced from: * * +[NSNumber(UCUtils) doubleToString:] in * * libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) * * "std::basic_ostringstream<char, std::char_traits<char>, * * std::allocator<char> >::str() const", referenced from: * * +[NSNumber(UCUtils) doubleToString:] in * * libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) * * "std::ostream::operator<<(double)", referenced from: * * +[NSNumber(UCUtils) doubleToString:] in * * libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) * * "std::basic_string<char, std::char_traits<char>, * * std::allocator<char> >::~basic_string()", referenced from: * * +[NSNumber(UCUtils) doubleToString:] in * * libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) * * "std::basic_ostringstream<char, std::char_traits<char>, * * std::allocator<char> * * >::basic_ostringstream(std::_Ios_Openmode)", referenced * * from: * * +[NSNumber(UCUtils) doubleToString:] in * * libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) * * "std::basic_ostringstream<char, std::char_traits<char>, * * std::allocator<char> >::~basic_ostringstream()", referenced * * from: * * +[NSNumber(UCUtils) doubleToString:] in * * libWorklightStaticLibProjectNative.a(NSNumber-UCUtils.o) * * ld: symbol(s) not found for architecture i386 * * clang: error: linker command failed with exit code 1 (use -v * * to * * see invocation) * * * * Setting it back to anything between 5.0 to 6.1 links and * * executes successfully. * **************************************************************** * RECOMMENDATION: * * - * ****************************************************************
Problem conclusion
For hybrid applications, the project template was changed to use the library libstdc++.6.dylib instead of libstdc++.sylib and the libc++.dynlib. For native applications, the documentation on creating a new native project has been updated accordingly. This fix is currently targeted for inclusion in fixpack 6.1.0.2.
Temporary fix
Comments
APAR Information
APAR number
PI09029
Reported component name
WORKLIGHT CONSU
Reported component ID
5725I4301
Reported release
610
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2014-01-07
Closed date
2014-02-01
Last modified date
2014-02-01
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
WORKLIGHT CONSU
Fixed component ID
5725I4301
Applicable component levels
R610 PSY
UP
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSZH4A","label":"IBM Worklight"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"610","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
15 October 2021