Skip to content
This repository was archived by the owner on Apr 18, 2023. It is now read-only.

[WASM] There is a build error with Emscripten (newest version 1.38.46) tool on WASM #1004

Closed
cuiyanx opened this issue Sep 29, 2019 · 11 comments · Fixed by #1021
Closed

[WASM] There is a build error with Emscripten (newest version 1.38.46) tool on WASM #1004

cuiyanx opened this issue Sep 29, 2019 · 11 comments · Fixed by #1021
Assignees

Comments

@cuiyanx
Copy link
Contributor

cuiyanx commented Sep 29, 2019

There is a build error with Emscripten (newest version 1.38.46) tool on WASM. The tensorflow version is 1.13.
Error info:
Screenshot from 2019-09-29 16-16-32

@cuiyanx cuiyanx changed the title [WASM] There is a build error with Emscripten (newest version 1.38.45) tool on WASM [WASM] There is a build error with Emscripten (newest version 1.38.46) tool on WASM Sep 30, 2019
@cuiyanx
Copy link
Contributor Author

cuiyanx commented Sep 30, 2019

I try to build nn_ops.js with binding.cpp and Emscripten (newest version 1.38.46) tool and Tensorflow (branch r1.15), and get 8 errors.

error info:
1.
Screenshot from 2019-09-30 10-56-53
2.
Screenshot from 2019-09-30 10-57-29
3.
Screenshot from 2019-09-30 10-57-59
4.
Screenshot from 2019-09-30 10-58-23
5.
Screenshot from 2019-09-30 11-00-10
6.
Screenshot from 2019-09-30 11-00-46
7.
Screenshot from 2019-09-30 11-13-37
8.
Screenshot from 2019-09-30 11-13-54

@huningxin
Copy link
Contributor

@akineeic , could you please investigate this issue? thanks.

@akineeic akineeic self-assigned this Oct 11, 2019
@Wenzhao-Xiang
Copy link
Contributor

There is a build error with Emscripten (newest version 1.38.46) tool on WASM. The tensorflow version is 1.13.
Error info:

To my understanding, it's the issue of Runtimeshape binding, you can change it to

class_<RuntimeShape>("RuntimeShape")
    .constructor<int>()
    .function("DimensionsCount", &RuntimeShape::DimensionsCount)
    .function("Dims", &RuntimeShape::Dims)
    .function("SetDim", &RuntimeShape::SetDim)
    ;

@huningxin
Copy link
Contributor

Thanks @Wenzhao-Xiang . @akineeic , could you please follow Wenzhao's suggestion and create a PR?

@Wenzhao-Xiang
Copy link
Contributor

I try to build nn_ops.js with binding.cpp and Emscripten (newest version 1.38.46) tool and Tensorflow (branch r1.15), and get 8 errors.

In the r1.15 release, tflite changed some API definitions, so we need to modify the binding.cpp to match them first. The biggest difference is that it uses CpuBackendContext to integrate Eigen, Gemmlowp and its own experimental library Ruby, which makes the API more concise to use. I did some work to update the tensorflow version before, but it seems that there are some issue with the toolchain when compiling CpuBackendContext. I haven't investegated this issue yet.
Hope this information can help you if you want to update the tf version.

@akineeic
Copy link
Contributor

Thanks @Wenzhao-Xiang . @akineeic , could you please follow Wenzhao's suggestion and create a PR?

Thanks @Wenzhao-Xiang , I have reproduced the error and solved it followed wenzhao's suggestion. It seems caused by the version of Emscripten. I'll make a PR later.

@akineeic
Copy link
Contributor

This issue has fixed in #1021.
Close the issue.

@huningxin huningxin reopened this Oct 12, 2019
@huningxin
Copy link
Contributor

@akineeic , the process is that we close the issue after PR merged. And if you put fix key word in your PR, the issue will be automatically closed after PR merged. Please check out https://help.github.com/en/articles/closing-issues-using-keywords

@akineeic
Copy link
Contributor

@akineeic , the process is that we close the issue after PR merged. And if you put fix key word in your PR, the issue will be automatically closed after PR merged. Please check out https://help.github.com/en/articles/closing-issues-using-keywords

Thanks @huningxin, I have modified the pull request description.

@akineeic
Copy link
Contributor

It seems that the version 1.38.41 or later of emscripten does't support our code of constructor's overload. To overload the constructor of RuntimeShape correctly, I have created an issue in emscripten repo. Waiting for their advanced infomation.

@huningxin
Copy link
Contributor

Thanks @akineeic . Let's see upstream's inputs. As your PR #1021 works for both 1.38.40 and 1.38.41. It's kind of working.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants