oakes / SolidOak

An IDE for Rust
https://sekao.net/solidoak/
The Unlicense
893 stars 60 forks source link

Build Failing on OSX with Homebrew #46

Closed cetra3 closed 8 years ago

cetra3 commented 8 years ago

Not too sure whether this is something that needs to be updated, but homebrew is now dishing out vte version 2.91 rather than 2.90.

I get this error when trying to build:

thread '<main>' panicked at '`"pkg-config" "--libs" "--cflags" "vte-2.90"` did not exit successfully: exit code: 1
--- stderr
Package vte-2.90 was not found in the pkg-config search path.
Perhaps you should add the directory containing `vte-2.90.pc'
to the PKG_CONFIG_PATH environment variable
No package 'vte-2.90' found
', /Users/cetra/.cargo/git/checkouts/gtk-61164953be1831c6/master/gtk-sys/build.rs:45
oakes commented 8 years ago

Correct, you need to uninstall vte3 and use the formula that is in this repo by going to the root of the project and running brew install vte3.rb. My code does not currently work for the latest version of libvte. I hope to get it working for it eventually, but I'm currently stuck on a technical issue with it.

cetra3 commented 8 years ago

Ok. I was blindly following the instructions on the README, I'll give your suggestion a shot.

oakes commented 8 years ago

The README actually did mention vte.rb but I just edited it to make it more clear. Let me know if you still have issues.

cetra3 commented 8 years ago

Hi @oakes,

It appears to be stuck on neovim-rs after resolving this issue. While neovim compiles correctly, It looks like it's not running the build script so it is not adding the right -L params. If I run cargo build within the neovim-rs directory it works fine, but not within SolidOak.

Should I raise a seperate ticket for this?

Here's the error message I get:

#cargo build --verbose
    Updating git repository `https://github.com/oakes/neovim-rs`

       Fresh gcc v0.3.21
       Fresh libc v0.1.12
       Fresh pkg-config v0.3.6
       Fresh bitflags v0.3.3
       Fresh rustc-serialize v0.3.16
       Fresh c_vec v1.0.12
   Compiling neovim-rs v0.1.0 (https://github.com/oakes/neovim-rs#f7eb2151)
     Running `rustc /Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/src/lib.rs --crate-name neovim --crate-type rlib -g -C metadata=6bdf0afeabbce483 -C extra-filename=-6bdf0afeabbce483 --out-dir /Users/cetra/git/SolidOak/target/debug/deps --emit=dep-info,link -L dependency=/Users/cetra/git/SolidOak/target/debug/deps -L dependency=/Users/cetra/git/SolidOak/target/debug/deps --extern libc=/Users/cetra/git/SolidOak/target/debug/deps/liblibc-29adb837ec836726.rlib --cap-lints allow -L /usr/local/opt/gettext/lib/`
       Fresh cairo-sys-rs v0.2.1
       Fresh glib-sys v0.2.1
       Fresh gobject-sys v0.2.1
       Fresh atk-sys v0.2.1
       Fresh gio-sys v0.2.1
       Fresh pango-sys v0.2.1
       Fresh gdk-pixbuf-sys v0.2.1
       Fresh glib v0.0.7
       Fresh gdk-sys v0.2.1
       Fresh pango v0.0.6
       Fresh cairo-rs v0.0.7
       Fresh gtk-sys v0.2.1 (https://github.com/oakes/gtk#3064a74b)
       Fresh gdk v0.2.0
       Fresh gtk v0.0.6 (https://github.com/oakes/gtk#3064a74b)
error: could not find native static library `nvim`, perhaps an -L flag is missing?
Could not compile `neovim-rs`.

Caused by:
  Process didn't exit successfully: `rustc /Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/src/lib.rs --crate-name neovim --crate-type rlib -g -C metadata=6bdf0afeabbce483 -C extra-filename=-6bdf0afeabbce483 --out-dir /Users/cetra/git/SolidOak/target/debug/deps --emit=dep-info,link -L dependency=/Users/cetra/git/SolidOak/target/debug/deps -L dependency=/Users/cetra/git/SolidOak/target/debug/deps --extern libc=/Users/cetra/git/SolidOak/target/debug/deps/liblibc-29adb837ec836726.rlib --cap-lints allow -L /usr/local/opt/gettext/lib/` (exit code: 101)

If I manually run cargo build from the neovim-rs dir, it works fine:

cd /Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master && cargo build --verbose

    Updating registry `https://github.com/rust-lang/crates.io-index`
   Compiling neovim-rs v0.1.0 (file:///Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master)
     Running `rustc build.rs --crate-name build_script_build --crate-type bin -g --out-dir /Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug/build/neovim-rs-28a6c9f8f25bdd70 --emit=dep-info,link -L dependency=/Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug -L dependency=/Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug/deps`
   Compiling libc v0.1.12
     Running `rustc /Users/cetra/.cargo/registry/src/github.com-0a35038f75765ae4/libc-0.1.12/rust/src/liblibc/lib.rs --crate-name libc --crate-type lib -g --cfg feature=\"default\" --cfg feature=\"cargo-build\" -C metadata=29adb837ec836726 -C extra-filename=-29adb837ec836726 --out-dir /Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug/deps --emit=dep-info,link -L dependency=/Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug/deps -L dependency=/Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug/deps --cap-lints allow`
     Running `/Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug/build/neovim-rs-28a6c9f8f25bdd70/build-script-build`
     Running `rustc src/lib.rs --crate-name neovim --crate-type rlib -g --out-dir /Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug --emit=dep-info,link -L dependency=/Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug -L dependency=/Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug/deps --extern libc=/Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/target/debug/deps/liblibc-29adb837ec836726.rlib -L /Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/neovim/build/lib -L /Users/cetra/.cargo/git/checkouts/neovim-rs-a70c241027c677cc/master/neovim/.deps/usr/lib -L /usr/local/opt/gettext/lib/ -l nvim`
src/ffi.rs:157:43: 157:55 warning: found non-foreign-function-safe member in struct marked #[repr(C)]: found zero-size struct in foreign module, consider adding a member to this struct, #[warn(improper_ctypes)] on by default
src/ffi.rs:157     pub fn vim_array_add_dictionary (val: C_Dictionary, arr: *mut C_Array);
oakes commented 8 years ago

I've seen this error before but I can't seem to replicate it right now. I deleted neovim-rs from my ~/.cargo/git/checkouts folder to force it to redownload and rebuild it, and it did so. I made a small change to the neovim-rs build script so maybe it will help (just do a git pull && cargo update and try building again). Feel free to make a new issue about this if the problem persists.

cetra3 commented 8 years ago

Seems to build with your most recent changes!