(原)netbeans中使用libtorch

转载请注明到处:html

http://www.javashuo.com/article/p-ewhzsxkf-du.htmlc++

说明:第一种方式在netbeans中没法debug代码,设置了断点也不会在断点处中止,而是直接过去了;第二种方式能够debug代码。app

1. 使用CMakeLists.txt

将以前(http://www.javashuo.com/article/p-sjyqerka-eb.html)写好的CMakeLists.txt和example-app.cpp放到某文件夹内,如测试

/media/xxx/disk1T/code/C/testxxui

①选择具体路径spa

② 选择custom,以下图所示debug

netbeans----file----new----c/c++ project with existing sources3d

③选择当前目录下一个目录(先新建build,而后选择该目录,如/media/xxx /testxx)调试

④处输入code

cmake -DCMAKE_PREFIX_PATH=/home/xxx/libtorch/libtorch -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0 -DCUDA_NVCC_EXECUTABLE=/usr/local/cuda-10.0/bin -DCUDA_INCLUDE_DIRS=/usr/local/cuda-10.0/include ..

以下图所示。

此处直接输入

cmake -DCMAKE_PREFIX_PATH=/path/to/libtorch ..

失败了。。。

剩下的全都默认就好了。

以后就能够编译成功了。

处可选中,这样netbeans每次编译,都会根据CMakeLists.txt从新生成工程,避免修改CMakeLists.txt后,工程不根据CMakeLists.txt更新。

2. 直接设置netbeans工程

①新建工程选择C/C++ Application,以下图所示。

②设置工程名字,路径等。同时,选择C++11,以下图所示。

③工程上右键,选择属性properties页面,以下图。

④C++ Compiler中的Include Directories中,输入libtorch的include目录,如/home/xxx/libtorch/include。以下图。

⑤Linker页面,分别设置Additional Library Directories和RunTime Search Directories,以下面两图所示(因为我这里使用的是anaconda,于是把libtorch的lib和anaconda3的lib都加进去了)。

⑥ 在linker的Libraries中,选择C10和torch库,以下图所示(因为工程中用了opencv,于是在Add PkgConfig Library中选择了opencv),点击Add library,在libtorch的lib目录下,分别选择libc10.so和libtorch.so,即可以获得c10和torch。

通过上面的设置以后,即可以在netbeans中编译及调试使用libtorch的工程了。

说明:

A 第5步中,若是不设置RunTime Search Directories,可能会提示下面的错误:

B 另外一方面,将全部的相关库都加到第6步的library中,能够编译成功(没有测试是否能够运行),可是debug时,会提示找不到如libgomp-753e6e92.so.1的库,即使设置了,也找不到,这样没法debug。设置了RunTime Search Directories后,即可以debug了。

相关文章
相关标签/搜索