我正在尝试在x86_64 GNU / Linux中运行由FCC开发的名为SATFC的软件。该软件调用了一个名为satenstein的sat-solver,当它出现时,我收到以下错误消息:
java:符号查找错误:/tmp/libjnasatenstein_15758433517075266088.so:未定义的符号:AddToList1
**请注意,我已经按照指示的软件手册在系统中设置了satenstein。
感谢您的帮助!
***编辑
我运行:nm -D libjnasatenstein_15758433517075266088.so 检查该库,它显示有关该符号的以下内容:
------------ U AddToList1
答案 0 :(得分:1)
这可能为时已晚,但我正在使用同一个 SATFC 库并面临同样的问题。经过大量挖掘,我能够解决它。我认为 SAtenstein 构建代码存在问题,我必须对其进行调整才能使其正常工作。导航到 SATenstein 源目录(如果您在 SATFC 项目中使用源,则它应该位于 satfc/src/dist/satenstein/ubcsat_stein
)。在里面,编辑 CMakeLists.txt 文件:将标志 -std=gnu89
添加到 CMAKE_C_FLAGS。重新编译SATenstein 项目。它应该可以工作。
答案 1 :(得分:0)
最有可能与LD_LIBRARY_PATH env变量未设置为包括satenstein-libs相同,将其附加到LD_LIBRARY_PATH
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:<path_to_satenstein_lib>