Bug #1246
Installing Lasso on a mac
0%
Description
This has been boggling me for half a day now. I've got PyCharm running on my mac, and I'm trying to install Authentic2. When I tried to install it, I suddenly got the message that I needed a few packages, among which Lasso. I managed to install all those packages, but I just can't get lasso to install. I tried to run ./configure in the shell, but there I keep getting the following errors:
No package 'libxml-2.0' found
No package 'xmlsec1' found
No package 'xmlsec1-openssl' found
No package 'openssl' found
I can't find the package xmlsec1 anywhere and the libxml warning showed up, even after I correctly made and installed it. I can't find any support on this online, and I'm a big newbie on python, so is there something I'mdoing wrong here?
greetings,
- Peter
History
Updated by Benjamin Dauvergne almost 13 years ago
Those warning messages from the configure script mean that you do not have the development version for those libraries, i.e. the C headers. You need to install them and also pkgconfig which is used to find them.
If it looks too much daunting to you I would advise using a binary distribution of open-source software for Mac OS X like Fink which does this correctly.
Updated by Anonymous almost 13 years ago
Thanks. I managed to install the libraries now. However, i've run into trouble trying to get the thing to compile. In Terminal, I'm in the folder I have extracted the lasso files in, and the ./configure command runs just fine. When I try to run the makefile however (by typing "make"), it stops with the fllowing error:
CCLD liblasso.la
Undefined symbols for architecture x86_64:
"_strndup", referenced from:
_snippet_dump_any in xml.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make[4]: *** [liblasso.la] Error 1
It seems that the fault is in trying to use the strndup command sonewhere in your files, while Mac OS X doesn't support it. What can I do to get it to support it? I already tried to install the publib library through Fink, but that also doesn't sem to work.
Updated by Benjamin Dauvergne almost 13 years ago
The strndup was fixed in the 2.3.6 release, what version of lasso are you trying to compile ?
Updated by Anonymous almost 13 years ago
Okay, so for now I just circumvented that arror by manually editing xml.c in the lasso folder, in order to add the method that was missing there. And now I've got YET ANOTHER error when trying to build this thing with the makefile:
ld: warning: ignoring file /Library/Frameworks//Python.framework/Python, missing required architecture x86_64 in file
Undefined symbols for architecture x86_64:
"__Py_NoneStruct", referenced from:
_noneRef in _lasso_la-_lasso.o
_valid_seq in _lasso_la-_lasso.o
_set_hashtable_of_pygobject in _lasso_la-_lasso.o
_set_hashtable_of_strings in _lasso_la-_lasso.o
_set_list_of_strings in _lasso_la-_lasso.o
_set_list_of_xml_nodes in _lasso_la-_lasso.o
_set_list_of_pygobject in _lasso_la-_lasso.o
...
"_PyDict_New", referenced from:
_get_dict_from_hashtable_of_objects in _lasso_la-_lasso.o
_get_dict_from_hashtable_of_strings in _lasso_la-_lasso.o
"_PyDict_SetItemString", referenced from:
_get_dict_from_hashtable_of_objects in _lasso_la-_lasso.o
_get_dict_from_hashtable_of_strings in _lasso_la-_lasso.o
_register_constants in _lasso_la-_lasso.o
"_PyExc_RuntimeWarning", referenced from:
_get_dict_from_hashtable_of_objects in _lasso_la-_lasso.o
_get_dict_from_hashtable_of_strings in _lasso_la-_lasso.o
_get_list_of_strings in _lasso_la-_lasso.o
_get_list_of_xml_nodes in _lasso_la-_lasso.o
_get_list_of_pygobject in _lasso_la-_lasso.o
"_PyErr_WarnEx", referenced from:
_get_dict_from_hashtable_of_objects in _lasso_la-_lasso.o
_get_dict_from_hashtable_of_strings in _lasso_la-_lasso.o
_get_list_of_strings in _lasso_la-_lasso.o
_get_list_of_xml_nodes in _lasso_la-_lasso.o
_get_list_of_pygobject in _lasso_la-_lasso.o
"_PyDictProxy_New", referenced from:
_get_dict_from_hashtable_of_objects in _lasso_la-_lasso.o
_get_dict_from_hashtable_of_strings in _lasso_la-_lasso.o
The problem this time is pretty clear: the path /Library/Frameworks//Python.framework/Python that it's searching for somehow has an extra slash somewhere. It just doesn't give any indication where I can find where this is being set from, nor where I can fix this.
Updated by Anonymous almost 13 years ago
The version I'm trying to compile is version 2.3.6. It's the most recent version I could find.
Updated by Benjamin Dauvergne almost 13 years ago
Anonyme a écrit :
Okay, so for now I just circumvented that arror by manually editing xml.c in the lasso folder, in order to add the method that was missing there. And now I've got YET ANOTHER error when trying to build this thing with the makefile:
I'm trying to help you freely, please do no use uppercase or inflamatory language in your comments or I will just stop supporting you in the future.
Concerning strndup, apparently the fix was committed after the 2.3.6 release but hopefully you found how to apply the patch yourself.
Your other problem seems related to the Makefile being unable to find symbols from the python library, but not using Mac OS X (exotic system, no ?) myself, it will be difficult for me to debug such a problem.