Discussion:
[omniORB] omniORB-4.1.3 x64 cross compile problems
Nikola Radovanovic
2008-12-03 18:32:10 UTC
Permalink
hi,
we intend to use omniORB-4.1.3 on windows 64 architecture. so far, we
successfully compile it on native x64 (win64 xp with platform sdk 2008
and python 64 installed).
We also tried to compile it on xp 32, but with x64 cross compiler
(shipped with studio 2005 with with platform sdk 2008 and omnipython) -
with no success.
errors are in file attached.

regards
nikola radovanovic

-------------- next part --------------
d:\builds\omniorb-4.1.3\include\python1.5\config.h(1058) : see previous definition of 'HAVE_STRFTIME'
+ rm -f omniidl.exe
+ ../../../../bin/x86_win32/linkwrapper -gnuwin32 -out:omniidl.exe -nologo -DEBUG -libpath:d:/builds/omniorb-4.1.3/libs
uilds/omniorb-4.1.3/PCbuild -PDB:omniidl.exe.pdb -libpath:../../../../lib/x86_win32 y.tab.o lex.yy.o idlerr.o idlutil.o
ate.o idldump.o idlconfig.o idlfixed.o idlpython.o python15.lib
link -out:omniidl.exe -nologo -DEBUG -libpath:d:\builds\omniorb-4.1.3\libs -libpath:d:\builds\omniorb-4.1.3\lib\x86_win3
pdb -libpath:..\..\..\..\lib\x86_win32 y.tab.o lex.yy.o idlerr.o idlutil.o idltype.o idlrepoId.o idlscope.o idlexpr.o id
hon.o python15.lib
Creating library omniidl.lib and object omniidl.exp
idlpython.o : error LNK2019: unresolved external symbol __imp_PyNumber_Negative referenced in function "struct _object *
Long@@YAPEAU_object@@***@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyLong_FromUnsignedLongLong referenced in function "struct
g_FromLongLong@@YAPEAU_object@@***@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyLong_FromLongLong referenced in function "struct _object
ngLong@@YAPEAU_object@@***@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyErr_Print referenced in function "public: __cdecl Python
idlpython.o : error LNK2019: unresolved external symbol __imp_PyImport_ImportModule referenced in function "public: __cd
***@XZ)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyList_SetItem referenced in function "public: static stru
copedName const *)" (?***@PythonVisitor@@SAPEAU_object@@PEBVScopedName@@@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyString_FromString referenced in function "public: static
ass ScopedName const *)" (?***@PythonVisitor@@SAPEAU_object@@PEBVScopedName@@@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyList_New referenced in function "public: static struct _
dName const *)" (?***@PythonVisitor@@SAPEAU_object@@PEBVScopedName@@@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyObject_CallMethod referenced in function "private: struc
a const *)" (?***@PythonVisitor@@AEAAPEAU_object@@PEBVPragma@@@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyInt_FromLong referenced in function "public: static stru
hort const *)" (?***@PythonVisitor@@SAPEAU_object@@***@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_Py_BuildValue referenced in function "public: virtual void
***@PythonVisitor@@UEAAXPEAVConst@@@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyFloat_FromDouble referenced in function "public: virtual
***@PythonVisitor@@UEAAXPEAVConst@@@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyLong_FromUnsignedLong referenced in function "public: vi
(?***@PythonVisitor@@UEAAXPEAVConst@@@Z)
idlpython.o : error LNK2019: unresolved external symbol __imp_PyList_GetItem referenced in function "public: virtual voi
***@PythonVisitor@@UEAAXPEAVTypedef@@@Z)
idlpython.o : error LNK2001: unresolved external symbol __imp_PyExc_TypeError
idlpython.o : error LNK2001: unresolved external symbol __imp__Py_NoneStruct
idlpython.o : error LNK2019: unresolved external symbol __imp_PyFile_AsFile referenced in function IdlPyCompile
idlpython.o : error LNK2019: unresolved external symbol __imp_PyFile_Name referenced in function IdlPyCompile
idlpython.o : error LNK2001: unresolved external symbol __imp_PyFile_Type
idlpython.o : error LNK2019: unresolved external symbol __imp_PyErr_SetString referenced in function IdlPyCompile
idlpython.o : error LNK2001: unresolved external symbol __imp_PyExc_IOError
idlpython.o : error LNK2019: unresolved external symbol __imp_PyString_AsString referenced in function IdlPyCompile
idlpython.o : error LNK2001: unresolved external symbol __imp_PyString_Type
idlpython.o : error LNK2019: unresolved external symbol __imp_PyArg_ParseTuple referenced in function IdlPyCompile
idlpython.o : error LNK2019: unresolved external symbol __imp_PyRun_InteractiveLoop referenced in function IdlPyRunInter
idlpython.o : error LNK2019: unresolved external symbol __imp_PyList_Append referenced in function IdlPyPlatformDefines
idlpython.o : error LNK2019: unresolved external symbol __imp_PyObject_SetAttrString referenced in function init_omniidl
idlpython.o : error LNK2019: unresolved external symbol __imp_Py_InitModule4 referenced in function init_omniidl
idlpython.o : error LNK2019: unresolved external symbol __imp_PyRun_SimpleString referenced in function main
idlpython.o : error LNK2019: unresolved external symbol __imp_PySys_SetArgv referenced in function main
idlpython.o : error LNK2019: unresolved external symbol __imp_Py_Initialize referenced in function main
idlpython.o : error LNK2019: unresolved external symbol __imp_PyList_Insert referenced in function IdlPyRelativeScopedNa
idlpython.o : error LNK2019: unresolved external symbol __imp_PySequence_GetItem referenced in function IdlPyRelativeSco
idlpython.o : error LNK2019: unresolved external symbol __imp_PyObject_Length referenced in function IdlPyRelativeScoped
idlpython.o : error LNK2019: unresolved external symbol __imp_PySequence_Check referenced in function IdlPyRelativeScope
omniidl.exe : fatal error LNK1120: 35 unresolved externals
+ mt.exe /outputresource:omniidl.exe;#1 /manifest omniidl.exe.manifest
Microsoft (R) Manifest Tool version 5.2.3790.2075
Copyright (c) Microsoft Corporation 2005.
All rights reserved.

