Comments (4)
Hello,
I guess this is very specific to each native module.
I don't have much experience on windows platforms but I guess that as long as the modules you're referring to do work on different windows applications once installed/compiled (that is you move the whole node application including the node_modules/
folder) so will they once compiled and vice versa.
So speaking out of experience on *nix platforms, if the module at compile time has some flag specific to the host you're compiling on, it won't run on other platforms (e.g. some freebsd syscal not compatible with linux). While others may work (I properly run some modules compiled on ubuntu on debian platforms since all they were doing was linking some third party lib).
It'd be awesome if you could test and report to us.
Cross-compiling on *nix compiles everything using the target
toolchain (rather than host's), which takes care of preparing all builds (including native modules) to work properly on the platform specified because the setup process of the toolchain includes overriding all compiler/linking and other essential build tools environment variables. By the way cross-compiling is not always possible (e.g. if the native module needs to run something before to terminate the compilation process it will do this on the host
machine. An example? think of a module which wants to compute how many cores you have on your machine... it will cross-compile, but it'd do so taking the host
processor number, not the target
one, assuming it sets a macro at configure time).
TL;DR;
In my experience, it only depends upon the support the native module itself has for cross-compilation.
from node-packer.
I plan on doing some tests, but I was partially hoping this might solve an issue I'm having with node-oracledb and Windows Server 2012R2. I'll play with it though.
from node-packer.
May it be related to a different configuration of oracledb between the two platforms?
Or maybe some oracle-specific settings is changing between them.
BTW it depends upon the error itself, but I don't think the compilation process will do some magic to avoid the actual problem, since at runtime the two compare the same way (the logic node-oracledb performs with plain node does not differ from what it does in nodec).
BTW give it a try, it may be something else!
Please let me know when you have tested this, I'm curious to know more about it.
Going to close this for now, but please, re-open it when you have new info.
from node-packer.
Hey @lexor90, so I did some follow-up testing and it seems that a nodec built application with node-oracledb and bcrypt is able to be built on Windows Server 2012R2 and will run on Windows 8.1, 10, and Windows Server 2016. Node-oracledb has some extra dependencies that need to be on the host system, but there is no seeable compatibility issue when those exist.
from node-packer.
Related Issues (20)
- npm installation?
- How to hide Windows command prompt after start a.exe file
- Cannot create destination file: No such file or directory HOT 3
- Linux Exceutable Decompiling
- Will there be Nodec with Node.js 10 LTS HOT 3
- Getting Error - No such file or directory @ rb_sysopen HOT 2
- How do I separate the configuration from being compiled? HOT 1
- nodec-v1.5.0-x64 throw errors "No such file or directory - node -pe process.arch"
- How to build nodec for Window? HOT 4
- Is ARM supported? HOT 1
- i don't know how to install Linux operating system HOT 1
- Windows version does not work (Win10, nodec 1.5.0 x64) HOT 3
- Can we resurrect node-packer to get it working with latest Node.js versions? HOT 35
- Assertion `backup_off == lseek_off' failed. HOT 2
- how to use the latest source code to build binary, instead of using the old 1.5.0 version? HOT 3
- ../deps/uv/include/uv.h:37:10: fatal error: enclose_io.h: No such file or directory HOT 4
- Can the packaged executable file effectively protect the source code? HOT 1
- fatal error: Killed signal terminated program cc1 HOT 1
- fatal error: enclose_io.h: No such file or directory
- Using node packer for node 20
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from node-packer.