IMPORT project, can NOT pull in the binaries remotely?

I am trying to IMPORT TensorFlow 2.3.0 C API, using “remote binary pulling”, like below:

<ImportHeader Include="Import.h"/>
<ImportCopyLocal Include=".\lib\libtensorflow.dylib">
    <Remote>https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-darwin-x86_64-2.3.0.tar.gz</Remote>
    <Private>True</Private>
    <Target>Island.macOS</Target>
</ImportCopyLocal>
  • But Water gives me error: E: Unable to read data from the transport connection: A blocking operation was interrupted by a call to WSACancelBlockingCall.

  • I double checked that the remote link is valid and working, if downloading the package separately.

Any advice? The IMPORT project is here: Import.7z (4.3 KB)

Curious, it downloads the files fine for me here on Mac:

        -> Task RemObjects.EBuild.Elements.ElementsResolveHeaderImportFiles started for TensorFlow.Island.Api, Island.Windows.
           Downloading 'https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-windows-x86_64-2.3.0.zip'
           Extracting '/Users/mh/Library/Application Support/RemObjects Software/EBuild/Remotes/78544334EB2FF281A856E512903A4CB57D4041A2/libtensorflow-cpu-windows-x86_64-2.3.0.zip'
        <- Task RemObjects.EBuild.Elements.ElementsResolveHeaderImportFiles finished for TensorFlow.Island.Api, Island.Windows, took 17.3877s (17.388s).

but then fails with three errors:

__ImportSpec__TensorFlow.Island.Api.h, line 3 — Cannot find include file: include/tensorflow/c/c_api.h
__ImportSpec__TensorFlow.Island.Api.h, line 3 — Cannot find include file: include/tensorflow/c/c_api.h
Input string was not in a correct format.

the last of which certainly is a bug, I’ll narrow that one down first, and then test on Windows to see if that makes a difference (shouldn’t really; the download uses the standard RTL2 HTTP API thats well used and tested on all platforms… :frowning:

Thanks, logged as bugs://84793

Workaround: there seems to be a value of “19041.0” somewhere thats parsed as an integer. its a bug ofc that this doesn’t result in a proper error.

PS: can we do proper zip file sin then future. It seems Windows cant even extract .7z without third party tools (which I don’t have in my test VM). I’ll cope for now, ofc.

Download problem on Windows reproduced. Very strange, all investigate.

Curious. it reproduces in Water, but it works fine when running EBuild standalone. WTF.

Workaround: run EBuild form the command line once, to get the files to download.

Second issue for you though: this doesn’t handle .tar.gz file yet (on Windows, because I don’t have code to extract this, and Windows has no API for that either), only .zip :wink:

Yes, noted. Next time will use zip.

1 Like

Is the download problem on Windows fixed? I am confused by the Bug status - it says it is fixed?

the HI bug, https://www.remobjects.com/portal/bugs/?id=84793, is fixed. The download issue is not yet (I have no idea what could be causing this, really. the same code runs fine when I run EBuild from the command line (our even if the debugger in Water), but fails when EBuild iw fruit from water to do the actual build. very strange).

What does “HI” stand for?

Could you advise how can I run EBuild command line? I’ve never done that before.

Sorry, Header importer

Sure. you can see the command line as the first line of the log in Water. You can just copy it out of there and paste it into a Command prompt tun run the exact same command as Water does.

You can also of course just manually run ebuild c:\path\to\your.sln from the command prompt.

See Building Projects w/ EBuild for all the details on of what you can do.

1 Like

Thank you.

For my rekindled Fire love, I re-tried the same IMPORT project with Fire, and it works for the download, but still having the following errors:

   No exact Windows SDK version was specified for target 'Island.Windows', using 'Windows 10.0.19041.0'.
   No exact Ubuntu SDK version was specified for target 'Island.Linux', using 'Ubuntu 2.19'.
   Xcode Version is 11.6 (11E708), macOS Version is 10.15.6 (19G2021).
   No exact macOS SDK version was specified for target 'Island.macOS', using 'macOS 10.15'.
E: Cannot find include file: include/tensorflow/c/c_api.h [__ImportSpec__TensorFlow.Island.Api.h (3)]
E: Cannot find include file: include/tensorflow/c/c_api.h [__ImportSpec__TensorFlow.Island.Api.h (3)]
E: Cannot find include file: include/tensorflow/c/c_api.h [__ImportSpec__TensorFlow.Island.Api.h (3)]
   Project 'TensorFlow.Island.Api' failed to build.
   Solution 'TensorFlow.Island.Api' failed to build project 'TensorFlow.Island.Api'.

Yep. I had those errors too. For all I know they are valid?

The include folder is at the unzipped folder called “z”

I guess the question boils down to - which root folder by default Fire does the search for this remote type of import?