Will Dicharry wrote:
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

Oops, needed to set the CXX version too. It's working now. I'll file the bug request. Thanks again for your help!

-- 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