[Ves] Build for armv7s and arm64

Casey Goodlett casey.goodlett at kitware.com
Wed Oct 30 12:07:01 EDT 2013


Jon,

I have no tried arm64 so I do not know where the problem is.  A couple of
thoughts to try:

You might try increasing the iphoneos-version-min to 7.0 maybe thats needed
to support arm64.  This stackoverflow entry
http://stackoverflow.com/questions/18913906/xcode-5-and-ios-7-architecture-and-valid-architectures
seems
to indicate you need to set a minimum of 6.0 for arm64 support.

If you can disable libarchive and libcurl for the arm64 test we could
eliminate those as variables.

Try a serial build "make -j1" so that the error is the last output.

Let us know what you find out


On Wed, Oct 30, 2013 at 11:59 AM, Jon Chmura <jon.chmura at me.com> wrote:

> Casey,
>
> Thanks for the quick reply.  I wasn’t able to build with arm64.  I checked
> out a new copy of VES.  Modified to add arm64 (see git diff)
>
> diff --git a/CMake/toolchains/toolchain-ios-device.cmake
> b/CMake/toolchains/toolchain-ios-device
> index af6aedf..05c6dd5 100644
> --- a/CMake/toolchains/toolchain-ios-device.cmake
> +++ b/CMake/toolchains/toolchain-ios-device.cmake
> @@ -16,7 +16,7 @@ find_program(CMAKE_CXX_COMPILER NAME g++
>    /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/
>    NO_DEFAULT_PATH)
>
>
> -set(CMAKE_OSX_ARCHITECTURES "armv7;armv7s")
> +set(CMAKE_OSX_ARCHITECTURES "armv7;armv7s;arm64")
>  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -miphoneos-version-min=5.0
> -fvisibility=hidden -fvisibi
>  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -miphoneos-version-min=5.0
> -fvisibility=hidden -fvisibility
>
> The build failed but I didn’t see any useful error messages.  Maybe an
> issue with libarchive...
>
> [ 40%] Building C object
> libarchive/CMakeFiles/archive_static.dir/archive_read_disk_entry_from_file.c.o
> */Users/jonc/Developer/VES/Apps/iOS/build/CMakeExternals/Source/libarchive/libarchive/archive_read_disk_entry_from_file.c:325:13:
> **warning: *
> *      'tempnam' is deprecated: This function is provided for
> compatibility reasons only. Due to*
> *      security concerns inherent in the design of tempnam(3), it is
> highly recommended that you use*
> *      mkstemp(3) instead. [-Wdeprecated-declarations]*
>         tempfile = tempnam(tempdir, "tar.md.");
> *                   ^*
> */Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk/usr/include/stdio.h:389:7:
> **note: *
>       'tempnam' declared here
> char    *tempnam(const char *, const char *) __DARWIN_ALIAS(tempnam);
> *         ^*
> [ 57%] 1 warning generated.
>
> -- Installing:
> /Users/jonc/Developer/VES/Apps/iOS/build/CMakeExternals/Install/libarchive-ios-simulator/lib/LibArchive/cmake/LibArchiveTargets-release.cmake
> [ 52%] *Completed 'libarchive-ios-simulator'*
> [ 52%] Built target libarchive-ios-simulator
> make: *** [all] Error 2
>
>  Jon Chmura
> jon.chmura at me.com
>
>
>
>
> On Oct 30, 2013, at 11:17 AM, Casey Goodlett <casey.goodlett at kitware.com>
> wrote:
>
> Jon,
>
> You should be able to edit the toolchain file and add arm64 to the arch
> list (currently should be armv7;armv7s).  I have not tried to build for
> arm64 so there may be unexpected problems.  I typically modify my xcode
> project to build only armv7 and armv7s.
>
> Can you let us know if you are able to get the project to build with arm64
> support?
>
> Thanks
>
>
> On Wed, Oct 30, 2013 at 11:07 AM, Jon Chmura <jon.chmura at me.com> wrote:
>
>> Is there any way to build the iOS frameworks so that they support armv7
>> and arm64.  I realize that if the project settings are set up as follows it
>> will build even for devices that are armv7s and arm64.
>>
>> { 'ARCHS' => 'ARCHS_STANDARD’,
>>  'VALID_ARCHS' => 'armv7’,
>> 'ONLY_ACTIVE_ARCH' => 'NO’,
>>  'CLANG_CXX_LANGUAGE_STANDARD' => 'gnu++98’,
>> 'CLANG_CXX_LIBRARY' => 'libstdc++' }
>>
>> This requirement causes build issues when using an Xcode workspace (i.e..
>> multiple Xcode projects used to build an app).  I’m looking for a
>> workaround but it be preferable if I could use the standard Xcode settings
>>
>> 'ARCHS' => 'ARCHS_STANDARD_INCLUDING_64_BIT’,
>>  'VALID_ARCHS' => armv7 armv7s arm64,
>> 'ONLY_ACTIVE_ARCH' => ‘YES’,
>>
>>  Jon Chmura
>> jon.chmura at me.com
>>
>>
>>
>>
>>
>> _______________________________________________
>> Ves mailing list
>> Ves at public.kitware.com
>> http://public.kitware.com/cgi-bin/mailman/listinfo/ves
>>
>>
>
>
> --
> Casey B. Goodlett, Ph.D.
> R&D Engineer
> Kitware, Inc. - North Carolina Office
> http://www.kitware.com
> (919) 969-6990 x310
>
>
>


-- 
Casey B. Goodlett, Ph.D.
R&D Engineer
Kitware, Inc. - North Carolina Office
http://www.kitware.com
(919) 969-6990 x310
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/ves/attachments/20131030/a05dca43/attachment-0001.html>


More information about the Ves mailing list