有没有简单的方法可以在运行时将本地构建的库链接到使用CMAKE的测试?
例如:
enable_testing()
add_executable(Test test/Test.cpp)
target_link_libraries(Test -L../lib/libzmq/build/lib/ zmq)
add_test(
NAME TestClientZmq
COMMAND "LD_PRELOAD=../lib/libzmq/build/lib/libzmq.so Test")
运行测试会在运行时抱怨缺少的库:
error while loading shared libraries: libzmq.so.4.2.0: cannot open shared object file: No such file or directory
我可以:
LD_PRELOAD
我更喜欢在cmake中做所有事情,因为我认为最好将所有这些配置放在一个地方以避免将来出现错误。
答案 0 :(得分:0)
添加
CMakeLists.txt
到objdump -x Test | grep RPATH
。正如本wiki article中所述。
构建之后,使用以下命令确保正确设置RPATH:
select * from questions where category_id=$category_id ORDER BY RAND() LIMIT 12