Results 1 to 3 of 3

Thread: compile error on hpux itanium (11.23B) with aCC 06.15

  1. #1
    Join Date
    Mar 2007
    Posts
    10
    Thanks
    1
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default compile error on hpux itanium (11.23B) with aCC 06.15

    Hello,
    I'm trying to compile qt 4.3.3 (commercial version) on hpux itanium (11.23B) with aCC 06.15 but I have a trouble. I succeeded configuring the whole code and compilation of moc, rcc, uic (under src/tools). When I try to make corelib (under src/corelib) there are some compile errors about inline functions.

    Here's the text.
    ---------------------------------
    Qt Code:
    1. "../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h", line 222: error #2020:
    2. identifier "q_atomic_test_and_set_acquire_int" is undefined
    3. if (q_atomic_test_and_set_acquire_int(ptr, originalValue, originalValue + value))
    4. ^
    5.  
    6. "../../include/QtCore/../../src/corelib/arch/qatomic_ia64.h", line 233: error #2020:
    7. identifier "q_atomic_test_and_set_release_int" is undefined
    8. if (q_atomic_test_and_set_release_int(ptr, originalValue, originalValue + value))
    9. ^
    10.  
    11. "../../include/QtCore/../../src/corelib/thread/qatomic.h", line 100: error #2020:
    12. identifier "q_atomic_test_and_set_acquire_int" is undefined
    13. { return q_atomic_test_and_set_acquire_int(&value, expected, newval) != 0; }
    14. ^
    15.  
    16. "../../include/QtCore/../../src/corelib/thread/qatomic.h", line 103: error #2020:
    17. identifier "q_atomic_test_and_set_release_int" is undefined
    18. { return q_atomic_test_and_set_release_int(&value, expected, newval) != 0; }
    19. ^
    20.  
    21. 4 errors detected in the compilation of "global/qglobal.cpp".
    22. *** Error exit code 2
    To copy to clipboard, switch view to plain text mode 

    ---------------

    I'm sure that these functions are defined in the same file where the errors occur. I guess there's no problem in those function calls. For example, implementation of q_atomic_test_and_set_acquire_int is :

    Qt Code:
    1. inline q_atomic_test_and_set_acquire_int(volatile int *ptr, int expected, int newval)
    2. {
    3. return static_cast<int>(_InterlockedCompareExchange_acq(reinterpret_cast<volatile uint*>(ptr), newval, expected)) == expected; }
    To copy to clipboard, switch view to plain text mode 

    And this function is called from :

    Qt Code:
    1. inline int q_atomic_fetch_and_add_acquire_int(volatile int *ptr, int value)
    2. {
    3. register int originalValue;
    4. for( ; ; )
    5. {
    6. originalValue = *ptr;
    7. if( q_atomic_test_and_set_acquire_int(ptr, originalValue, originalValue + value))
    8. break;
    9. }
    10. return originalValue;
    11. }
    To copy to clipboard, switch view to plain text mode 

    I don't know how to fix these compile errors. Please give me an advice.

    thanks in advance.


    Intaek.
    Last edited by Intaek Lim; 27th December 2007 at 07:49. Reason: to change thead title.

  2. #2
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    5,372
    Thanks
    28
    Thanked 976 Times in 912 Posts
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: compile error on hpux itanium (11.23B) with aCC 06.15

    Are you sure that Qt supports this compiler on your platform?

  3. #3
    Join Date
    Feb 2006
    Location
    Romania
    Posts
    2,744
    Thanks
    8
    Thanked 541 Times in 521 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: compile error on hpux itanium (11.23B) with aCC 06.15

    Quote Originally Posted by jacek View Post
    Are you sure that Qt supports this compiler on your platform?
    Yes, it is supported.
    He should have used hpuxi-acc-32 or hpuxi-acc-64 as make spec, depending on the processor/hpux version.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.