|
View:
New views
1 Messages
—
Rating Filter:
Alert me
|
|
|
freeradius2 python undefined symbol modules issues (socket or MySQLdb)Hi All,
I have emailed the list about this issue before, but I think I have found something which is causing the issue. (Until now I have still had the issues). The problem: When using the Python module to handle auth/acct etc.. if you 'import' certain modules radiusd quits with an error from python. I have had this problem on some boxes and not others (even with the same OS and different), it seems to work if I follow a certain procedure in installing / setting up my servers (However I haven't been able to reproduce the same order yet). Example of Errors (using 'import socket'): rlm_python:python_load_function: module 'radiusd_test' is not found rlm_python:EXCEPT:<type 'exceptions.ImportError'>: /usr/local/lib/python2.6/lib-dynload/_socket.so: Undefined symbol "PyObject_GenericGetAttr" rlm_python:python_load_function: failed to import python function 'radiusd_test.instantiate' Example of errors (using 'import MySQLdb'): Thu Nov 5 19:11:05 2009 : Error: rlm_python:python_load_function: module 'radiusd_test' is not found Thu Nov 5 19:11:05 2009 : Error: rlm_python:EXCEPT:<type 'exceptions.ImportError'>: /usr/local/lib/python2.6/site-packages/_mysql.so: Undefined symbol "_Py_NoneStruct" Thu Nov 5 19:11:05 2009 : Error: rlm_python:python_load_function: failed to import python function 'radiusd_test.instantiate' As you can see its python complaining about the import, However reading about python a bit online it seems to do something called 'cross compiling' (I'm not that big in development, please excuse me). There are people out there that say there are certain arguments that you need to pass to gcc during compile, telling the compiler that the libaries for python are externally linked. Apparently there is a method in python to return which parameters to pass to gcc: [root@aaa /usr/local/etc/raddb/python_script]# python Python 2.6.2 (r262:71600, Nov 4 2009, 13:40:57) [GCC 4.2.1 20070719 [FreeBSD]] on freebsd7 Type "help", "copyright", "credits" or "license" for more information. >>> import distutils.sysconfig >>> distutils.sysconfig.get_config_var("LINKFORSHARED") '-Wl,--export-dynamic' I have had this python module issue with FreeBSD 7.2, Ubuntu 9.x & 8.x. I'm not sure on how to compile the python module (rlm_python) with these arguments, but if somebody guides me through it I can perhaps help close the door on this issue? I eventually gave up on the problems and recoded my python auth module to use sockets to connect to another daemon to handle the SQL queries, I did that but then had this issue with 'import socket'. Currently on FreeBSD 7.2, I have another server which runs the original python module perfectly (using import 'MySQLdb'). Thanks, Mike - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html |
| Free embeddable forum powered by Nabble | Forum Help |