introlab / ros_for_ios

How to build the Robot Operating System for the iOS platform.
67 stars 15 forks source link

Demo app build fail in IOS device #5

Open KwanghoLee opened 11 years ago

KwanghoLee commented 11 years ago

succes : build in simulator6.1 fail : build in IOS device

====error log ======= Undefined symbols for architecture armv7: "_libiconv", referenced from: _apr_xlate_open in log4cxx(xlate.o) _apr_xlate_conv_buffer in log4cxx(xlate.o) "_libiconv_open", referenced from: _apr_xlate_open in log4cxx(xlate.o) "_libiconv_close", referenced from: _apr_xlate_open in log4cxx(xlate.o) _apr_xlate_cleanup in log4cxx(xlate.o) ld: symbol(s) not found for architecture armv7

clang: error: linker command failed with exit code 1 (use -v to see invocation)

how to build by IOS device??

Please help.....

thankU

Ronan0912 commented 11 years ago

Hi,

It's a problem with the iconv library which provides an iconv() implementation for encoding conversions. This library is used by log4cxx and must be linked in a ros_for_ios project. In the demo_app Xcode project, the dynamic library "libiconv.2.4.0.dylib" is linked but it's possible that your system doesn't have the library for the armv7 (or is at a different location...). If it is the case, this library should be in red in the Xcode explorer.

You can try to add by yourself the iconv library :

Keep me informed,

Ronan

KwanghoLee commented 11 years ago

thank you for your answer I already add 'libiconv.2.4.0.dylib', But build failed. Simulater is working well, But device is not working. What is diffrent???

Ronan0912 commented 11 years ago

It's not the same libraries between the simulator and an iOS device. The simulator is an i386 platform while the iOS device can be armv6, armv7 or armvs7 platforms.

What is your model of iOS device?

Ronan

KwanghoLee commented 11 years ago

Framework was not made only by source uploaded on below site. Site Address : https://github.com/introlab/ros_for_ios

So, After installed OS X(MacPorts) for ROS in My System, I compiled Source that you uploaded on githu.com Site. Compile Result for Framework is Success. However, Compile Link Error is occurred on iPhone4(iOS 6.3.1) when Demo_App is executed

I didin’t fixed the Build Setting Information of Demo_App for Framework Compile

Below is My Build Setting for Demo App

I want to know what point must be fixed or added for Link Error

Ronan0912 commented 11 years ago

Ok.

I tried with an iPad 3 (A5X) and an iPhone 5 (A6) and the demo_app compiles without any problem. I don't understand why you installed ROS on OSX in order to execute the ros_for_ios scripts.

I suggest you to start a new clean configuration.

You can also send us the Xcode build log file if there is still the linking problem.

Ronan

KwanghoLee commented 11 years ago

As your comment in Site, I performed below Procedure. • remove everything concerning ros_for_ios and ROS on OSX (at least delete the path). • git clone -b master https://github.com/introlab/ros_for_ios.git • run "sh build.sh" • Try to compile the demo_app for the simulator and for your iPhone 4 However, Compile Error is still occurred. I will attach a error log file and Screen Shot Image.

I think My Computer Device’s Configuration is not matched with yours for Framework Compile.

Please Check Error Log (You can download : http://211.55.75.193:8080/log.txt) and Screen Shot Image. After checking, Please add your comment.

Thank you. 2013-05-23 10 57 12 2

Ronan0912 commented 11 years ago

The log file was very useful. I figured out that you don't have a CMake installation on your system : "cmake: command not found" (I didn't mention that point in the README ... ;-( ). Without this tool, nothing was compiled (the framework contains only the headers files). You can install CMake on OSX via this link : http://www.cmake.org/cmake/resources/software.html

Ronan