CC -mt -g -xarch=amd64 -DSUN_CC_HAS_PVFC_BUG
-I/export/home/adam/ace.5.4.cc.64 -I/export/home/adam/ace.5.4.cc.64/TAO
-DACE_HAS_EXCEPTIONS -D__ACE_INLINE__
-I/export/home/adam/ace.5.4.cc.64/TAO/orbsvcs/
-I/export/home/adam/ace.5.4.cc.64/TAO/orbsvcs/orbsvcs
-DTAO_RTCOSSCHEDULING_BUILD_DLL -c -KPIC -o
.shobj/RTCosScheduling_PCP_Manager.o
RTCosScheduling/RTCosScheduling_PCP_Manager.cpp
"RTCosScheduling/RTCosScheduling_PCP_Manager.cpp", line 38: Error:
Cannot cast from TAO::CosSchedulingLockNode* to int.
"RTCosScheduling/RTCosScheduling_PCP_Manager.cpp", line 53: Error:
Cannot cast from TAO::CosSchedulingLockNode* to int.
"RTCosScheduling/RTCosScheduling_PCP_Manager.cpp", line 54: Error:
Cannot cast from TAO::CosSchedulingLockNode* to int.
3 Error(s) detected.
gmake[5]: *** [.shobj/RTCosScheduling_PCP_Manager.o] Error 3
gmake[5]: Leaving directory
`/export/home/adam/ace.5.4.cc.64/TAO/orbsvcs/orbsvcs'
------------------------------------------------------------------------------------------------------
my changes is :
+++++++++ platform_macros.GNU (new) ++++++++++++
include $(ACE_ROOT)/include/makeinclude/platform_sunos5_sunc++.GNU
CCFLAGS += -xarch=amd64
SOFLAGS += -xarch=amd64
LDFLAGS += -xarch=amd64 -L/usr/lib/amd64 -L/lib/amd64
-L/opt/SUNWspro/lib/amd64
+++++++++++ config.h (new) +++++++++++++++
#ifndef ACE_CONFIG_H
#include "ace/config-sunos5.9.h"
#define ERRMAX 256 /* Needed for following define */
#define ACE_LACKS_SYS_NERR
#define _LP64
#define ACE_SIZEOF_LONG 8 /* Needed to circumvent compiler bug #4294969
*/
#endif /* ACE_CONFIG_H */
++++++++++++ platform_sunos5_sunc++.GNU (changed, marked two lines)
++++++++++
183 # Turn on the proper flags for explicit template instantiation.
184 #
185 ifeq ($(templates),explicit)
186 ifeq ($(TEMPLATES_FLAG),) # Turn on flags if none is
speficied.
187 # marked TODO
188 # TEMPLATES_FLAG=-instances=explicit
189 endif
190 #marked TODO
191 # CPPFLAGS += -DACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION
192 endif
193
Anyone has anyidea about it?
Please upgrade to ACE+TAO x.4.8, which you can download from
http://deuce.doc.wustl.edu/Download.html
under the heading "latest beta kit". The DOC groups at Washington
University, UC Irvine, and Vanderbilt University only provide "best
effort" support for non-sponsors for the latest beta kit, as described
in
http://www.cs.wustl.edu/~schmidt/ACE_wrappers/docs/ACE-bug-process.html
Thus, if you need more "predictable" help, I recommend that you
check out
http://www.cs.wustl.edu/~schmidt/commercial-support.html
for a list of companies that will provide you with ACE+TAO commercial
support.
Thanks,
Doug
--
Dr. Douglas C. Schmidt Professor and Associate Chair
Electrical Engineering and Computer Science TEL: (615) 343-8197
Institute for Software Integrated Systems WEB: www.dre.vanderbilt.edu/~schmidt
Vanderbilt University, Nashville TN, 37203 NET: d.sc...@vanderbilt.edu
The 5.4 version is not really ready for 64bit support. The x.4.8 version we
released this week is much better fit for that job.
Regards,
Johnny Willemsen
Remedy IT
Postbus 101
2650 AC Berkel en Rodenrijs
The Netherlands
www.theaceorb.nl / www.remedy.nl
<zhang_...@hotmail.com> wrote in message
news:<1135249573.4...@z14g2000cwz.googlegroups.com>...
Thanks a lot for your information. I will try the 5.4.8 later since we
used version 5.4 in linux.
Hi Johnny,
As you said, 5.4 is not ready for 64-bit. But when I compiled into
32-bit, it also failed.
Compile ACE 32-bit is OK, but when I compile TAO 32-bit, it failed with
the following message:
------------------------------------------------------------------------------------------------------------------------
CC -mt -g -DSUN_CC_HAS_PVFC_BUG -I/export/home/adam/ace.5.4.cc.32
-I/export/home/adam/ace.5.4.cc.32/TAO -DACE_HAS_EXCEPTIONS
-D__ACE_INLINE__ -I/export/home/adam/ace.5.4.cc.32/TAO
-I/export/home/adam/ace.5.4.cc.32/TAO/orbsvcs -DTAO_TRADING_BUILD_DLL
-c -KPIC -o .shobj/Trader.o Trader/Trader.cpp
"/export/home/adam/ace.5.4.cc.32/ace/OS_NS_sys_utsname.inl", line 28:
Error: The name uname(utsname*) is unusable in ACE_OS::uname(utsname*).
"Trader/Trader_T.cpp", line 55: Where: While instantiating
"TAO_Admin<ACE_Thread_Mutex,
ACE_RW_Thread_Mutex>::TAO_Admin(TAO_Trader<ACE_Thread_Mutex,
ACE_RW_Thread_Mutex>&)".
"Trader/Trader_T.cpp", line 55: Where: Instantiated from
TAO_Trader<ACE_Thread_Mutex,
ACE_RW_Thread_Mutex>::TAO_Trader(TAO_Trader_Base::Trader_Components).
"Trader/Trader.cpp", line 625: Where: Instantiated from
non-template code.
1 Error(s) detected.
gmake[5]: *** [.shobj/Trader.o] Error 1
gmake[5]: Leaving directory
`/export/home/adam/ace.5.4.cc.32/TAO/orbsvcs/orbsvcs'
gmake[4]: *** [Makefile.CosTrading-all] Error 2
gmake[4]: Leaving directory
`/export/home/adam/ace.5.4.cc.32/TAO/orbsvcs/orbsvcs'
gmake[3]: *** [orbsvcs.subdir] Error 2
gmake[3]: Leaving directory
`/export/home/adam/ace.5.4.cc.32/TAO/orbsvcs'
gmake[2]: *** [all.nested] Error 2
gmake[2]: Leaving directory
`/export/home/adam/ace.5.4.cc.32/TAO/orbsvcs'
gmake[1]: *** [orbsvcs.subdir] Error 2
gmake[1]: Leaving directory `/export/home/adam/ace.5.4.cc.32/TAO'
------------------------------------------------------------------------------------------------------------------------
Do you have any idea?
Thanks,
Adam
After some minor changes, I have build this version succefully in
32-bit on Solaris 10 (free) + Sun Studion 10 (free) and pass the tests
in the TAO/tests directory.
Great ACE/TAO, and this version is very stable I think.
I try 5.4.8, I can compile but failed to pass the tests.
I find there is some changes on the 5.4.1, the BFO version. It seems
it could supporting 64-bit OS, right?
>> After some minor changes, I have build this version succefully in
>> 32-bit on Solaris 10 (free) + Sun Studion 10 (free) and pass the tests
>> in the TAO/tests directory.
>> Great ACE/TAO, and this version is very stable I think.
>> I try 5.4.8, I can compile but failed to pass the tests.
To ensure that we have proper version/platform/compiler information,
please make sure you fill out the appropriate problem report form
(PRF), which is in
$ACE_ROOT/PROBLEM-REPORT-FORM
$TAO_ROOT/PROBLEM-REPORT-FORM
or in
$ACE_ROOT/BUG-REPORT-FORM
$TAO_ROOT/BUG-REPORT-FORM
in older versions of ACE+TAO. Make sure to include this information
when asking any questions about ACE+TAO since otherwise we have to
"guess" what version/platform/compiler/options you've using, which is
error-prone and slows down our responsiveness.
>> I find there is some changes on the 5.4.1, the BFO version. It
>> seems it could supporting 64-bit OS, right?
I strongly recommend you avoid using ACE 5.4.1 and instead help get
ACE 5.4.8 working on your OS/compiler platform. The only reason to
use ACE 5.4.1 at this point is if you want to avail yourself of the
companies that provide commercial support for ACE 5.4.x.
Thank you very much for your guide.
I donwload the 5.4.8 version. The 32-bit and 64-bicompilation for
ACE+TAO are all built completely without error message.
But when I execute the TAO/tests/Param_Test/run_test.pl, the test all
fail with client core dump either for 32-bit or 64-bit TAO.
See Error Message and Core dump below:
-----------------------------
florida:~/ace.5.4.8.cc.64/TAO/tests/Param_Test$./run_test.pl
==== Testing short === wait....
ERROR: <client> exited with coredump from signal 11 : SEGV
^C
florida:~/ace.5.4.8.cc.64/TAO/tests/Param_Test$dbx client core
For information about new features see `help changes'
To remove this message, put `dbxenv suppress_startup_message 7.4' in
your .dbxrc
Reading client
core file header read successfully
Reading ld.so.1
Reading libTAO_DynamicInterface.so.1.4.8
Reading libTAO_Messaging.so.1.4.8
Reading libTAO_PI.so.1.4.8
Reading libTAO_CodecFactory.so.1.4.8
Reading libTAO_Valuetype.so.1.4.8
Reading libTAO_PortableServer.so.1.4.8
Reading libTAO_AnyTypeCode.so.1.4.8
Reading libTAO.so.1.4.8
Reading libACE.so.5.4.8
Reading libsocket.so.1
Reading libdl.so.1
Reading libnsl.so.1
Reading libgen.so.1
Reading librt.so.1
Reading libadm.so.1
Reading libCstd.so.1
Reading libCrun.so.1
Reading libm.so.2
Reading libthread.so.1
Reading libc.so.1
Reading libaio.so.1
Reading libmd5.so.1
t@null (l@1) program terminated by signal SEGV (no mapping at the fault
address)
0xfffffd7ffe7d3a60: mutex_lock_impl+0x0010: movzbl
0x0000000000000004(%r9),%r8d
Current function is ACE_OS::mutex_lock
2199 int, -1);
(dbx) where
[1] mutex_lock_impl(0xfffffd7fff032000, 0x0, 0x0, 0x0,
0xfffffd7fffdfead0, 0x10), at 0xfffffd7ffe7d3a60
[2] pthread_mutex_lock(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffe7d3b8b
=>[3] ACE_OS::mutex_lock(m = 0x10), line 2199 in "OS_NS_Thread.cpp"
[4] ACE_OS::thread_mutex_lock(m = 0x10), line 3538 in
"OS_NS_Thread.inl"
[5] ACE_OS::recursive_mutex_lock(m = 0x10), line 794 in
"OS_NS_Thread.inl"
[6] ACE_Recursive_Thread_Mutex::acquire(this = 0x10), line 120 in
"Recursive_Thread_Mutex.cpp"
[7] ACE_Guard<ACE_Recursive_Thread_Mutex>::acquire(this =
0xfffffd7fffdfead0), line 12 in "Guard_T.inl"
[8] ACE_Guard<ACE_Recursive_Thread_Mutex>::ACE_Guard(this =
0xfffffd7fffdfead0, l = CLASS), line 38 in "Guard_T.inl"
[9] ACE_Service_Repository::find(this = (nil), name =
0xfffffd7ffe580bf8 "TAO_Codeset", srp = (nil), ignore_suspended = 0),
line 250 in "Service_Repository.cpp"
[10] ACE_Service_Config::process_directive(ssd = CLASS, force_replace
= 0), line 579 in "Service_Config.cpp"
[11] TAO_Codeset_Manager_Factory_Base::initialize(), line 33 in
"Codeset_Manager_Factory_Base.cpp"
[12] __SLIP.INIT_A(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffe427766
[13] __STATIC_CONSTRUCTOR(), line 41 in
"Codeset_Manager_Factory_Base.cpp"
[14] __cplus_fini_at_exit(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffe556052
[15] call_init(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3d267a
[16] is_dep_init(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3d23d2
[17] elf_bndr(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3dd9d0
[18] _elf_rtbndr(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3c72d0
[19] 0xfffffd7fff0909e8(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7fff0909e7
[20] ACE_Recursive_Thread_Mutex::acquire(this = 0x79e468), line 120
in "Recursive_Thread_Mutex.cpp"
[21] ACE_Guard<ACE_Recursive_Thread_Mutex>::acquire(this =
0xfffffd7fffdff060), line 12 in "Guard_T.inl"
[22] ACE_Guard<ACE_Recursive_Thread_Mutex>::ACE_Guard(this =
0xfffffd7fffdff060, l = CLASS), line 38 in "Guard_T.inl"
[23] ACE_Service_Repository::instance(size = 1024), line 56 in
"Service_Repository.cpp"
[24] ACE_Service_Config::process_directive(ssd = CLASS, force_replace
= 0), line 579 in "Service_Config.cpp"
[25] TAO_POA_Initializer::init(), line 55 in "PortableServer.cpp"
[26] __SLIP.INIT_A(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffeddbb76
[27] __STATIC_CONSTRUCTOR(), line 36 in "PortableServer.h"
[28] __cplus_fini_at_exit(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffee93aba
[29] call_init(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3d267a
[30] is_dep_init(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3d23d2
[31] elf_bndr(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3dd9d0
[32] _elf_rtbndr(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3c72d0
[33] 0xfffffd7fff0909e8(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7fff0909e7
[34] ACE_Recursive_Thread_Mutex::acquire(this = 0x79e468), line 120
in "Recursive_Thread_Mutex.cpp"
[35] ACE_Guard<ACE_Recursive_Thread_Mutex>::acquire(this =
0xfffffd7fffdff610), line 12 in "Guard_T.inl"
[36] ACE_Guard<ACE_Recursive_Thread_Mutex>::ACE_Guard(this =
0xfffffd7fffdff610, l = CLASS), line 38 in "Guard_T.inl"
[37] ACE_Allocator::instance(), line 28 in "Malloc_Allocator.cpp"
[38]
ACE_Unbounded_Set<ACE_Static_Svc_Descriptor*>::ACE_Unbounded_Set(this =
0x7a2f10, alloc = (nil)), line 141 in "Unbounded_Set.cpp"
[39] ACE_Service_Config::static_svcs(), line 87 in
"Service_Config.cpp"
[40]
ACE_Static_Svc_ACE_Naming_Context::ACE_Static_Svc_ACE_Naming_Context(this
= 0xfffffd7ffe168cf8), line 709 in "Naming_Context.cpp"
[41] __SLIP.INIT_A(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffdf77310
[42] __STATIC_CONSTRUCTOR(), line 709 in "Naming_Context.cpp"
[43] __cplus_fini_at_exit(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffe0e8fb2
[44] call_init(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3d267a
[45] setup(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3d1381
[46] _setup(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3dec2f
[47] _rt_boot(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3c70af
(dbx) quit
----------------------
l> Build Package:
ACE+TAO's VERSION file:
This is ACE version 5.4.8, released Tue Dec 20 08:02:03 2005.
This is TAO version 1.4.8, released Tue Dec 20 08:04:30 2005.
ll> Build Platform:
Solaris 10 (64-bit Kernel) for X86 which is free download from
www.sun.com with Patch:
http://developers.sun.com/prodtech/cc/downloads/patches/ss10_patches.html
Sun Studio 10 which is free download from www.opensolaris.org with
patch:
http://developers.sun.com/prodtech/cc/downloads/patches/ss10_patches.html
lll> Hardware Platform:
Sun Ultra 20, AMD Opteron (AMD64)
llll> Configurations for compilation:
1>
PATH=$PATH:/opt/SUNWspro/bin:/usr/sfw/bin
export PATH
ACE_ROOT=/export/home/adam/ace.5.4.8.cc.32
export ACE_ROOT
TAO_ROOT=$ACE_ROOT/TAO
export TAO_ROOT
LD_LIBRARY_PATH=$ACE_ROOT/ace:$ACE_ROOT/lib
export LD_LIBRARY_PATH
2>
in $ACE_ROOT\ace, ln -s config-sunos5.10.h config.h
3a>
For 32-bit build
in $ACE_ROOT\include\makeinclude, ln -s platform_sunos5_sunc++.GNU
platfrom_macros.GNU
3b>
For 64-bit build
new the platform_marcros.GNU
include $(ACE_ROOT)/include/makeinclude/platform_sunos5_sunc++.GNU
CCFLAGS += -xarch=amd64
SOFLAGS += -xarch=amd64
LDFLAGS += -xarch=amd64 -L/usr/lib/amd64 -L/lib/amd64
-L/opt/SUNWspro/lib/amd64
Do you have any idea?
Regards,
Adam
Please see
http://www.dre.vanderbilt.edu/scoreboard/
for the versions of SunC++ and Solaris that we regularly test ACE+TAO
on. I recommend you either try to use the same compiler/OS
configuration that we do or you contact one of the companies that
provides commercial support for ACE+TAO.
Thanks,
Doug
>> include $(ACE_ROOT)/include/makeinclude/platform_sunos5_sunc++.GNU
>> CCFLAGS += -xarch=amd64
>> SOFLAGS += -xarch=amd64
>> LDFLAGS += -xarch=amd64 -L/usr/lib/amd64 -L/lib/amd64
>> -L/opt/SUNWspro/lib/amd64
>>
>> Do you have any idea?
>>
>> Regards,
>> Adam
>>