Brad King wrote:
Will Dicharry wrote:
Hi All,

This was asked a while ago at
http://www.cmake.org/pipermail/cmake/2009-January/026318.html, but it
doesn't look like there was a response to that question.

I have the same problem:

on 64 bit AIX, ar must be invoked with a "-X 64" flag.  Is there a way
to tell CMake to do this?

Please file a feature request to support -q64 on AIX:

  http://www.cmake.org/Bug

and send me the issue number.

Here are two work-arounds:

- Set the OBJECT_MODE env var

- Add this code (but only for the one platform) to CMakeLists.txt:

  foreach(step CREATE APPEND FINISH)
    string(REPLACE "<CMAKE_AR>" "<CMAKE_AR> -X 64"
      CMAKE_C_ARCHIVE_${step} "${CMAKE_C_ARCHIVE_${step}}")
  endforeach()

Thanks for your response, I'll open the feature request. I tried the second work around (I can't get all of my users to use that environment variable from the first case). Unfortunately it doesn't seem to be working:

From CMake output:
-- The C compiler identification is VisualAge
-- The CXX compiler identification is VisualAge
-- Check for working C compiler: /usr/bin/mpcc
-- Check for working C compiler: /usr/bin/mpcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/mpCC
-- Check for working CXX compiler: /usr/bin/mpCC -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- CMAKE_C_ARCHIVE_CREATE = <CMAKE_AR> -X 64 cr <TARGET> <LINK_FLAGS> <OBJECTS> -- CMAKE_C_ARCHIVE_APPEND = <CMAKE_AR> -X 64 r <TARGET> <LINK_FLAGS> <OBJECTS>
-- CMAKE_C_ARCHIVE_FINISH = <CMAKE_RANLIB> <TARGET>
<snip>

Then, during make VERBOSE=1:
Linking CXX static library libHpmi.a
cd /scr/dicharry/ICEPIC/BuildArea/hpmi/src/hpmi && /site/PET/pkgs/cmake-2.6.4/bin/cmake -P CMakeFiles/Hpmi.dir/cmake_clean_target.cmake cd /scr/dicharry/ICEPIC/BuildArea/hpmi/src/hpmi && /site/PET/pkgs/cmake-2.6.4/bin/cmake -E cmake_link_script CMakeFiles/Hpmi.dir/link.txt --verbose=1 /usr/bin/ar cr libHpmi.a CMakeFiles/Hpmi.dir/Index.cpp.o CMakeFiles/Hpmi.dir/logger.c.o CMakeFiles/Hpmi.dir/power.c.o CMakeFiles/Hpmi.dir/segmented_vector.cpp.o CMakeFiles/Hpmi.dir/Singleton.cpp.o CMakeFiles/Hpmi.dir/Stack.cpp.o CMakeFiles/Hpmi.dir/Timer.cpp.o ar: 0707-126 CMakeFiles/Hpmi.dir/Index.cpp.o is not valid with the current object file mode.
        Use the -X option to specify the desired object mode.
ar: 0707-126 CMakeFiles/Hpmi.dir/logger.c.o is not valid with the current object file mode.
        Use the -X option to specify the desired object mode.
ar: 0707-126 CMakeFiles/Hpmi.dir/power.c.o is not valid with the current object file mode.
        Use the -X option to specify the desired object mode.
ar: 0707-126 CMakeFiles/Hpmi.dir/segmented_vector.cpp.o is not valid with the current object file mode.
        Use the -X option to specify the desired object mode.
ar: 0707-126 CMakeFiles/Hpmi.dir/Singleton.cpp.o is not valid with the current object file mode.
        Use the -X option to specify the desired object mode.
ar: 0707-126 CMakeFiles/Hpmi.dir/Stack.cpp.o is not valid with the current object file mode.
        Use the -X option to specify the desired object mode.
ar: 0707-126 CMakeFiles/Hpmi.dir/Timer.cpp.o is not valid with the current object file mode.
        Use the -X option to specify the desired object mode.

Thanks again,
Will


-Brad



--
Will Dicharry
Software Developer
Stellar Science Ltd Co

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

_______________________________________________
Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to