frustum-pointnets icon indicating copy to clipboard operation
frustum-pointnets copied to clipboard

how to compile the tf_ops files on Windows?

Open RollingIsland opened this issue 5 years ago • 16 comments

I'm trying to run Frustum-PointNets on Windows, and I have already done for v1. But v2 met some problems:

  1. the tf_ops compiling needs the libtensorflow_framework.so, however libtensorflow_framework.so cannot be recognized by g++ on Windows. Then I tried to use tensorflow.dll(There is no "tensorflow_framework.dll" in the dynamic link library offered on the site) instead and successfully generate the tf_xxx_so.so files. (I'm not sure whether those tf_xxx_so.so files are the same with those compiled on Linux)
  2. Then I ran the command_train_v2.sh script, then this error occured: tensorflow.python.framework.errors_impl.NotFoundError: E:\Developers\Machine Learning\Object Recogonition\PointNet\frustum-pointnets-master\models\tf_ops\sampling\tf_sampling_so.so not found

I have no idea why the file was not found, I checked the path and the directory for many times and I'm sure tf_sampling_so.so is right there. Though the file perhaps can't work properly, it can't be missed. I can't figure that out.

RollingIsland avatar Apr 08 '19 09:04 RollingIsland

Can you share your repository ? I also can't run on Windows.

DynamicDream avatar Apr 11 '19 10:04 DynamicDream

Can you share your repository ? I also can't run on Windows.

Well, I still can't run the v2 model, but the v1 model is easy to use. You just need to install Git for Windows and you can run the .sh scripts on Windows. Of course you need Python and G++ and some other tools or libraries, but these have no concern with the OS.

RollingIsland avatar Apr 12 '19 04:04 RollingIsland

Hello, I have encountered the following problem: scripts/command_test_v1.sh: line 3: train/kitti_eval/evaluate_object_3d_offline: cannot execute binary file: Exec format error Do you know how to solve it?

DynamicDream avatar Apr 16 '19 08:04 DynamicDream

Hello, How do you modify the path in .sh under the tf.ops file?

DynamicDream avatar Apr 16 '19 10:04 DynamicDream

Hello, I have encountered the following problem: scripts/command_test_v1.sh: line 3: train/kitti_eval/evaluate_object_3d_offline: cannot execute binary file: Exec format error Do you know how to solve it?

Delete the former one and compile the evaluate_object_3d_offline by yourself.

RollingIsland avatar Apr 16 '19 11:04 RollingIsland

Hello, How do you modify the path in .sh under the tf.ops file?

The header file can be found in a directory under tensorflow, then you can use the -I(capital of i) to include the path manually.

RollingIsland avatar Apr 16 '19 11:04 RollingIsland

Thank you for your reply. I did not successfully compile the sh file in tf.ops, because I don't know how to correctly modify the Linux path in Windows.

DynamicDream avatar Apr 16 '19 11:04 DynamicDream

Thank you for your reply. I did not successfully compile the sh file in tf.ops, because I don't know how to correctly modify the Linux path in Windows.

Just use your windows path is OK, the form of g++ direction is the same, however it won't be help even you compile the tf_ops files successfully, because the .so file can't be used on windows

RollingIsland avatar Apr 16 '19 11:04 RollingIsland

Thank you for your reply. I did not successfully compile the sh file in tf.ops, because I don't know how to correctly modify the Linux path in Windows.

The v1 model doesn't need tf_ops, you can just try to run it.

RollingIsland avatar Apr 16 '19 11:04 RollingIsland

Thank you for your reply, I still don't know how to achieve it. I will look at the code and ask for your advice.

DynamicDream avatar Apr 16 '19 11:04 DynamicDream

Thank you for your reply, I still don't know how to achieve it. I will look at the code and ask for your advice.

Well, to be more specific, you need edit the compile_*.sh file, there is a line which used g++ compile command, you just add -I "path" at the end of that line, and try to run the .sh file again. There will be several paths need to be added, and the errors will tell what are they.

RollingIsland avatar Apr 16 '19 11:04 RollingIsland

Delete the former one and compile the evaluate_object_3d_offline by yourself. Hello, you can talk about how to operate what you said. I am a rookie.

DynamicDream avatar Apr 16 '19 11:04 DynamicDream

$ g++ -o evaluate_object_3d_offline evaluate_object_3d_offline.cpp evaluate_object_3d_offline.cpp:12:10: fatal error: boost/numeric/ublas/matrix.hpp: No such file or directory #include <boost/numeric/ublas/matrix.hpp> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated.

DynamicDream avatar Apr 16 '19 11:04 DynamicDream

$ g++ -o evaluate_object_3d_offline evaluate_object_3d_offline.cpp evaluate_object_3d_offline.cpp:12:10: fatal error: boost/numeric/ublas/matrix.hpp: No such file or directory #include <boost/numeric/ublas/matrix.hpp> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated.

boost is a opensource lib, you can search and download it on the internet.

RollingIsland avatar Apr 16 '19 11:04 RollingIsland

Can you share your repository ? I also can't run on Windows.

Well, I still can't run the v2 model, but the v1 model is easy to use. You just need to install Git for Windows and you can run the .sh scripts on Windows. Of course you need Python and G++ and some other tools or libraries, but these have no concern with the OS.

I am also facing the problem compiling this on windows 10 with CUDA 9.0. Have someone succeeded in compiling it on windows so far ?

amardeepjaiman avatar May 06 '20 04:05 amardeepjaiman

你可以分享你的存储库吗?我也无法在 Windows 上运行。

好吧,我仍然无法运行 v2 模型,但 v1 模型易于使用。您只需要安装**适用于 Windows 的 Git,**就可以在 Windows 上运行 .sh 脚本。当然,您需要 Python 和 G++ 以及其他一些工具或库,但这些与操作系统无关。

我也面临在带有 CUDA 9.0 的 Windows 10 上编译它的问题。到目前为止,有人在 Windows 上成功编译了吗?

@amardeepjaiman嘿,兄弟,我遇到了同样的问题,你在 Windows 上成功解决了吗?

jeycechen avatar Mar 07 '22 15:03 jeycechen