Problem building for iOS targets

I’m attempting to build an app on my Mac, but even though it all runs
fine in Phoney, etc., I get an error when I attempt to multi-build to
any of the iOS platforms:

[exec] /usr/bin/clang++ -arch armv7 -lobjc -isysroot

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/D
eveloper/SDKs/iPhoneOS6.0.sdk -framework AddressBook -framework
AddressBookUI -framework AudioToolbox -framework CFNetwork -framework
CoreAudio -framework CoreFoundation -framework CoreGraphics -framework
CoreLocation -framework Foundation -framework MediaPlayer -framework
OpenAL -framework OpenGLES -framework QuartzCore -framework Security
-framework SystemConfiguration -framework UIKit -weak_framework
MessageUI -lz
-L"/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platfor
m/Developer/SDKs/iPhoneOS6.0.sdk/usr/lib"
-L"/Users/dave/softwareag/MobileDesigner/Platforms/iOS/lib"
-lsdk6nativeui -lsdk6kxml2 -lsdk6webservices -lsdk6nokiaui
-lsdk6location -lsdk6sensors -lsdk6opengles11 -lsdk6midp20 -lsdk6cldc11
-lsdk6png
-F"/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platfor
m/Developer/SDKs/iPhoneOS6.0.sdk/System/Library/Frameworks" -o
build/armv7/UMGDemoiPhoneEN build/armv7/StubInfo.o
build/armv7/staticproxy.o build/armv7/Parameters.o
build/armv7/HttpConnectionHandler.o
build/armv7/MessageConnectionHandler.o build/armv7/Application.o
build/armv7/CanvasBase.o build/armv7/CanvasCore.o
build/armv7/CanvasDimensions.o build/armv7/CanvasInterrupts.o
build/armv7/CanvasKeysAndTouch.o build/armv7/CanvasNativeUI.o
build/armv7/CanvasSoftkeys.o build/armv7/CanvasThreading.o
build/armv7/AudioHandler.o build/armv7/CameraHandler.o
build/armv7/ImageBase.o build/armv7/ImageHandler.o
build/armv7/PngParser.o build/armv7/TextHandler.o
build/armv7/Serializable.o build/armv7/Serializer.o
build/armv7/RecordStoreHandler.o build/armv7/ResourceDataTypes.o
build/armv7/ResourceHandler.o build/armv7/Maths.o
build/armv7/PlatformRequest.o build/armv7/MyApplication.o
build/armv7/MyCanvas.o build/armv7/DataCache.o
build/armv7/ServerConnection.o build/armv7/VirtualServer.o

    [exec] Undefined symbols for architecture armv7:

    [exec]

“javax::wireless::messaging::TextMessage::MDESclassTypeID”, referenced
from:

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::sendM
essage(JavaPtr<java::lang::String, true>, int,
JavaPtr<java::lang::String, true>, JavaPtr<JArray, true>)
in MessageConnectionHandler.o

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::getIn
formationFromMessageConnection(JavaPtr<javax::wireless::messaging::Messa
geConnection, true>) in MessageConnectionHandler.o

    [exec]

“javax::wireless::messaging::BinaryMessage::MDESclassTypeID”, referenced
from:

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::sendM
essage(JavaPtr<java::lang::String, true>, int,
JavaPtr<java::lang::String, true>, JavaPtr<JArray, true>)
in MessageConnectionHandler.o

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::getIn
formationFromMessageConnection(JavaPtr<javax::wireless::messaging::Messa
geConnection, true>) in MessageConnectionHandler.o

    [exec]

“javax::wireless::messaging::MessageListener::MDESclassTypeID”,
referenced from:

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::openM
essageListener() in MessageConnectionHandler.o

    [exec]

“javax::wireless::messaging::MessageConnection::TEXT_MESSAGE”,
referenced from:

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::sendM
essage(JavaPtr<java::lang::String, true>, int,
JavaPtr<java::lang::String, true>, JavaPtr<JArray, true>)
in MessageConnectionHandler.o

    [exec]

“javax::wireless::messaging::MessageConnection::BINARY_MESSAGE”,
referenced from:

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::sendM
essage(JavaPtr<java::lang::String, true>, int,
JavaPtr<java::lang::String, true>, JavaPtr<JArray, true>)
in MessageConnectionHandler.o

    [exec]

“javax::wireless::messaging::MessageConnection::MDESclassTypeID”,
referenced from:

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::sendM
essage(JavaPtr<java::lang::String, true>, int,
JavaPtr<java::lang::String, true>, JavaPtr<JArray, true>)
in MessageConnectionHandler.o

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::check
ForMessageConnections() in MessageConnectionHandler.o

    [exec]

com::softwareag::mobile::runtime::comms::MessageConnectionHandler::openM
essageListener() in MessageConnectionHandler.o

    [exec] ld: symbol(s) not found for architecture armv7

    [exec] clang: error: linker command failed with exit code 1 (use

-v to see invocation)

    [exec] make: *** [build/armv7/UMGDemoiPhoneEN] Error 1

Has anyone seen this before, or have any idea what the issue might be?

Dave

winmail.dat (7.66 KB)

Hi Dave,

On the one hand, I haven’t done much with the Messaging code, but at a
glance I don’t see the sdk6wma205 library linked on the exec line. If
you are using a custom implementation of
javax.wireless.messaging.TextMessage, make sure that it has run through
the cross-compiler, as that should set you up with the MDESclassTypeID
correctly. Otherwise, I would suggest looking in to why that library
isn’t being linked, as I believe it should contain the class
implementation/definition you are looking for.

Spencer

winmail.dat (18.6 KB)

Hi Dave,

Sounds like your project isn’t linking the wma libraries which are needed when the device profile references the following:

you probably need to ensure that the following is set to true (or more likely isn’t set to false, in your project):

Cheers,
Matt