Comments (11)
@rtldg Please try v0.12.0-beta.1, if nothing goes wrong, I'll release v0.12.0 soon.
from cargo-zigbuild.
It runs into the The command line is too long.
issue because of .bat/batch/cmd.exe.
I'll try to make a small example real quick to show
from cargo-zigbuild.
The limit for batch/cmd.exe being like 8192
according to google.
Also, I assume that the program calling AR
will automatically use the @file-with-command-line-args.txt
thing when it is above/near the Windows limit (32767?), but my current project only has like 14000~ so I'm not sure
from cargo-zigbuild.
Command: cargo +nightly zigbuild --release --target i686-pc-windows-gnu
src/main.rs
fn main() {
println!("Hello, world!");
}
Cargo.toml
[package]
name = "testb"
version = "0.1.0"
edition = "2021"
[dependencies]
curl = { version = "0.4.33", default-features = false, features = ["rustls", "static-curl"] }
main errors:
cargo:warning=The command line is too long.
exit code: 1
--- stderr
error occurred: Command "C:\\Users\\joe\\AppData\\Local\\cargo-zigbuild\\0.12.0-beta.1\\zigar.bat" "cq"
"D:\\testb\\target\\i686-pc-windows-gnu\\release\\build\\curl-sys-86c409c566c1e694\\out\\build\\libcurl.a"
"D:\\testb\\target\\i686-pc-windows-gnu\\release\\build\\curl-sys-86c409c566c1e694\\out\\build\\curl/lib/asyn-thread.o"
/* ... little over 9000 (ha) characters here (even with `\\` replaced with `/`) ... */
from cargo-zigbuild.
I'm not sure how to deal with this besides compiling an .exe to avoid the .bat 8192 (8191?) character limit
from cargo-zigbuild.
@rtldg Please give v0.12.0-beta.2 a try, it works on CI now.
from cargo-zigbuild.
It fails unless you have admin-privileges due to std::os::windows::fs::symlink_file
it seems.
Error: A required privilege is not held by the client. (os error 1314)
I was hoping that std::fs::hard_link
could replace it but that then starts to run into issues with the if target.exists() { fs::remove_file(target)?; }
since it can't delete the file since it's symlinked to the running .exe
Error: failed to remove file `C:\Users\joe\AppData\Local\cargo-zigbuild\0.12.0-beta.1\ar.exe`
Caused by:
Access is denied. (os error 5)
Might just be easiest to copy the exe instead of symlinking on Windows.
from cargo-zigbuild.
We don't really have to remove the symlink file since we already add version number in the cache directory path. Would hard_link
then work for you?
from cargo-zigbuild.
That's a good point. Yeah, that'd work
from cargo-zigbuild.
@rtldg Can you try main branch?
from cargo-zigbuild.
It seems to work fine now :)
from cargo-zigbuild.
Related Issues (20)
- CC 1.0.84 fails with `UnknownOperatingSystem` HOT 2
- Is cross-compilation on Linux for Windows possible? HOT 2
- zig fstack-protector bug
- No backtrace symbols on MacOS w/ Apple Silicon HOT 4
- note: error: unable to find Dynamic system library 'z' using strategy 'no_fallback'. searched paths: HOT 1
- Unknown type and functions when cross compiling zlib-ng v2.1.5 to aarch64 linux HOT 1
- cargo-zigbuild fails to compile crates that depend on linkme
- Fails to build some crates that depend on CC variable - ring etc HOT 9
- i use x86 macos with zigbuild buid aarch64-apple-darwin , but strip will cause exe error
- How to pass -fno-sanitize=undefined to `zig cc`?
- Version bump from Rust 1.73 to Rust 1.75 for `Dockerfile`
- cargo-zigbuild doesn't seem to utilize cargo config HOT 1
- `universal2-apple-darwin` panics under workspace HOT 2
- `cargo zigbuild` doesn't support static glibc builds with an explicit `--target` HOT 12
- Running `cargo doc` with `cargo-zigbuild` HOT 2
- CMake error on FLTK HOT 2
- ccache is always invalidated HOT 3
- cargo-zigbuild test doesn't pass arguments through properly HOT 2
- Allow customizing CPU features HOT 3
- Improve cargo-zigbuild zig performance HOT 2
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 cargo-zigbuild.