googleprojectzero / functionsimsearch

Some C++ example code to demonstrate how to perform code similarity searches using SimHashing.
Apache License 2.0
556 stars 96 forks source link

Python bindings broken #12

Open bmihaila opened 5 years ago

bmihaila commented 5 years ago

Compiled everything in the docker way and code runs. Building the python bindings and then trying to run some code that needs them, breaks though.

Step to repro: build python bindings as described in README:

root@6770c506c67a:/code/functionsimsearch# python3 ./setup.py install --user
running install
running build
running build_ext
building 'functionsimsearch' extension
creating build/temp.linux-x86_64-3.6
creating build/temp.linux-x86_64-3.6/disassembly
creating build/temp.linux-x86_64-3.6/searchbackend
creating build/temp.linux-x86_64-3.6/util
creating build/temp.linux-x86_64-3.6/pybindings
...

then try to run some python code gives the error:

root@6770c506c67a:/code/functionsimsearch/pybindings# python3 pybindings_test.py
Traceback (most recent call last):
  File "pybindings_test.py", line 1, in <module>
    import functionsimsearch, unittest
ImportError: /root/.local/lib/python3.6/site-packages/functionsimsearch.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _Z26ExtractImmediateFromStringRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorImSaImEE
root@6770c506c67a:/code/functionsimsearch/pybindings# python pybindings_test.py
Traceback (most recent call last):
  File "pybindings_test.py", line 1, in <module>
    import functionsimsearch, unittest
ImportError: /root/.local/lib/python2.7/site-packages/functionsimsearch.so: undefined symbol: _Z26ExtractImmediateFromStringRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorImSaImEE
thomasdullien commented 5 years ago

Hey there,

I had forgotten to add disassembly/extractimmediate.cpp to the setup.py file, this should be fixed now. You will probably have to clean / remove your old build files.

Cheers, Thomas

Am Mo., 29. Okt. 2018 um 11:54 Uhr schrieb Bogdan Mihaila < notifications@github.com>:

Compiled everything in the docker way and code runs. Building the python bindings and then trying to run some code that needs them, breaks though.

Step to repro: build python bindings as described in README:

root@6770c506c67a:/code/functionsimsearch# python3 ./setup.py install --user running install running build running build_ext building 'functionsimsearch' extension creating build/temp.linux-x86_64-3.6 creating build/temp.linux-x86_64-3.6/disassembly creating build/temp.linux-x86_64-3.6/searchbackend creating build/temp.linux-x86_64-3.6/util creating build/temp.linux-x86_64-3.6/pybindings ...

then try to run some python code gives the error:

root@6770c506c67a:/code/functionsimsearch/pybindings# python3 pybindings_test.py Traceback (most recent call last): File "pybindings_test.py", line 1, in import functionsimsearch, unittest ImportError: /root/.local/lib/python3.6/site-packages/functionsimsearch.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _Z26ExtractImmediateFromStringRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorImSaImEE root@6770c506c67a:/code/functionsimsearch/pybindings# python pybindings_test.py Traceback (most recent call last): File "pybindings_test.py", line 1, in import functionsimsearch, unittest ImportError: /root/.local/lib/python2.7/site-packages/functionsimsearch.so: undefined symbol: _Z26ExtractImmediateFromStringRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPSt6vectorImSaImEE

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/googleprojectzero/functionsimsearch/issues/12, or mute the thread https://github.com/notifications/unsubscribe-auth/AEYBvNg9bcZ6StHSu3sv99IiRIQGhF2Hks5upt5zgaJpZM4X-6yV .