mt.exe : general error c10100b1: Failed to load file "omniidl.exe". The system cannot find the file specified.
make[3]: *** [omniidl.exe] Error 31
make[3]: Leaving directory `/cygdrive/d/builds/omniORB-4.1.3/src/tool/omniidl/cxx'
make[2]: *** [export] Error 2
make[2]: Leaving directory `/cygdrive/d/builds/omniORB-4.1.3/src/tool/omniidl'
make[1]: *** [export] Error 2
make[1]: Leaving directory `/cygdrive/d/builds/omniORB-4.1.3/src/tool'
make: *** [export] Error 2
Peter Klotz
2008-12-04 01:41:15 UTC
Permalink
Hello Nikola
Post by Nikola Radovanovic
we intend to use omniORB-4.1.3 on windows 64 architecture. so far, we
successfully compile it on native x64 (win64 xp with platform sdk 2008
and python 64 installed).
We also tried to compile it on xp 32, but with x64 cross compiler
(shipped with studio 2005 with with platform sdk 2008 and omnipython) -
with no success.
errors are in file attached.
I have never tried compiling omniORB x64 using the cross compiler but it
may be impossible (for now).

omniidl.exe depends on python.dll. Since the cross compiler only
generates x64 code you need an x64 version of Python. This means that
the resulting omniidl.exe cannot be run on x86 Windows.

Since omniidl.exe is needed in the build process of omniORB I do not see
how to make this work.

Why don't you just stick with x64 Windows? There you can compile x86 and
x64 versions of omniORB and run them both without problems.

Regards, Peter.
Duncan Grisby
2008-12-12 22:41:15 UTC
Permalink
Post by Nikola Radovanovic
we intend to use omniORB-4.1.3 on windows 64 architecture. so far, we
successfully compile it on native x64 (win64 xp with platform sdk 2008
and python 64 installed).
We also tried to compile it on xp 32, but with x64 cross compiler
(shipped with studio 2005 with with platform sdk 2008 and omnipython)
The problem is that as part of the build it builds a Python extension
as part of omniidl. You are building a 64 bit Python extension, and
trying to link it with a 32 bit Python.

The only way out if you need to use the 64 bit cross compiler is to hack
the makefiles so they build omniidl with the 32 bit compiler but build
the rest of the system with the 64 bit compiler.

Cheers,

Duncan.
--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
Loading...