Open arademaker opened 4 years ago
In the make step, I got
$ make
Scanning dependencies of target dynet
[ 1%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/aligned-mem-pool.cc.o
[ 1%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/cfsm-builder.cc.o
[ 1%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/deep-lstm.cc.o
[ 2%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/devices.cc.o
[ 2%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/dict.cc.o
[ 2%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/dim.cc.o
[ 3%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/dynet.cc.o
[ 3%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/exec.cc.o
[ 3%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/expr.cc.o
[ 3%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/fast-lstm.cc.o
[ 4%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/globals.cc.o
[ 4%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/grad-check.cc.o
[ 4%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/graph.cc.o
[ 5%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/gru.cc.o
[ 5%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/hsm-builder.cc.o
[ 5%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/init.cc.o
[ 6%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/io.cc.o
/Users/ar/work/fl/freeling/src/libdynet/dynet/io.cc:7:10: fatal error: 'boost/iostreams/filtering_streambuf.hpp' file not found
#include <boost/iostreams/filtering_streambuf.hpp>
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make[2]: *** [src/libdynet/dynet/CMakeFiles/dynet.dir/io.cc.o] Error 1
make[1]: *** [src/libdynet/dynet/CMakeFiles/dynet.dir/all] Error 2
make: *** [all] Error 2
Trying with the release 4.1 instead of using the MASTER branch I got another error:
[ 91%] Linking CXX shared library libfreeling.dylib
Undefined symbols for architecture x86_64:
"boost::basic_regex<int, boost::icu_regex_traits>::do_assign(int const*, int const*, unsigned int)", referenced from:
boost::basic_regex<int, boost::icu_regex_traits>::assign(int const*, int const*, unsigned int) in regexp.cc.o
"boost::re_detail::get_mem_block()", referenced from:
boost::re_detail::perl_matcher<std::__1::__wrap_iter<wchar_t const*>, std::__1::allocator<boost::sub_match<std::__1::__wrap_iter<wchar_t const*> > >, boost::icu_regex_traits>::extend_stack() in regexp.cc.o
boost::re_detail::save_state_init::save_state_init(boost::re_detail::saved_state**, boost::re_detail::saved_state**) in regexp.cc.o
"boost::re_detail::put_mem_block(void*)", referenced from:
boost::re_detail::perl_matcher<std::__1::__wrap_iter<wchar_t const*>, std::__1::allocator<boost::sub_match<std::__1::__wrap_iter<wchar_t const*> > >, boost::icu_regex_traits>::unwind_extra_block(bool) in regexp.cc.o
boost::re_detail::save_state_init::~save_state_init() in regexp.cc.o
"boost::re_detail::verify_options(unsigned int, boost::regex_constants::_match_flags)", referenced from:
boost::re_detail::perl_matcher<std::__1::__wrap_iter<wchar_t const*>, std::__1::allocator<boost::sub_match<std::__1::__wrap_iter<wchar_t const*> > >, boost::icu_regex_traits>::find_imp() in regexp.cc.o
boost::re_detail::perl_matcher<std::__1::__wrap_iter<wchar_t const*>, std::__1::allocator<boost::sub_match<std::__1::__wrap_iter<wchar_t const*> > >, boost::icu_regex_traits>::match_imp() in regexp.cc.o
"boost::re_detail::raise_runtime_error(std::runtime_error const&)", referenced from:
void boost::re_detail::raise_error<boost::regex_traits_wrapper<boost::icu_regex_traits> >(boost::regex_traits_wrapper<boost::icu_regex_traits> const&, boost::regex_constants::error_type) in regexp.cc.o
"boost::re_detail::get_default_error_string(boost::regex_constants::error_type)", referenced from:
boost::icu_regex_traits::error_string(boost::regex_constants::error_type) const in regexp.cc.o
"boost::re_detail::is_combining_implementation(unsigned short)", referenced from:
bool boost::re_detail::is_combining<int>(int) in regexp.cc.o
"boost::re_detail::icu_regex_traits_implementation::do_transform(int const*, int const*, icu_48::Collator const*) const", referenced from:
boost::re_detail::icu_regex_traits_implementation::transform(int const*, int const*) const in regexp.cc.o
boost::re_detail::icu_regex_traits_implementation::transform_primary(int const*, int const*) const in regexp.cc.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [src/libfreeling/libfreeling.dylib] Error 1
make[1]: *** [src/libfreeling/CMakeFiles/freeling.dir/all] Error 2
make: *** [all] Error 2
Any idea @lluisp ?
I'd say some boost or icu libraries are missing in your system.
To prepare the system, I followed the procedure in https://freeling-user-manual.readthedocs.io/en/v4.1/installation/requirements-mac/
$ brew info boost
boost: stable 1.71.0 (bottled), HEAD
Collection of portable C++ source libraries
https://www.boost.org/
/usr/local/Cellar/boost/1.71.0 (14,377 files, 522.8MB) *
Poured from bottle on 2019-09-22 at 12:51:14
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/boost.rb
==> Dependencies
Required: icu4c ✔
==> Options
--HEAD
Install HEAD version
==> Analytics
install: 54,158 (30 days), 124,979 (90 days), 649,670 (365 days)
install_on_request: 18,509 (30 days), 44,008 (90 days), 207,561 (365 days)
build_error: 0 (30 days)
Looking more carefully in the docs, I found that I need extra paramenters in the cmake
(https://freeling-user-manual.readthedocs.io/en/v4.1/installation/installation-mac/):
I tried:
$ cmake .. -DPYTHON3_API=ON -DICU_ROOT=/usr/local/opt/icu4c
$ make
...
[ 91%] Linking CXX shared library libfreeling.dylib
Undefined symbols for architecture x86_64:
"icu_64::Collator::createInstance(icu_64::Locale const&, UErrorCode&)", referenced from:
boost::re_detail_107100::icu_regex_traits_implementation::icu_regex_traits_implementation(icu_64::Locale const&) in regexp.cc.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [src/libfreeling/libfreeling.dylib] Error 1
make[1]: *** [src/libfreeling/CMakeFiles/freeling.dir/all] Error 2
make: *** [all] Error 2
maybe your boost/icu version is different than the one I used to write the manual...
run "make -VERBOSE=1" to see if you get more information
Make (at least in macOS) does not understand the parameter -VERBOSE=1
! I tried with -d
but I got the same error without any further information.
try without the dash make VERBOSE=1
Nice, make VERBOSE=1
worked. Below the step where the error occurs:
[ 29%] Linking CXX shared library libfreeling.dylib
cd /Users/ar/work/fl/FreeLing-4.1/build/src/libfreeling && /usr/local/Cellar/cmake/3.15.3/bin/cmake -E cmake_link_script CMakeFiles/freeling.dir/link.txt --verbose=1
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -mmacosx-version-min=10.14 -dynamiclib -Wl,-headerpad_max_install_names -o libfreeling.dylib -install_name @rpath/libfreeling.dylib CMakeFiles/freeling.dir/RE_map.cc.o CMakeFiles/freeling.dir/accents/accents.cc.o CMakeFiles/freeling.dir/accents/accents_default.cc.o CMakeFiles/freeling.dir/accents/accents_es.cc.o CMakeFiles/freeling.dir/accents/accents_gl.cc.o CMakeFiles/freeling.dir/alternatives.cc.o CMakeFiles/freeling.dir/analyzer.cc.o CMakeFiles/freeling.dir/automat.cc.o CMakeFiles/freeling.dir/bioner.cc.o CMakeFiles/freeling.dir/chart_parser/chart.cc.o CMakeFiles/freeling.dir/chart_parser/chart_parser.cc.o CMakeFiles/freeling.dir/chart_parser/grammar.cc.o CMakeFiles/freeling.dir/compounds.cc.o CMakeFiles/freeling.dir/configfile.cc.o CMakeFiles/freeling.dir/coref/mention_detector.cc.o CMakeFiles/freeling.dir/coref/mention_detector_constit.cc.o CMakeFiles/freeling.dir/coref/mention_detector_dep.cc.o CMakeFiles/freeling.dir/coref/relaxcor/relaxcor.cc.o CMakeFiles/freeling.dir/coref/relaxcor/relaxcor_fex.cc.o CMakeFiles/freeling.dir/coref/relaxcor/relaxcor_fex_abs.cc.o CMakeFiles/freeling.dir/coref/relaxcor/relaxcor_fex_constit.cc.o CMakeFiles/freeling.dir/coref/relaxcor/relaxcor_fex_dep.cc.o CMakeFiles/freeling.dir/coref/relaxcor/relaxcor_model.cc.o CMakeFiles/freeling.dir/coref/relaxcor/relaxcor_modelDT.cc.o CMakeFiles/freeling.dir/corrector.cc.o CMakeFiles/freeling.dir/csr_kb.cc.o CMakeFiles/freeling.dir/database.cc.o CMakeFiles/freeling.dir/dates/dates.cc.o CMakeFiles/freeling.dir/dates/dates_ca.cc.o CMakeFiles/freeling.dir/dates/dates_de.cc.o CMakeFiles/freeling.dir/dates/dates_default.cc.o CMakeFiles/freeling.dir/dates/dates_en.cc.o CMakeFiles/freeling.dir/dates/dates_es.cc.o CMakeFiles/freeling.dir/dates/dates_fr.cc.o CMakeFiles/freeling.dir/dates/dates_gl.cc.o CMakeFiles/freeling.dir/dates/dates_pt.cc.o CMakeFiles/freeling.dir/dates/dates_ru.cc.o CMakeFiles/freeling.dir/dependency_parsing/dep_rules.cc.o CMakeFiles/freeling.dir/dependency_parsing/dep_treeler.cc.o CMakeFiles/freeling.dir/dependency_parsing/dep_txala.cc.o CMakeFiles/freeling.dir/dictionary.cc.o CMakeFiles/freeling.dir/embeddings.cc.o CMakeFiles/freeling.dir/fex/fex.cc.o CMakeFiles/freeling.dir/fex/fex_lexicon.cc.o CMakeFiles/freeling.dir/fex/fex_rule.cc.o CMakeFiles/freeling.dir/fex/nerc_features.cc.o CMakeFiles/freeling.dir/foma_FSM.cc.o CMakeFiles/freeling.dir/hmm_tagger.cc.o CMakeFiles/freeling.dir/lang_ident/idioma.cc.o CMakeFiles/freeling.dir/lang_ident/lang_ident.cc.o CMakeFiles/freeling.dir/language.cc.o CMakeFiles/freeling.dir/lexer.cc.o CMakeFiles/freeling.dir/locutions.cc.o CMakeFiles/freeling.dir/maco.cc.o CMakeFiles/freeling.dir/maco_options.cc.o CMakeFiles/freeling.dir/nec.cc.o CMakeFiles/freeling.dir/ner.cc.o CMakeFiles/freeling.dir/ner_module.cc.o CMakeFiles/freeling.dir/np.cc.o CMakeFiles/freeling.dir/numbers/numbers.cc.o CMakeFiles/freeling.dir/numbers/numbers_ca.cc.o CMakeFiles/freeling.dir/numbers/numbers_cs.cc.o CMakeFiles/freeling.dir/numbers/numbers_de.cc.o CMakeFiles/freeling.dir/numbers/numbers_default.cc.o CMakeFiles/freeling.dir/numbers/numbers_en.cc.o CMakeFiles/freeling.dir/numbers/numbers_es.cc.o CMakeFiles/freeling.dir/numbers/numbers_gl.cc.o CMakeFiles/freeling.dir/numbers/numbers_it.cc.o CMakeFiles/freeling.dir/numbers/numbers_pt.cc.o CMakeFiles/freeling.dir/numbers/numbers_ru.cc.o CMakeFiles/freeling.dir/omlet/adaboost.cc.o CMakeFiles/freeling.dir/omlet/classifier.cc.o CMakeFiles/freeling.dir/omlet/dataset.cc.o CMakeFiles/freeling.dir/omlet/example.cc.o CMakeFiles/freeling.dir/omlet/libsvm.cc.o CMakeFiles/freeling.dir/omlet/svm.cc.o CMakeFiles/freeling.dir/omlet/viterbi.cc.o CMakeFiles/freeling.dir/omlet/weakrule.cc.o CMakeFiles/freeling.dir/output/conll_handler.cc.o CMakeFiles/freeling.dir/output/input_conll.cc.o CMakeFiles/freeling.dir/output/input_freeling.cc.o CMakeFiles/freeling.dir/output/input_handler.cc.o CMakeFiles/freeling.dir/output/io_handler.cc.o CMakeFiles/freeling.dir/output/output.cc.o CMakeFiles/freeling.dir/output/output_conll.cc.o CMakeFiles/freeling.dir/output/output_freeling.cc.o CMakeFiles/freeling.dir/output/output_handler.cc.o CMakeFiles/freeling.dir/output/output_json.cc.o CMakeFiles/freeling.dir/output/output_naf.cc.o CMakeFiles/freeling.dir/output/output_train.cc.o CMakeFiles/freeling.dir/output/output_xml.cc.o CMakeFiles/freeling.dir/phonetics.cc.o CMakeFiles/freeling.dir/prefTree.cc.o CMakeFiles/freeling.dir/probabilities.cc.o CMakeFiles/freeling.dir/processor.cc.o CMakeFiles/freeling.dir/punts.cc.o CMakeFiles/freeling.dir/quantities/quantities.cc.o CMakeFiles/freeling.dir/quantities/quantities_ca.cc.o CMakeFiles/freeling.dir/quantities/quantities_default.cc.o CMakeFiles/freeling.dir/quantities/quantities_en.cc.o CMakeFiles/freeling.dir/quantities/quantities_es.cc.o CMakeFiles/freeling.dir/quantities/quantities_gl.cc.o CMakeFiles/freeling.dir/quantities/quantities_pt.cc.o CMakeFiles/freeling.dir/quantities/quantities_ru.cc.o CMakeFiles/freeling.dir/regexp.cc.o CMakeFiles/freeling.dir/relax_tagger/constraint_grammar.cc.o CMakeFiles/freeling.dir/relax_tagger/relax.cc.o CMakeFiles/freeling.dir/relax_tagger/relax_tagger.cc.o CMakeFiles/freeling.dir/semdb.cc.o CMakeFiles/freeling.dir/semgraph/ent_extract.cc.o CMakeFiles/freeling.dir/semgraph/rel_extract.cc.o CMakeFiles/freeling.dir/semgraph/rel_extract_SPR.cc.o CMakeFiles/freeling.dir/semgraph/rel_extract_SRL.cc.o CMakeFiles/freeling.dir/semgraph/semgraph.cc.o CMakeFiles/freeling.dir/semgraph/semgraph_extract.cc.o CMakeFiles/freeling.dir/senses.cc.o CMakeFiles/freeling.dir/splitter.cc.o CMakeFiles/freeling.dir/suffixes.cc.o CMakeFiles/freeling.dir/summarizer/lexical_chain.cc.o CMakeFiles/freeling.dir/summarizer/relation.cc.o CMakeFiles/freeling.dir/summarizer/summarizer.cc.o CMakeFiles/freeling.dir/tagger.cc.o CMakeFiles/freeling.dir/tagset.cc.o CMakeFiles/freeling.dir/tokenizer.cc.o CMakeFiles/freeling.dir/traces.cc.o CMakeFiles/freeling.dir/ukb.cc.o CMakeFiles/freeling.dir/util.cc.o CMakeFiles/freeling.dir/version.cc.o -L/usr/local/lib -Wl,-rpath,/usr/local/lib -Wl,-rpath,/Users/ar/work/fl/FreeLing-4.1/build/src/libfoma -Wl,-rpath,/Users/ar/work/fl/FreeLing-4.1/build/src/libtreeler ../libfoma/libfoma.dylib ../libtreeler/libtreeler.dylib /usr/local/lib/libboost_regex.dylib /usr/local/lib/libboost_filesystem.dylib /usr/local/lib/libboost_thread-mt.dylib /usr/local/lib/libboost_program_options.dylib /usr/local/opt/icu4c/lib/libicuuc.dylib /usr/lib/libz.dylib
Undefined symbols for architecture x86_64:
"icu_64::Collator::createInstance(icu_64::Locale const&, UErrorCode&)", referenced from:
boost::re_detail_107100::icu_regex_traits_implementation::icu_regex_traits_implementation(icu_64::Locale const&) in regexp.cc.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [src/libfreeling/libfreeling.dylib] Error 1
make[1]: *** [src/libfreeling/CMakeFiles/freeling.dir/all] Error 2
make: *** [all] Error 2
That definitely looks like a boost/icu installation problem. Can you check which libraries you have in /usr/local/opt/icu4c ? You should have libicui18n among them. Maybe it has to be added to the compilation command
I updated my brew boost installation and I got:
$ brew upgrade boost
==> Upgrading 1 outdated package:
boost 1.66.0 -> 1.71.0
==> Upgrading boost
==> Installing dependencies for boost: icu4c
==> Installing boost dependency: icu4c
==> Downloading https://homebrew.bintray.com/bottles/icu4c-64.2.high_sierra.bott
le.tar.gz
==> Downloading from https://akamai.bintray.com/02/02afdd6a472c31351e46a3b2a38c1
c77354f0cc9199c3dbd7e06bc171b
######################################################################## 100.0%
==> Pouring icu4c-64.2.high_sierra.bottle.tar.gz
==> Caveats
icu4c is keg-only, which means it was not symlinked into /usr/local,
because macOS provides libicucore.dylib (but nothing else).
If you need to have icu4c first in your PATH run:
echo 'export PATH="/usr/local/opt/icu4c/bin:$PATH"' >> ~/.bash_profile
echo 'export PATH="/usr/local/opt/icu4c/sbin:$PATH"' >> ~/.bash_profile
For compilers to find icu4c you may need to set:
export LDFLAGS="-L/usr/local/opt/icu4c/lib"
export CPPFLAGS="-I/usr/local/opt/icu4c/include"
So, you need to define those paths for the compiler to work.
It seems that the paths are not enough. It looks like newer icu versions in brew do not pull each other. So, you need to add the libraries explicitly. Edit file src/libfreeling/CMakeLists.txt and change the line "target_link_libraries..." to add "${ICU_I18N_LIBRARY)" to the list.
Then, run all the process from scratch (i.e. from "cmake" command on a clean build directory)
OK, I was able to compile with
$ cmake .. -DICU_ROOT=/usr/local/opt/icu4c
$ make
after editing the PATHs in the .profile
. But it failed with the flag to the PYTHON3 API:
cmake .. -DPYTHON3_API=ON -DICU_ROOT=/usr/local/opt/icu4c
Above, just to properly document the issue, we must add in the list target_link_libraries
the entry ${ICU_I18N_LIBRARY}
.
I already updated the master verision in GH with the right target_link_libraries
What was the error with the ptyhon API ?
The error with the make VERBOSE=1
is
[100%] Linking CXX shared library _pyfreeling.dylib
cd /Users/ar/work/fl/FreeLing-4.1/build/APIs/python3 && /usr/local/Cellar/cmake/3.15.3/bin/cmake -E cmake_link_script CMakeFiles/_pyfreeling.dir/link.txt --verbose=1
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -mmacosx-version-min=10.14 -dynamiclib -Wl,-headerpad_max_install_names -L/usr/local/opt/icu4c/lib -o _pyfreeling.dylib -install_name @rpath/_pyfreeling.dylib CMakeFiles/_pyfreeling.dir/CMakeFiles/_pyfreeling.dir/freeling_pythonAPIPYTHON_wrap.cxx.o -L/usr/local/lib -Wl,-rpath,/usr/local/lib -Wl,-rpath,/Users/ar/work/fl/FreeLing-4.1/build/src/libfreeling -Wl,-rpath,/Users/ar/work/fl/FreeLing-4.1/build/src/libfoma -Wl,-rpath,/Users/ar/work/fl/FreeLing-4.1/build/src/libtreeler ../../src/libfreeling/libfreeling.dylib ../../src/libfoma/libfoma.dylib ../../src/libtreeler/libtreeler.dylib /usr/lib/libz.dylib /usr/local/lib/libboost_regex.dylib /usr/local/lib/libboost_filesystem.dylib /usr/local/lib/libboost_thread-mt.dylib /usr/local/lib/libboost_program_options.dylib /usr/local/opt/icu4c/lib/libicuuc.dylib /usr/local/opt/icu4c/lib/libicui18n.dylib
Undefined symbols for architecture x86_64:
"_PyArg_UnpackTuple", referenced from:
SwigPyObject_own(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyBool_FromLong", referenced from:
SWIG_From_bool(bool) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_richcompare(SwigPyObject*, SwigPyObject*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_own(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyBool_Type", referenced from:
SWIG_AsVal_bool(_object*, bool*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyBytes_AsStringAndSize", referenced from:
SWIG_Python_str_AsChar(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCFunction_NewEx", referenced from:
SWIG_PyInstanceMethod_New(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCFunction_Type", referenced from:
SWIG_PyInstanceMethod_New(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCapsule_GetPointer", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_DestroyModule(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCapsule_Import", referenced from:
SWIG_Python_GetModule(void*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCapsule_New", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetModule(swig_module_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_GetItem", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_New", referenced from:
SWIG_Python_TypeCache() in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_SetItem", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetSwigThis(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_SetItemString", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_InstallConstants(_object*, swig_const_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetConstant(_object*, char const*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_Clear", referenced from:
_wrap_SwigPyIterator___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___add__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ref__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreeSiblingIteratorNode___ref__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyErr_Fetch", referenced from:
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_Format", referenced from:
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_getattr(swig_varlinkobject*, char*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_setattr(swig_varlinkobject*, char*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_GivenExceptionMatches", referenced from:
SWIG_Python_TypeErrorOccurred(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_Occurred", referenced from:
SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_GetSwigThis(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_AsVal_unsigned_SS_long(_object*, unsigned long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_TypeErrorOccurred(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_AsVal_long(_object*, long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_GetModule(void*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyErr_Restore", referenced from:
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_SetObject", referenced from:
SWIG_Python_SetErrorObj(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_SetString", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetErrorMsg(_object*, char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_append(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyErr_WriteUnraisable", referenced from:
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_AttributeError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_getattr(swig_varlinkobject*, char*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_setattr(swig_varlinkobject*, char*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_IOError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_IndexError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_MemoryError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_OverflowError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<int, std::__1::allocator<int> >, int>::from(std::__1::list<int, std::__1::allocator<int> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >::from(std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::from(std::__1::list<freeling::word, std::__1::allocator<freeling::word> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double>, std::__1::allocator<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double> > >, std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double> >::from(std::__1::list<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double>, std::__1::allocator<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >, freeling::alternative>::from(std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >, freeling::analysis>::from(std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyExc_RuntimeError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_ExceptionType(swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_StopIteration", referenced from:
_wrap_SwigPyIterator_value(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator_next(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___next__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator_previous(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator_advance(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___iadd__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___isub__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyExc_SyntaxError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_SystemError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_TypeError", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_TypeErrorOccurred(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_append(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyExc_ValueError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_ZeroDivisionError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyFloat_AsDouble", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyFloat_FromDouble", referenced from:
_wrap_PairDoubleString_first_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_PairStringDouble_second_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_analysis_get_prob(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_analysis_get_distance(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_config_options_MACO_ProbabilityThreshold_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_config_options_TAGGER_RelaxScaleFactor_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_config_options_TAGGER_RelaxEpsilon_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyFloat_Type", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyImport_AddModule", referenced from:
SWIG_Python_SetModule(swig_module_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyInstanceMethod_New", referenced from:
SWIG_PyInstanceMethod_New(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsDouble", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsLong", referenced from:
SWIG_AsVal_long(_object*, long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsUnsignedLong", referenced from:
SWIG_AsVal_unsigned_SS_long(_object*, unsigned long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsUnsignedLongLong", referenced from:
SWIG_AsVal_unsigned_SS_long_SS_long(_object*, unsigned long long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromLong", referenced from:
SWIG_From_int(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_From_ptrdiff_t(long) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_From_unsigned_SS_long(unsigned long) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_From_unsigned_SS_long_SS_long(unsigned long long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromSize_t", referenced from:
SWIG_From_unsigned_SS_int(unsigned int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromUnsignedLong", referenced from:
SWIG_From_unsigned_SS_long(unsigned long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromUnsignedLongLong", referenced from:
SWIG_From_unsigned_SS_long_SS_long(unsigned long long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromVoidPtr", referenced from:
SwigPyObject_long(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyModule_AddObject", referenced from:
SWIG_Python_SetModule(swig_module_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyModule_Create2", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyModule_GetDict", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Call", referenced from:
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_CallFunctionObjArgs", referenced from:
SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Free", referenced from:
SwigPyPacked_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_New(void*, unsigned long, swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_GenericGetAttr", referenced from:
SwigPyPacked_TypeOnce()::tmp in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_TypeOnce()::tmp in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_GetAttr", referenced from:
SWIG_Python_GetSwigThis(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_GetAttrString", referenced from:
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetSwigThis(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Init", referenced from:
SwigPyObject_New(void*, swig_type_info*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_New(void*, unsigned long, swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_newvarlink() in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_IsInstance", referenced from:
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_IsTrue", referenced from:
SWIG_AsVal_bool(_object*, bool*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_own(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Malloc", referenced from:
SwigPyObject_New(void*, swig_type_info*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_New(void*, unsigned long, swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_newvarlink() in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_SetAttr", referenced from:
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::container_owner<swig::pointer_category>::back_reference(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Str", referenced from:
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PySequence_Check", referenced from:
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::word>::SwigPySequence_Cont(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::list<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >, freeling::analysis>::asptr(_object*, std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::analysis>::SwigPySequence_Cont(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >, freeling::alternative>::asptr(_object*, std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::alternative>::SwigPySequence_Cont(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySequence_GetItem", referenced from:
swig::SwigPySequence_Cont<freeling::word>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Ref<freeling::word>::operator freeling::word() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::analysis>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Ref<freeling::analysis>::operator freeling::analysis() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::alternative>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Ref<freeling::alternative>::operator freeling::alternative() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::sentence>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySequence_Size", referenced from:
swig::SwigPySequence_Cont<freeling::word>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::analysis>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::alternative>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::sentence>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::paragraph>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::argument>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::predicate>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySlice_GetIndices", referenced from:
std_vector_Sl_freeling_word_Sg____delitem____SWIG_1(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_vector_Sl_freeling_word_Sg____getitem____SWIG_0(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_vector_Sl_freeling_word_Sg____setitem____SWIG_1(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_vector_Sl_freeling_word_Sg____setitem____SWIG_0(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_list_Sl_freeling_word_Sg____delitem____SWIG_1(std::__1::list<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_list_Sl_freeling_word_Sg____getitem____SWIG_0(std::__1::list<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_list_Sl_freeling_word_Sg____setitem____SWIG_1(std::__1::list<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySlice_Type", referenced from:
_wrap_VectorWord___delitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_VectorWord___getitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_VectorWord___setitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListWord___delitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListWord___getitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListWord___setitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListAnalysis___delitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyTuple_New", referenced from:
_wrap_SetString_equal_range(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SetString_insert(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<int, std::__1::allocator<int> >, int>::from(std::__1::list<int, std::__1::allocator<int> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >::from(std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from<std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >::from(std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyTuple_SetItem", referenced from:
_wrap_SetString_equal_range(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SetString_insert(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<int, std::__1::allocator<int> >, int>::from(std::__1::list<int, std::__1::allocator<int> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >::from(std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from<std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >::from(std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >::from(std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyType_IsSubtype", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyType_Ready", referenced from:
SwigPyPacked_TypeOnce() in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_TypeOnce() in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_type() in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyType_Type", referenced from:
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_AsUTF8String", referenced from:
SWIG_Python_str_AsChar(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_AsWideChar", referenced from:
SWIG_AsWCharPtrAndSize(_object*, wchar_t**, unsigned long*, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_Concat", referenced from:
SwigPyObject_repr(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_FromFormat", referenced from:
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_repr(SwigPyPacked*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_str(SwigPyPacked*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_repr(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_FromString", referenced from:
SWIG_Python_str_FromChar(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_FromWideChar", referenced from:
SWIG_FromWCharPtrAndSize(wchar_t const*, unsigned long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_GetLength", referenced from:
SWIG_AsWCharPtrAndSize(_object*, wchar_t**, unsigned long*, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_InternFromString", referenced from:
swig_varlink_repr(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_Py_DecRef", referenced from:
SwigPyObject_repr(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"__PyObject_New", referenced from:
SWIG_Python_NewPointerObj(_object*, void*, swig_type_info*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"__Py_NoneStruct", referenced from:
SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Py_Void() in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::list<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >, freeling::analysis>::asptr(_object*, std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >, freeling::alternative>::asptr(_object*, std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::sentence, std::__1::allocator<freeling::sentence> >, freeling::sentence>::asptr(_object*, std::__1::list<freeling::sentence, std::__1::allocator<freeling::sentence> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"__Py_NotImplementedStruct", referenced from:
_wrap_SwigPyIterator___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___add__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___sub__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ref__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [APIs/python3/_pyfreeling.dylib] Error 1
make[1]: *** [APIs/python3/CMakeFiles/_pyfreeling.dir/all] Error 2
make: *** [all] Error 2
It looks as you might be missing some python development libraries (or the path to them) In linux, they are called libpython-*
Yes, the question is how to indicate the location of the heads! Reading this question I found the path in my system. Python3 was installed with brew:
/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m
The documentation has only "Make sure you install also development headers" in https://freeling-user-manual.readthedocs.io/en/v4.1/installation/apis-mac/. But how to customize the location of the heads?
There is a FREELINGDIR in the FreeLing-4.1/APIs/python3/Makefile
and a ${PYTHON_INCLUDE_DIRS}
in the CMakeLists.txt
file. The second one is a local environment variable that I can set? Do I need to change the first one?
I tried with a variable:
export PYTHON_INCLUDE_DIRS=/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m
and with:
cmake .. -DPYTHON3_API=ON -DICU_ROOT=/usr/local/opt/icu4c -DPYTHON_INCLUDE_DIRS=/usr/local/Cellar/python/3.7.4_1/Frameworks/Python.framework/Versions/3.7/include/python3.7m
Both cases didn't work. The error looks the same, but in any case:
[100%] Linking CXX shared library _pyfreeling.dylib
Undefined symbols for architecture x86_64:
"_PyArg_UnpackTuple", referenced from:
SwigPyObject_own(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyBool_FromLong", referenced from:
SWIG_From_bool(bool) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_richcompare(SwigPyObject*, SwigPyObject*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_own(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyBool_Type", referenced from:
SWIG_AsVal_bool(_object*, bool*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyBytes_AsStringAndSize", referenced from:
SWIG_Python_str_AsChar(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCFunction_NewEx", referenced from:
SWIG_PyInstanceMethod_New(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCFunction_Type", referenced from:
SWIG_PyInstanceMethod_New(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCapsule_GetPointer", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_DestroyModule(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCapsule_Import", referenced from:
SWIG_Python_GetModule(void*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCapsule_New", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetModule(swig_module_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_GetItem", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_New", referenced from:
SWIG_Python_TypeCache() in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_SetItem", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetSwigThis(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_SetItemString", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_InstallConstants(_object*, swig_const_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetConstant(_object*, char const*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_Clear", referenced from:
_wrap_SwigPyIterator___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___add__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ref__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreeSiblingIteratorNode___ref__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyErr_Fetch", referenced from:
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_Format", referenced from:
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_getattr(swig_varlinkobject*, char*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_setattr(swig_varlinkobject*, char*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_GivenExceptionMatches", referenced from:
SWIG_Python_TypeErrorOccurred(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_Occurred", referenced from:
SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_GetSwigThis(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_AsVal_unsigned_SS_long(_object*, unsigned long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_TypeErrorOccurred(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_AsVal_long(_object*, long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_GetModule(void*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyErr_Restore", referenced from:
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_SetObject", referenced from:
SWIG_Python_SetErrorObj(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_SetString", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetErrorMsg(_object*, char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_append(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyErr_WriteUnraisable", referenced from:
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_AttributeError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_getattr(swig_varlinkobject*, char*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_setattr(swig_varlinkobject*, char*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_IOError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_IndexError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_MemoryError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_OverflowError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<int, std::__1::allocator<int> >, int>::from(std::__1::list<int, std::__1::allocator<int> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >::from(std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::from(std::__1::list<freeling::word, std::__1::allocator<freeling::word> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double>, std::__1::allocator<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double> > >, std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double> >::from(std::__1::list<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double>, std::__1::allocator<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >, freeling::alternative>::from(std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >, freeling::analysis>::from(std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyExc_RuntimeError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_ExceptionType(swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_StopIteration", referenced from:
_wrap_SwigPyIterator_value(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator_next(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___next__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator_previous(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator_advance(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___iadd__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___isub__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyExc_SyntaxError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_SystemError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_TypeError", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_TypeErrorOccurred(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_append(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyExc_ValueError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_ZeroDivisionError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyFloat_AsDouble", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyFloat_FromDouble", referenced from:
_wrap_PairDoubleString_first_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_PairStringDouble_second_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_analysis_get_prob(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_analysis_get_distance(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_config_options_MACO_ProbabilityThreshold_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_config_options_TAGGER_RelaxScaleFactor_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_config_options_TAGGER_RelaxEpsilon_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyFloat_Type", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyImport_AddModule", referenced from:
SWIG_Python_SetModule(swig_module_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyInstanceMethod_New", referenced from:
SWIG_PyInstanceMethod_New(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsDouble", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsLong", referenced from:
SWIG_AsVal_long(_object*, long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsUnsignedLong", referenced from:
SWIG_AsVal_unsigned_SS_long(_object*, unsigned long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsUnsignedLongLong", referenced from:
SWIG_AsVal_unsigned_SS_long_SS_long(_object*, unsigned long long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromLong", referenced from:
SWIG_From_int(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_From_ptrdiff_t(long) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_From_unsigned_SS_long(unsigned long) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_From_unsigned_SS_long_SS_long(unsigned long long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromSize_t", referenced from:
SWIG_From_unsigned_SS_int(unsigned int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromUnsignedLong", referenced from:
SWIG_From_unsigned_SS_long(unsigned long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromUnsignedLongLong", referenced from:
SWIG_From_unsigned_SS_long_SS_long(unsigned long long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromVoidPtr", referenced from:
SwigPyObject_long(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyModule_AddObject", referenced from:
SWIG_Python_SetModule(swig_module_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyModule_Create2", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyModule_GetDict", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Call", referenced from:
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_CallFunctionObjArgs", referenced from:
SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Free", referenced from:
SwigPyPacked_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_New(void*, unsigned long, swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_GenericGetAttr", referenced from:
SwigPyPacked_TypeOnce()::tmp in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_TypeOnce()::tmp in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_GetAttr", referenced from:
SWIG_Python_GetSwigThis(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_GetAttrString", referenced from:
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetSwigThis(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Init", referenced from:
SwigPyObject_New(void*, swig_type_info*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_New(void*, unsigned long, swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_newvarlink() in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_IsInstance", referenced from:
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_IsTrue", referenced from:
SWIG_AsVal_bool(_object*, bool*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_own(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Malloc", referenced from:
SwigPyObject_New(void*, swig_type_info*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_New(void*, unsigned long, swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_newvarlink() in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_SetAttr", referenced from:
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::container_owner<swig::pointer_category>::back_reference(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Str", referenced from:
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PySequence_Check", referenced from:
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::word>::SwigPySequence_Cont(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::list<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >, freeling::analysis>::asptr(_object*, std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::analysis>::SwigPySequence_Cont(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >, freeling::alternative>::asptr(_object*, std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::alternative>::SwigPySequence_Cont(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySequence_GetItem", referenced from:
swig::SwigPySequence_Cont<freeling::word>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Ref<freeling::word>::operator freeling::word() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::analysis>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Ref<freeling::analysis>::operator freeling::analysis() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::alternative>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Ref<freeling::alternative>::operator freeling::alternative() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::sentence>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySequence_Size", referenced from:
swig::SwigPySequence_Cont<freeling::word>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::analysis>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::alternative>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::sentence>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::paragraph>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::argument>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::predicate>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySlice_GetIndices", referenced from:
std_vector_Sl_freeling_word_Sg____delitem____SWIG_1(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_vector_Sl_freeling_word_Sg____getitem____SWIG_0(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_vector_Sl_freeling_word_Sg____setitem____SWIG_1(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_vector_Sl_freeling_word_Sg____setitem____SWIG_0(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_list_Sl_freeling_word_Sg____delitem____SWIG_1(std::__1::list<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_list_Sl_freeling_word_Sg____getitem____SWIG_0(std::__1::list<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_list_Sl_freeling_word_Sg____setitem____SWIG_1(std::__1::list<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySlice_Type", referenced from:
_wrap_VectorWord___delitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_VectorWord___getitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_VectorWord___setitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListWord___delitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListWord___getitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListWord___setitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListAnalysis___delitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyTuple_New", referenced from:
_wrap_SetString_equal_range(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SetString_insert(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<int, std::__1::allocator<int> >, int>::from(std::__1::list<int, std::__1::allocator<int> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >::from(std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from<std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >::from(std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyTuple_SetItem", referenced from:
_wrap_SetString_equal_range(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SetString_insert(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<int, std::__1::allocator<int> >, int>::from(std::__1::list<int, std::__1::allocator<int> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >::from(std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from<std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >::from(std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >::from(std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyType_IsSubtype", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyType_Ready", referenced from:
SwigPyPacked_TypeOnce() in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_TypeOnce() in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_type() in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyType_Type", referenced from:
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_AsUTF8String", referenced from:
SWIG_Python_str_AsChar(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_AsWideChar", referenced from:
SWIG_AsWCharPtrAndSize(_object*, wchar_t**, unsigned long*, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_Concat", referenced from:
SwigPyObject_repr(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_FromFormat", referenced from:
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_repr(SwigPyPacked*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_str(SwigPyPacked*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_repr(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_FromString", referenced from:
SWIG_Python_str_FromChar(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_FromWideChar", referenced from:
SWIG_FromWCharPtrAndSize(wchar_t const*, unsigned long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_GetLength", referenced from:
SWIG_AsWCharPtrAndSize(_object*, wchar_t**, unsigned long*, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_InternFromString", referenced from:
swig_varlink_repr(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_Py_DecRef", referenced from:
SwigPyObject_repr(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"__PyObject_New", referenced from:
SWIG_Python_NewPointerObj(_object*, void*, swig_type_info*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"__Py_NoneStruct", referenced from:
SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Py_Void() in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::list<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >, freeling::analysis>::asptr(_object*, std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >, freeling::alternative>::asptr(_object*, std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::sentence, std::__1::allocator<freeling::sentence> >, freeling::sentence>::asptr(_object*, std::__1::list<freeling::sentence, std::__1::allocator<freeling::sentence> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"__Py_NotImplementedStruct", referenced from:
_wrap_SwigPyIterator___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___add__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___sub__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ref__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [APIs/python3/_pyfreeling.dylib] Error 1
make[1]: *** [APIs/python3/CMakeFiles/_pyfreeling.dir/all] Error 2
make: *** [all] Error 2
It seems Cmake has changed the detection of python in newer versions In 3.10 it was detected with the command "FIND_PACKAGE(PythonLibs 3)" you'll find in APIs/python3/CMakeLists.txt
But since 3.12, it seems it is called FindPython3 https://cmake.org/cmake/help/v3.15/module/FindPython3.html#module:FindPython3
So if your cmake version is >=3.12, you need to change that line to "FIND_PACKAGE (Python3 COMPONENTS Interpreter Development)" And also adjust the name of the variables ${PYTHON_LIBRARIES} and ${PYTHON_INCLUDE_DIRS} to ${Python4_LIBRARIES} and ${Python3_INCLUDE_DIRS} respectively
OK. I edited the APIs/python3/CMakeLists.txt
that now has the following content:
FIND_PACKAGE (Python3 COMPONENTS Interpreter Development)
INCLUDE_DIRECTORIES(${Python3_INCLUDE_DIRS})
SET_PROPERTY(SOURCE freeling_pythonAPI.i PROPERTY CPLUSPLUS ON)
SET(CMAKE_SWIG_FLAGS "-py3")
SWIG_ADD_LIBRARY(pyfreeling TYPE SHARED LANGUAGE python SOURCES freeling_pythonAPI.i)
if(WIN32)
SWIG_LINK_LIBRARIES(pyfreeling freeling ${Python3_LIBRARIES} ${Boost_LIBRARIES})
else()
SWIG_LINK_LIBRARIES(pyfreeling freeling)
endif()
install(TARGETS _pyfreeling DESTINATION share/freeling/APIs/python3)
install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/pyfreeling.py ${CMAKE_CURRENT_SOURCE_DIR}/sample.py
DESTINATION share/freeling/APIs/python3)
Note that I used Python3_LIBRARIES
instead of your Python4_LIBRARIES
, I didn't see references to Python4_LIBRARIES
! Am I right?
What should I do with the FREELINGDIR
variable in the Makefile
from this same directory? Because I still have error, something changed, but I still can't compile FL 4.1 in MacOS
[100%] Linking CXX shared library _pyfreeling.dylib
cd /Users/ar/work/fl/FreeLing-4.1/build/APIs/python3 && /usr/local/Cellar/cmake/3.15.3/bin/cmake -E cmake_link_script CMakeFiles/_pyfreeling.dir/link.txt --verbose=1
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -mmacosx-version-min=10.14 -dynamiclib -Wl,-headerpad_max_install_names -L/usr/local/opt/icu4c/lib -o _pyfreeling.dylib -install_name @rpath/_pyfreeling.dylib CMakeFiles/_pyfreeling.dir/CMakeFiles/_pyfreeling.dir/freeling_pythonAPIPYTHON_wrap.cxx.o -L/usr/local/lib -Wl,-rpath,/usr/local/lib -Wl,-rpath,/Users/ar/work/fl/FreeLing-4.1/build/src/libfreeling -Wl,-rpath,/Users/ar/work/fl/FreeLing-4.1/build/src/libfoma -Wl,-rpath,/Users/ar/work/fl/FreeLing-4.1/build/src/libtreeler ../../src/libfreeling/libfreeling.dylib ../../src/libfoma/libfoma.dylib ../../src/libtreeler/libtreeler.dylib /usr/lib/libz.dylib /usr/local/lib/libboost_regex.dylib /usr/local/lib/libboost_filesystem.dylib /usr/local/lib/libboost_thread-mt.dylib /usr/local/lib/libboost_program_options.dylib /usr/local/opt/icu4c/lib/libicuuc.dylib /usr/local/opt/icu4c/lib/libicui18n.dylib
Undefined symbols for architecture x86_64:
"_PyArg_UnpackTuple", referenced from:
SwigPyObject_own(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyBool_FromLong", referenced from:
SWIG_From_bool(bool) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_richcompare(SwigPyObject*, SwigPyObject*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_own(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyBool_Type", referenced from:
SWIG_AsVal_bool(_object*, bool*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyBytes_AsStringAndSize", referenced from:
SWIG_Python_str_AsChar(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCFunction_NewEx", referenced from:
SWIG_PyInstanceMethod_New(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCFunction_Type", referenced from:
SWIG_PyInstanceMethod_New(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCapsule_GetPointer", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_DestroyModule(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCapsule_Import", referenced from:
SWIG_Python_GetModule(void*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyCapsule_New", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetModule(swig_module_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_GetItem", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_New", referenced from:
SWIG_Python_TypeCache() in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_SetItem", referenced from:
SWIG_Python_TypeQuery(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetSwigThis(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyDict_SetItemString", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_InstallConstants(_object*, swig_const_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetConstant(_object*, char const*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_Clear", referenced from:
_wrap_SwigPyIterator___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___add__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ref__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreeSiblingIteratorNode___ref__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyErr_Fetch", referenced from:
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_Format", referenced from:
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_getattr(swig_varlinkobject*, char*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_setattr(swig_varlinkobject*, char*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_GivenExceptionMatches", referenced from:
SWIG_Python_TypeErrorOccurred(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_Occurred", referenced from:
SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_GetSwigThis(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_AsVal_unsigned_SS_long(_object*, unsigned long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_TypeErrorOccurred(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_AsVal_long(_object*, long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_GetModule(void*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyErr_Restore", referenced from:
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_SetObject", referenced from:
SWIG_Python_SetErrorObj(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyErr_SetString", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetErrorMsg(_object*, char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_append(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyErr_WriteUnraisable", referenced from:
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_AttributeError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_getattr(swig_varlinkobject*, char*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_setattr(swig_varlinkobject*, char*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_IOError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_IndexError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_MemoryError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_OverflowError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<int, std::__1::allocator<int> >, int>::from(std::__1::list<int, std::__1::allocator<int> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >::from(std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::from(std::__1::list<freeling::word, std::__1::allocator<freeling::word> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double>, std::__1::allocator<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double> > >, std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double> >::from(std::__1::list<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double>, std::__1::allocator<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, double> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >, freeling::alternative>::from(std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >, freeling::analysis>::from(std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyExc_RuntimeError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_ExceptionType(swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_StopIteration", referenced from:
_wrap_SwigPyIterator_value(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator_next(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___next__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator_previous(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator_advance(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___iadd__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___isub__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyExc_SyntaxError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_SystemError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_TypeError", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_UnpackTuple(_object*, char const*, long, long, _object**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_TypeErrorOccurred(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_append(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyExc_ValueError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyExc_ZeroDivisionError", referenced from:
SWIG_Python_ErrorType(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyFloat_AsDouble", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyFloat_FromDouble", referenced from:
_wrap_PairDoubleString_first_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_PairStringDouble_second_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_analysis_get_prob(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_analysis_get_distance(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_config_options_MACO_ProbabilityThreshold_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_config_options_TAGGER_RelaxScaleFactor_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_config_options_TAGGER_RelaxEpsilon_get(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyFloat_Type", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyImport_AddModule", referenced from:
SWIG_Python_SetModule(swig_module_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyInstanceMethod_New", referenced from:
SWIG_PyInstanceMethod_New(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsDouble", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsLong", referenced from:
SWIG_AsVal_long(_object*, long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsUnsignedLong", referenced from:
SWIG_AsVal_unsigned_SS_long(_object*, unsigned long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_AsUnsignedLongLong", referenced from:
SWIG_AsVal_unsigned_SS_long_SS_long(_object*, unsigned long long*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromLong", referenced from:
SWIG_From_int(int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_From_ptrdiff_t(long) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_From_unsigned_SS_long(unsigned long) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_From_unsigned_SS_long_SS_long(unsigned long long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromSize_t", referenced from:
SWIG_From_unsigned_SS_int(unsigned int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromUnsignedLong", referenced from:
SWIG_From_unsigned_SS_long(unsigned long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromUnsignedLongLong", referenced from:
SWIG_From_unsigned_SS_long_SS_long(unsigned long long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyLong_FromVoidPtr", referenced from:
SwigPyObject_long(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyModule_AddObject", referenced from:
SWIG_Python_SetModule(swig_module_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyModule_Create2", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyModule_GetDict", referenced from:
_PyInit__pyfreeling in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Call", referenced from:
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_CallFunctionObjArgs", referenced from:
SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Free", referenced from:
SwigPyPacked_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_dealloc(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_New(void*, unsigned long, swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_GenericGetAttr", referenced from:
SwigPyPacked_TypeOnce()::tmp in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_TypeOnce()::tmp in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_GetAttr", referenced from:
SWIG_Python_GetSwigThis(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_GetAttrString", referenced from:
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_SetSwigThis(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Init", referenced from:
SwigPyObject_New(void*, swig_type_info*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_New(void*, unsigned long, swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_newvarlink() in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_IsInstance", referenced from:
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_IsTrue", referenced from:
SWIG_AsVal_bool(_object*, bool*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_own(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Malloc", referenced from:
SwigPyObject_New(void*, swig_type_info*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_New(void*, unsigned long, swig_type_info*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_newvarlink() in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_SetAttr", referenced from:
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::container_owner<swig::pointer_category>::back_reference(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyObject_Str", referenced from:
SWIG_Python_AddErrorMsg(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PySequence_Check", referenced from:
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::word>::SwigPySequence_Cont(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::list<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >, freeling::analysis>::asptr(_object*, std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::analysis>::SwigPySequence_Cont(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >, freeling::alternative>::asptr(_object*, std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::alternative>::SwigPySequence_Cont(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySequence_GetItem", referenced from:
swig::SwigPySequence_Cont<freeling::word>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Ref<freeling::word>::operator freeling::word() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::analysis>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Ref<freeling::analysis>::operator freeling::analysis() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::alternative>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Ref<freeling::alternative>::operator freeling::alternative() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::sentence>::check() const in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySequence_Size", referenced from:
swig::SwigPySequence_Cont<freeling::word>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::analysis>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::alternative>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::sentence>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::paragraph>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::argument>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::SwigPySequence_Cont<freeling::predicate>::size() const in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySlice_GetIndices", referenced from:
std_vector_Sl_freeling_word_Sg____delitem____SWIG_1(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_vector_Sl_freeling_word_Sg____getitem____SWIG_0(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_vector_Sl_freeling_word_Sg____setitem____SWIG_1(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_vector_Sl_freeling_word_Sg____setitem____SWIG_0(std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_list_Sl_freeling_word_Sg____delitem____SWIG_1(std::__1::list<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_list_Sl_freeling_word_Sg____getitem____SWIG_0(std::__1::list<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
std_list_Sl_freeling_word_Sg____setitem____SWIG_1(std::__1::list<freeling::word, std::__1::allocator<freeling::word> >*, PySliceObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PySlice_Type", referenced from:
_wrap_VectorWord___delitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_VectorWord___getitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_VectorWord___setitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListWord___delitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListWord___getitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListWord___setitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_ListAnalysis___delitem__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyTuple_New", referenced from:
_wrap_SetString_equal_range(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SetString_insert(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Python_NewShadowInstance(SwigPyClientData*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<int, std::__1::allocator<int> >, int>::from(std::__1::list<int, std::__1::allocator<int> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >::from(std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from<std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >::from(std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyTuple_SetItem", referenced from:
_wrap_SetString_equal_range(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SetString_insert(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<int, std::__1::allocator<int> >, int>::from(std::__1::list<int, std::__1::allocator<int> > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from_stdseq<std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > >::from(std::__1::list<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::allocator<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from<std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >::from(std::__1::pair<double, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_from<std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > >::from(std::__1::pair<std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >, std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> > > const&) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"_PyType_IsSubtype", referenced from:
SWIG_AsVal_double(_object*, double*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyType_Ready", referenced from:
SwigPyPacked_TypeOnce() in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_TypeOnce() in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_type() in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyType_Type", referenced from:
SwigPyClientData_New(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_AsUTF8String", referenced from:
SWIG_Python_str_AsChar(_object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_AsWideChar", referenced from:
SWIG_AsWCharPtrAndSize(_object*, wchar_t**, unsigned long*, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_Concat", referenced from:
SwigPyObject_repr(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_FromFormat", referenced from:
SWIG_Python_RaiseOrModifyTypeError(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_repr(SwigPyPacked*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyPacked_str(SwigPyPacked*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SwigPyObject_repr(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_FromString", referenced from:
SWIG_Python_str_FromChar(char const*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_FromWideChar", referenced from:
SWIG_FromWCharPtrAndSize(wchar_t const*, unsigned long) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_GetLength", referenced from:
SWIG_AsWCharPtrAndSize(_object*, wchar_t**, unsigned long*, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_PyUnicode_InternFromString", referenced from:
swig_varlink_repr(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"_Py_DecRef", referenced from:
SwigPyObject_repr(SwigPyObject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig_varlink_str(swig_varlinkobject*) in freeling_pythonAPIPYTHON_wrap.cxx.o
"__PyObject_New", referenced from:
SWIG_Python_NewPointerObj(_object*, void*, swig_type_info*, int) in freeling_pythonAPIPYTHON_wrap.cxx.o
"__Py_NoneStruct", referenced from:
SWIG_Python_ConvertPtrAndOwn(_object*, void**, swig_type_info*, int, int*) in freeling_pythonAPIPYTHON_wrap.cxx.o
SWIG_Py_Void() in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::vector<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::word, std::__1::allocator<freeling::word> >, freeling::word>::asptr(_object*, std::__1::list<freeling::word, std::__1::allocator<freeling::word> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >, freeling::analysis>::asptr(_object*, std::__1::list<freeling::analysis, std::__1::allocator<freeling::analysis> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >, freeling::alternative>::asptr(_object*, std::__1::list<freeling::alternative, std::__1::allocator<freeling::alternative> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
swig::traits_asptr_stdseq<std::__1::list<freeling::sentence, std::__1::allocator<freeling::sentence> >, freeling::sentence>::asptr(_object*, std::__1::list<freeling::sentence, std::__1::allocator<freeling::sentence> >**) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
"__Py_NotImplementedStruct", referenced from:
_wrap_SwigPyIterator___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___add__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_SwigPyIterator___sub__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___eq__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ne__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
_wrap_TreePreorderIteratorNode___ref__(_object*, _object*) in freeling_pythonAPIPYTHON_wrap.cxx.o
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [APIs/python3/_pyfreeling.dylib] Error 1
make[1]: *** [APIs/python3/CMakeFiles/_pyfreeling.dir/all] Error 2
make: *** [all] Error 2
"python4" was a typo, it should be "python3"
Using 'cmake -DPYTHON3_API=ON' is the recommended way of building the API
Alternatively, you can run cmake without option -DPYTHON3_API=ON, and manually create the API with the Makefile: That is, you install FreeLing without API using cmake, make, and make install. Then you run the Makefile setting FREELINGDIR to the directroy where you installed FreeLing (/usr/local by default)
However, this is a plan B using outdated code. The best way is to use cmake to locate python and generate the API with -DPYTHON3_API=ON
Note that when you modify any CMakeLists.txt file, you have to clean your build directory (rm -rf *), and run cmake again, so it searches for dependencies again, and re-generates the makefiles. Then, you run make, which will use the newly generated makefiles.
If cmake has some problem finding python, it should report an error (in that case, there is no point in running make)
Yes, I prefer plan A. Yes, I have cleaned up the build directory before all my commands above. This is the output of cmake:
$ rm -rf *
$ cmake .. -DPYTHON3_API=ON -DICU_ROOT=/usr/local/opt/icu4c
-- The C compiler identification is AppleClang 11.0.0.11000033
-- The CXX compiler identification is AppleClang 11.0.0.11000033
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found ZLIB: /usr/lib/libz.dylib (found version "1.2.11")
CMake Warning at /usr/local/lib/cmake/boost_regex-1.71.0/libboost_regex-variant-shared.cmake:59 (message):
Target Boost::regex already has an imported location
'/usr/local/lib/libboost_regex-mt.dylib', which will be overwritten with
'/usr/local/lib/libboost_regex.dylib'
Call Stack (most recent call first):
/usr/local/lib/cmake/boost_regex-1.71.0/boost_regex-config.cmake:43 (include)
/usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:117 (find_package)
/usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:182 (boost_find_component)
/usr/local/Cellar/cmake/3.15.3/share/cmake/Modules/FindBoost.cmake:443 (find_package)
CMakeLists.txt:43 (find_package)
CMake Warning at /usr/local/lib/cmake/boost_filesystem-1.71.0/libboost_filesystem-variant-shared.cmake:59 (message):
Target Boost::filesystem already has an imported location
'/usr/local/lib/libboost_filesystem-mt.dylib', which will be overwritten
with '/usr/local/lib/libboost_filesystem.dylib'
Call Stack (most recent call first):
/usr/local/lib/cmake/boost_filesystem-1.71.0/boost_filesystem-config.cmake:43 (include)
/usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:117 (find_package)
/usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:182 (boost_find_component)
/usr/local/Cellar/cmake/3.15.3/share/cmake/Modules/FindBoost.cmake:443 (find_package)
CMakeLists.txt:43 (find_package)
CMake Warning at /usr/local/lib/cmake/boost_program_options-1.71.0/libboost_program_options-variant-shared.cmake:59 (message):
Target Boost::program_options already has an imported location
'/usr/local/lib/libboost_program_options-mt.dylib', which will be
overwritten with '/usr/local/lib/libboost_program_options.dylib'
Call Stack (most recent call first):
/usr/local/lib/cmake/boost_program_options-1.71.0/boost_program_options-config.cmake:43 (include)
/usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:117 (find_package)
/usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:182 (boost_find_component)
/usr/local/Cellar/cmake/3.15.3/share/cmake/Modules/FindBoost.cmake:443 (find_package)
CMakeLists.txt:43 (find_package)
-- Found Boost: /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake (found version "1.71.0") found components: regex filesystem thread program_options
CMake Warning (dev) at CMakeLists.txt:51 (find_package):
Policy CMP0074 is not set: find_package uses <PackageName>_ROOT variables.
Run "cmake --help-policy CMP0074" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
CMake variable ICU_ROOT is set to:
/usr/local/opt/icu4c
For compatibility, CMake is ignoring the variable.
This warning is for project developers. Use -Wno-dev to suppress it.
-- Found the following ICU libraries:
-- data (required)
-- i18n (required)
-- uc (required)
-- Found ICU: /usr/local/opt/icu4c/include (found version "64.2")
-- Found Threads: TRUE
-- Found SWIG: /usr/local/bin/swig (found version "4.0.1")
-- Found Python3: /usr/local/Frameworks/Python.framework/Versions/3.7/bin/python3.7 (found version "3.7.4") found components: Interpreter Development
CMake Warning (dev) at /usr/local/Cellar/cmake/3.15.3/share/cmake/Modules/UseSWIG.cmake:607 (message):
Policy CMP0078 is not set: UseSWIG generates standard target names. Run
"cmake --help-policy CMP0078" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
Call Stack (most recent call first):
APIs/python3/CMakeLists.txt:9 (SWIG_ADD_LIBRARY)
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /usr/local/Cellar/cmake/3.15.3/share/cmake/Modules/UseSWIG.cmake:460 (message):
Policy CMP0086 is not set: UseSWIG honors SWIG_MODULE_NAME via -module
flag. Run "cmake --help-policy CMP0086" for policy details. Use the
cmake_policy command to set the policy and suppress this warning.
Call Stack (most recent call first):
/usr/local/Cellar/cmake/3.15.3/share/cmake/Modules/UseSWIG.cmake:702 (SWIG_ADD_SOURCE_TO_MODULE)
APIs/python3/CMakeLists.txt:9 (SWIG_ADD_LIBRARY)
This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/ar/work/fl/FreeLing-4.1/build
But I am still getting the error reported in the last comment.
All these warnings in cmake make me think that the problem is in how newer cmake locates libraries. So, cmake configuration files should be adapted to work on newer versions, which may be quite a struggle
Try adding the line
cmake_policy(VERSION 3.10)
at the beggining of CMakeLists.txt in the main directory (and after --or maybe instead of-- cmake_minimum_required
command)
Another thing you can try (instead of, or in addition to the previous one) is replacing in APIs/python3/CMakeLists.txt, the lines
if(WIN32)
SWIG_LINK_LIBRARIES(pyfreeling freeling ${PYTHON_LIBRARIES} ${Boost_LIBRARIES})
else()
SWIG_LINK_LIBRARIES(pyfreeling freeling)
endif()
with simply
SWIG_LINK_LIBRARIES(pyfreeling freeling ${PYTHON_LIBRARIES} ${Boost_LIBRARIES})
If that does not work, maybe downgrading to a cmake version previous to 3.12 would...
None of the alternatives above worked! :-( Let us see if it is possible, https://stackoverflow.com/questions/58148541/how-to-install-cmake-version-3-12-using-homebrew.
You won't be able to downgrade cmake if you have the latest macos, an alternative would be to install freeling using brew (which will install with no problems) and then compiling the apis by hand, but I don't know how to do that.
I'm having a similar problem:
`[ 6%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/io.cc.o cd /Users/ndr235/FreeLing/build/src/libdynet/dynet && /Library/Developer/CommandLineTools/usr/bin/c++ -DBOOST_ALL_DYN_LINK -DBOOST_ALL_NO_LIB -DPACKAGE_STRING="\"FreeLing 4.1\"" -DVERSION=4.1 -Ddynet_EXPORTS -I/Users/ndr235/FreeLing/src/include -I/Users/ndr235/FreeLing/src/libdynet -I/Users/ndr235/FreeLing/src/libdynet/external/easyloggingpp/src -I/Users/ndr235/FreeLing/src/eigen3 -I/Users/ndr235/FreeLing/build/src/libdynet -DEIGEN_FAST_MATH -fPIC -fno-finite-math-only -Wall -Wno-missing-braces -std=c++11 -g -funroll-loops -Ofast -march=native -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk -fPIC -std=gnu++11 -o CMakeFiles/dynet.dir/io.cc.o -c /Users/ndr235/FreeLing/src/libdynet/dynet/io.cc /Users/ndr235/FreeLing/src/libdynet/dynet/io.cc:7:10: fatal error: 'boost/iostreams/filtering_streambuf.hpp' file not found
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated. make[2]: [src/libdynet/dynet/CMakeFiles/dynet.dir/io.cc.o] Error 1 make[1]: [src/libdynet/dynet/CMakeFiles/dynet.dir/all] Error 2 make: *** [all] Error 2 `
So, I was able to install freeling using homebrew, but when compiling the python API (using my anaconda base env) I get the following error:
`Battlecruiser:python3 nd235$ make
g++ -dynamiclib -o _freeling.so freeling_pythonAPI.cxx -lboost_system -lpython3.6 -lfreeling -I/usr/local/Cellar/freeling/4.1_3/include -L/usr/local/Cellar/freeling/4.1_3/lib -I/Users/ndr235/anaconda3/include/python3.6m -I/usr/local/opt/icu4c/include -L/usr/local/opt/icu4c/lib -fPIC -std=c++0x
In file included from freeling_pythonAPI.cxx:2944:
In file included from /usr/local/Cellar/freeling/4.1_3/include/freeling.h:50:
In file included from /usr/local/Cellar/freeling/4.1_3/include/freeling/morfo/dep_treeler.h:49:
In file included from /usr/local/Cellar/freeling/4.1_3/include/treeler/dep/dependency_parser.h:42:
In file included from /usr/local/Cellar/freeling/4.1_3/include/treeler/control/models.h:50:
In file included from /usr/local/Cellar/freeling/4.1_3/include/treeler/tag/tag.h:43:
In file included from /usr/local/Cellar/freeling/4.1_3/include/treeler/tag/fgen-tag.h:9:
In file included from /usr/local/Cellar/freeling/4.1_3/include/treeler/base/feature-vector.h:42:
In file included from /usr/local/Cellar/freeling/4.1_3/include/treeler/base/fidx.h:41:
/usr/local/Cellar/freeling/4.1_3/include/treeler/base/feature-idx-v0.h:71:7: warning: 'register' storage class specifier is deprecated and incompatible with C++17
[-Wdeprecated-register]
register uint32_t a = (uint32_t)(t & 0xffffffff);
^~~~~
/usr/local/Cellar/freeling/4.1_3/include/treeler/base/feature-idx-v0.h:73:7: warning: 'register' storage class specifier is deprecated and incompatible with C++17
[-Wdeprecated-register]
register uint32_t b = (uint32_t)((t >> 32) & 0xffffffff);
^~~~~
/usr/local/Cellar/freeling/4.1_3/include/treeler/base/feature-idx-v0.h:75:7: warning: 'register' storage class specifier is deprecated and incompatible with C++17
[-Wdeprecated-register]
register uint32_t c = 0;
^~~~~
freeling_pythonAPI.cxx:7642:22: error: no member named 'analyzer_config' in namespace 'freeling'
typedef freeling::analyzer_config::config_options config_options;
freeling_pythonAPI.cxx:7643:22: error: no member named 'analyzer_config' in namespace 'freeling'
typedef freeling::analyzer_config::invoke_options invoke_options;
~~~~~~~~~~^
freeling_pythonAPI.cxx:7644:22: error: no member named 'analyzer_config' in namespace 'freeling'
typedef freeling::analyzer_config::status status;
~~~~~~~~~~^
freeling_pythonAPI.cxx:76253:19: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
if (arg1) (arg1)->Lang = *arg2;
~~~~~~^ ~~~~
freeling_pythonAPI.cxx:76278:38: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
result = (std::wstring *) & ((arg1)->Lang);
~~~~~~^ ~~~~
freeling_pythonAPI.cxx:76312:19: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
if (arg1) (arg1)->TOK_TokenizerFile = *arg2;
~~~~~~^ ~~~~~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76337:38: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
result = (std::wstring *) & ((arg1)->TOK_TokenizerFile);
~~~~~~^ ~~~~~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76371:19: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
if (arg1) (arg1)->SPLIT_SplitterFile = *arg2;
~~~~~~^ ~~~~~~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76396:38: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
result = (std::wstring *) & ((arg1)->SPLIT_SplitterFile);
~~~~~~^ ~~~~~~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76430:19: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
if (arg1) (arg1)->MACO_Decimal = *arg2;
~~~~~~^ ~~~~~~~~~~~~
freeling_pythonAPI.cxx:76455:38: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
result = (std::wstring *) & ((arg1)->MACO_Decimal);
~~~~~~^ ~~~~~~~~~~~~
freeling_pythonAPI.cxx:76489:19: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
if (arg1) (arg1)->MACO_Thousand = *arg2;
~~~~~~^ ~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76514:38: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
result = (std::wstring *) & ((arg1)->MACO_Thousand);
~~~~~~^ ~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76548:19: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
if (arg1) (arg1)->MACO_UserMapFile = *arg2;
~~~~~~^ ~~~~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76573:38: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
result = (std::wstring *) & ((arg1)->MACO_UserMapFile);
~~~~~~^ ~~~~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76607:19: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
if (arg1) (arg1)->MACO_LocutionsFile = *arg2;
~~~~~~^ ~~~~~~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76632:38: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
result = (std::wstring *) & ((arg1)->MACO_LocutionsFile);
~~~~~~^ ~~~~~~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76666:19: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
if (arg1) (arg1)->MACO_QuantitiesFile = *arg2;
~~~~~~^ ~~~~~~~~~~~~~~~~~~~
freeling_pythonAPI.cxx:76691:38: error: member reference base type 'freeling::config_options' (aka 'int') is not a structure or union
result = (std::wstring *) & ((arg1)->MACO_QuantitiesFile);
~~~~~~^ ~~~~~~~~~~~~~~~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
3 warnings and 20 errors generated.
make: *** [_pyfreeling.so] Error 1`
You are trying to compile the API in the latest development version, but APIs are only guaranteed to be updated on released stable versions. In development versions they usually lag behind changes in the code (since FreeLing is a C++ project, develepment efforts are focused on C++ functionalities. APIs are updated once in a while, and when a stable release is produced).
You should use code from 4.1 branch or package
Back at square one, I can't install because I get the same error:
Scanning dependencies of target dynet [ 1%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/aligned-mem-pool.cc.o [ 1%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/cfsm-builder.cc.o [ 1%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/deep-lstm.cc.o [ 2%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/devices.cc.o [ 2%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/dict.cc.o [ 2%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/dim.cc.o [ 3%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/dynet.cc.o [ 3%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/exec.cc.o [ 3%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/expr.cc.o [ 3%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/fast-lstm.cc.o [ 4%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/globals.cc.o [ 4%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/grad-check.cc.o [ 4%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/graph.cc.o [ 5%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/gru.cc.o [ 5%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/hsm-builder.cc.o [ 5%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/init.cc.o [ 6%] Building CXX object src/libdynet/dynet/CMakeFiles/dynet.dir/io.cc.o /Users/ndr235/FreeLing/src/libdynet/dynet/io.cc:7:10: fatal error: 'boost/iostreams/filtering_streambuf.hpp' file not found
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated. make[2]: [src/libdynet/dynet/CMakeFiles/dynet.dir/io.cc.o] Error 1 make[1]: [src/libdynet/dynet/CMakeFiles/dynet.dir/all] Error 2 make: *** [all] Error 2
But I've checked my boost installation and it seems to be fine:
/usr/local/Cellar/boost/1.71.0/include/boost/iostreams
drwxr-xr-x 46 nd235 staff 1472 14 ago 14:29 detail drwxr-xr-x 8 nd235 staff 256 14 ago 14:29 device drwxr-xr-x 16 nd235 staff 512 14 ago 14:29 filter -rw-r--r-- 1 nd235 staff 6970 14 ago 14:29 filtering_stream.hpp -rw-r--r-- 1 nd235 staff 3081 14 ago 14:29 filtering_streambuf.hpp <-- this guy here -rw-r--r-- 1 nd235 staff 3205 14 ago 14:29 flush.hpp -rw-r--r-- 1 nd235 staff 545 14 ago 14:29 get.hpp
Otherwise, the cmake process works ok
if the file is there and the compiler does not find it, that means the compiler is missing some include path.
run "make VERBOSE=1" and you'll see which compilation command is being used, and which include paths are set.
Also, when you run cmake on a clean build directory, check whether it is finding boost, and where (you may have more than one boost version installed, and maybe it is finding the wrong one)
Yes it seems that there's a problem with boost installations
$ rm -rf * $ cmake .. -DPYTHON3_API=ON -DICU_ROOT=/usr/local/opt/icu4c -- The C compiler identification is AppleClang 11.0.0.11000020 -- The CXX compiler identification is AppleClang 11.0.0.11000020 -- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc -- Check for working C compiler: /Library/Developer/CommandLineTools/usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ -- Check for working CXX compiler: /Library/Developer/CommandLineTools/usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Found ZLIB: /usr/lib/libz.dylib (found version "1.2.11") CMake Warning at /usr/local/lib/cmake/boost_regex-1.71.0/libboost_regex-variant-shared.cmake:59 (message): Target Boost::regex already has an imported location '/usr/local/lib/libboost_regex-mt.dylib', which will be overwritten with '/usr/local/lib/libboost_regex.dylib' Call Stack (most recent call first): /usr/local/lib/cmake/boost_regex-1.71.0/boost_regex-config.cmake:43 (include) /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:117 (find_package) /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:182 (boost_find_component) /usr/local/Cellar/cmake/3.15.4/share/cmake/Modules/FindBoost.cmake:443 (find_package) CMakeLists.txt:43 (find_package)
CMake Warning at /usr/local/lib/cmake/boost_filesystem-1.71.0/libboost_filesystem-variant-shared.cmake:59 (message): Target Boost::filesystem already has an imported location '/usr/local/lib/libboost_filesystem-mt.dylib', which will be overwritten with '/usr/local/lib/libboost_filesystem.dylib' Call Stack (most recent call first): /usr/local/lib/cmake/boost_filesystem-1.71.0/boost_filesystem-config.cmake:43 (include) /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:117 (find_package) /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:182 (boost_find_component) /usr/local/Cellar/cmake/3.15.4/share/cmake/Modules/FindBoost.cmake:443 (find_package) CMakeLists.txt:43 (find_package)
CMake Warning at /usr/local/lib/cmake/boost_program_options-1.71.0/libboost_program_options-variant-shared.cmake:59 (message): Target Boost::program_options already has an imported location '/usr/local/lib/libboost_program_options-mt.dylib', which will be overwritten with '/usr/local/lib/libboost_program_options.dylib' Call Stack (most recent call first): /usr/local/lib/cmake/boost_program_options-1.71.0/boost_program_options-config.cmake:43 (include) /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:117 (find_package) /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:182 (boost_find_component) /usr/local/Cellar/cmake/3.15.4/share/cmake/Modules/FindBoost.cmake:443 (find_package) CMakeLists.txt:43 (find_package)
CMake Warning at /usr/local/lib/cmake/boost_iostreams-1.71.0/libboost_iostreams-variant-shared.cmake:59 (message): Target Boost::iostreams already has an imported location '/usr/local/lib/libboost_iostreams-mt.dylib', which will be overwritten with '/usr/local/lib/libboost_iostreams.dylib' Call Stack (most recent call first): /usr/local/lib/cmake/boost_iostreams-1.71.0/boost_iostreams-config.cmake:43 (include) /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:117 (find_package) /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake:182 (boost_find_component) /usr/local/Cellar/cmake/3.15.4/share/cmake/Modules/FindBoost.cmake:443 (find_package) CMakeLists.txt:43 (find_package)
-- Found Boost: /usr/local/lib/cmake/Boost-1.71.0/BoostConfig.cmake (found version "1.71.0") found components: regex filesystem thread program_options iostreams
CMake Warning (dev) at CMakeLists.txt:51 (find_package):
Policy CMP0074 is not set: find_package uses
CMake variable ICU_ROOT is set to:
/usr/local/opt/icu4c
For compatibility, CMake is ignoring the variable. This warning is for project developers. Use -Wno-dev to suppress it.
-- Found the following ICU libraries:
-- data (required)
-- i18n (required)
-- uc (required)
-- Found ICU: /usr/local/opt/icu4c/include (found version "64.2")
-- Found Threads: TRUE
-- BACKEND not specified, defaulting to eigen.
-- Eigen dir is /Users/ndr235/FreeLing/src/eigen3
-- Found SWIG: /usr/local/bin/swig (found version "4.0.1")
-- Could NOT find PythonLibs (missing: PYTHON_LIBRARIES PYTHON_INCLUDE_DIRS) (Required is at least version "3")
CMake Warning (dev) at /usr/local/Cellar/cmake/3.15.4/share/cmake/Modules/UseSWIG.cmake:607 (message):
Policy CMP0078 is not set: UseSWIG generates standard target names. Run
"cmake --help-policy CMP0078" for policy details. Use the cmake_policy
command to set the policy and suppress this warning.
Call Stack (most recent call first): APIs/python3/CMakeLists.txt:9 (SWIG_ADD_LIBRARY) This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at /usr/local/Cellar/cmake/3.15.4/share/cmake/Modules/UseSWIG.cmake:460 (message): Policy CMP0086 is not set: UseSWIG honors SWIG_MODULE_NAME via -module flag. Run "cmake --help-policy CMP0086" for policy details. Use the cmake_policy command to set the policy and suppress this warning.
Call Stack (most recent call first): /usr/local/Cellar/cmake/3.15.4/share/cmake/Modules/UseSWIG.cmake:702 (SWIG_ADD_SOURCE_TO_MODULE) APIs/python3/CMakeLists.txt:9 (SWIG_ADD_LIBRARY) This warning is for project developers. Use -Wno-dev to suppress it.
-- Configuring done -- Generating done -- Build files have been written to: /Users/ndr235/FreeLing/build
Good, now you know where the problem is. Check how to properly install boost (did you install from source?) and make sure you have only one version.
the purpose of CMake is making sure everything is all right before building FreeLing. If CMake fails or produces errors, there is no point in going on.
For instance, it complains about missing python libraries. No wonder building the python API fails.
I don't know the current status of this issue. But I tried again with the branch 4.1 (HEAD of the branch) and
% cmake .. -DPYTHON3_API=ON -DICU_ROOT=/usr/local/opt/icu4c
% make
...
[ 91%] Linking CXX shared library libfreeling.dylib
Undefined symbols for architecture x86_64:
"icu_64::Collator::createInstance(icu_64::Locale const&, UErrorCode&)", referenced from:
boost::re_detail_107200::icu_regex_traits_implementation::icu_regex_traits_implementation(icu_64::Locale const&) in regexp.cc.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [src/libfreeling/libfreeling.dylib] Error 1
make[1]: *** [src/libfreeling/CMakeFiles/freeling.dir/all] Error 2
make: *** [all] Error 2
I have Python3 and according to https://stackoverflow.com/questions/32578106/how-to-install-python-devel-in-mac-os, this is enough. Is it right? For boost:
% brew info boost
boost: stable 1.72.0 (bottled), HEAD
Collection of portable C++ source libraries
https://www.boost.org/
/usr/local/Cellar/boost/1.72.0 (14,466 files, 648.6MB) *
Poured from bottle on 2019-12-30 at 23:16:39
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/boost.rb
==> Dependencies
Required: icu4c ✔
==> Options
--HEAD
Install HEAD version
==> Analytics
install: 40,018 (30 days), 122,402 (90 days), 566,617 (365 days)
install-on-request: 14,261 (30 days), 43,085 (90 days), 195,352 (365 days)
build-error: 0 (30 days)
the problem does not seem related to python headers, but to boost and icu libraries... It may be a version problem... Which versions are you using? Could you try downgrading to older versions?
Hi! I've been playing a bit with this library and I'm able to compile it using Macos 10.15.3 (clang 11), with boost-1.72.0 and different versions of ICU (64.2, 65.1 and 66.1). Using dynamic linking for freeling
libraries (static fails for me #96). With other versions of boost it should work too.
I'm compiling ICU and Boost from sources using Conan, and I'm preparing a recipe for Freeling 4.1 too. It will take some time to arrive in ConanCenter, I need another PR to be accepted first (adding ICU to Boost). @arademaker, you can follow these steps to get ICU and boost (using Conan and eventually my fork of conan-center-index
):
git clone https://github.com/jgsogo/conan-center-index && cd conan-center-index
feat/boost-icu
branch conan create recipes/boost/all/conanfile.py boost/1.72.0@ -o boost:icu=True -s compiler.cppstd=11 --build missing
boost
and icu
from the Conan cacheEasiest way to use Conan generated binaries with Freeling:
mkdir _build && cd _build
Write a conanfile.txt
:
[requires]
boost/1.72.0
icu/64.2
[generators]
cmake_find_package
[options]
boost:icu=True
conan install conanfile.txt -s compiler.cppstd=11
. It will create some FindXXXX.cmake
files you can use to build Freelingcmake .. -DCMAKE_MODULE_PATH=$(pwd)
cmake --build . [-jXX]
(I wrote the previous steps from the top of my head, if they fail let me know and I'll go step by step to reproduce the process)
I'm working on a Conan recipe to install Freeling, it works so far (it is the branch freeling
in my fork of ConanCenter), but don't have yet recipes available for Swig and Python so I cannot build the APIs using Conan dependencies... I hope in the near future we'll manage to provide it.
@lluisp if you think I can help with the build system and the dependencies (I see there are some embedded into this repo) let me know. The best for me would be to help here while I work on the Conan recipe, I'd try to get rid of embedded third-parties (eigen, foma, dynet, CRFsuite) to make them external dependencies... But I don't know if you have any idea in mind, I can't see any issue about it.
That sounds great! I'd prefer to have dependencies included, since:
About conan, it sounds nice, but again, I prefer to keep it simple for non-expert users. My ideal scenario would be that you could fix CMakefile.txt files to work well in MacOS. In this way, I can create binary files for Mac, or any Mac user can compile it natively.
thanks!
Ok, let's go step by step. I'll start with easy PRs improving the CMake files so everything works smoothly. We can talk about dependency management in the future 😉 Do you want me to open an issue first or with the PR is enough?
Sorry for the noise in this thread not related to the initial topic
PR will be enough, thanks!
On 7/4/20 13:46, Javier G. Sogo wrote:
Ok, let's go step by step. I'll start with easy PRs improving the CMake files so everything works smoothly. We can talk about dependency management in the future 😉 Do you want me to open an issue first or with the PR is enough?
Sorry for the noise in this thread not related to the initial topic
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/TALP-UPC/FreeLing/issues/90#issuecomment-610339717, or unsubscribe https://github.com/notifications/unsubscribe-auth/AANH567IGH7JT3ZAUJF4R7DRLMHCFANCNFSM4IZEQWAA.
The boost library in brew does not contain the
with-icu4c
anymore: