Compiling XBPythonDllFuncs

x86 "jmp" function problems
As a challenge to myself, I've gotten Plex compiling entirely for OS X 10.6's SDK and in native 64-bit. I've gotten the entire app compiling, except for Python dependencies:


XBPythonDllFuncs.S:8:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:8:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:9:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:9:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:10:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:10:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:11:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:11:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:12:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:12:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:13:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:13:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:14:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:14:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:15:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:15:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:16:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:16:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:17:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:17:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:18:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:18:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:19:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:19:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:20:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:20:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:21:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:21:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:22:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:22:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:23:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:23:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:24:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:24:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:25:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:25:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:26:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:26:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:27:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:27:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:28:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:28:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:29:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:29:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:30:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:30:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:31:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:31:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:32:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:32:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:33:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:33:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:34:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:34:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:35:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:35:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:36:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:36:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:37:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:37:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:38:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:38:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:39:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:39:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:40:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:40:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:41:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:41:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:42:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:42:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:43:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:43:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:44:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:44:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:45:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:45:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:46:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:46:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:47:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:47:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:48:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:48:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:49:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:49:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:50:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:50:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:51:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:51:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:52:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:52:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:53:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:53:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:54:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:54:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:55:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:55:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:56:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:56:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:57:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:57:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:58:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:58:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:59:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:59:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:60:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:60:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:61:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:61:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:62:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:62:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:63:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:63:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:64:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:64:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:65:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:65:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:66:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:66:cannot do signed 4 byte relocation<br />
XBPythonDllFuncs.S:67:32-bit absolute addressing is not supported for x86-64<br />
XBPythonDllFuncs.S:67:cannot do signed 4 byte relocation<br />
make: *** [XBPythonDllFuncs.o] Error 1<br />




Looking through the file and Google tells me this has something to do with the x86 assembly function "jmp". The file itself, I think, provides Python 2.4 symbols to Plex/the XBMC core. I'm not really sure what to do with getting it to compile.

What about the native OS X Python? /System/Library/Frameworks/Python.framework includes 2.3, 2.5, and 2.6 all natively compiled and optimized. The source tree links against its own libPython 2.4. I managed to get that library built as well, but not the DLL function wrapper.

Any ideas?

Hey, very impressive first post :slight_smile:



We’d love to discuss this more with you in real time, if you PM me with your email address I’ll send you an invite to our real-time chat room (Campfire). We’re actually moving away from the Python that’s embedded inside Plex, so the issue you ran into isn’t as big an impediment as it might as first appear.



I agree; ImageLib is a much more dangerous and scary thing. I'm actually in classes all day to day (happy freaking New Year :rolleyes: ), I'll be on to discuss and such later.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.