Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

julia.rb: Undefined method "+" in ruby script. #8

Closed
samueljohn opened this issue Sep 4, 2012 · 5 comments
Closed

julia.rb: Undefined method "+" in ruby script. #8

samueljohn opened this issue Sep 4, 2012 · 5 comments

Comments

@samueljohn
Copy link
Contributor

With the latest changes in homebrew (superenv), the ENV['CPPFLAGS'] are now nil.
(UPDATE: unless you specify --env=std.)

Error: undefined method `+' for nil:NilClass
Please report this bug:
    https://github.com/mxcl/homebrew/wiki/bug-fixing-checklist
/homebrew/Library/Formula/julia.rb:44:in `install'
/homebrew/Library/Homebrew/build.rb:143:in `install'
/homebrew/Library/Homebrew/formula.rb:221:in `brew'
/homebrew/Library/Homebrew/formula.rb:532:in `stage'
/homebrew/Library/Homebrew/extend/fileutils.rb:21:in `mktemp'
/homebrew/Library/Homebrew/formula.rb:528:in `stage'
/homebrew/Library/Homebrew/formula.rb:216:in `brew'
/homebrew/Library/Homebrew/build.rb:123:in `install'
/homebrew/Library/Homebrew/build.rb:42:in `main'
/homebrew/Library/Homebrew/build.rb:12
/homebrew/Library/Formula/julia.rb:101
brew install julia --HEAD -v --default-fortran-flags  2337,63s user 508,29s system 336% cpu 14:05,70 total

Perhaps, now with superenv, we can remove the CFLAGS/CPPFLAGS hack?

@samueljohn
Copy link
Contributor Author

Hmm, seems that CPPFLAGS are still needed, right?
Using --env=std circumvents the nil thing from above. But even then (just a bit further) julia build fails for me.
Here is my current log.

Julia's build system is unfortunately not rock-stable...

@staticfloat
Copy link
Owner

I've pushed a fix that works for me; see if it magically fixes up those errors you're having.

Really, our problems are two-fold; we need to clean up Julia's build system to respect CPPFLAGS, and then we need to use more superenv-style thinking to manually add env's we need for julia to build properly. superenv screws around with things like julia's pre-build step where it finds the suite-sparse libraries by searching on paths specified by -L in LDFLAGS, etc.....

@samueljohn
Copy link
Contributor Author

You are absolutely right about that. I wish julia would just build the normal way, i.e. without copying other libs around. For example, I favor making suite-sparse dynamic in the suite-sparse formula than julia doing this in its own little directory. Sure superenv breakes those things.
At least --env=std will not go away and soon there will be a way to declare the std-env from within the formula itself.

For now I am on vacation for a week. Testing has to wait. cu!

@staticfloat
Copy link
Owner

What a coincidence, I'm off to vacation in Europe for two weeks starting today. Enjoy your vacation time!

@samueljohn
Copy link
Contributor Author

Thanks. With --env=std it's working (again).

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

No branches or pull requests

2 participants