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

replace Julia's gcc dlls with WinRPM versions during deps/build.jl #34

Merged
merged 1 commit into from
Nov 11, 2014

Conversation

tkelman
Copy link
Contributor

@tkelman tkelman commented Nov 11, 2014

handle failure somewhat gracefully, provide informative messages

@vtjnash @ihnorton if no objections I'll want to merge and tag this pretty soon, works on my machine for both 32 and 64 bit, and I think I've handled failure cases here

handle failure somewhat gracefully, provide informative messages
tkelman added a commit that referenced this pull request Nov 11, 2014
replace Julia's gcc dlls with WinRPM versions during deps/build.jl
@tkelman tkelman merged commit 147df62 into master Nov 11, 2014
@tkelman tkelman deleted the tk/update-dlls branch November 11, 2014 02:11
@ihnorton
Copy link
Member

yipes. well i guess this is the least bad option, thanks. i'm a little bit surprised that this works for the gcc libs, which presumably are open when julia is running.

info("Updated Julia's gcc dlls, you may need to restart Julia for some WinRPM packages to work.")
catch
warn("Could not update Julia's gcc dlls, some WinRPM packages may not work.\n" *
"Try running Julia as administrator and calling `Pkg.build(\"WinRPM\")`")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would be helpful to still include the error message here

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would that just be catch err, and add a line "Error was: $err\n" * in the warning?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Or Base.show_error()

@tkelman
Copy link
Contributor Author

tkelman commented Nov 12, 2014

@ihnorton I'm a little surprised too, I was thinking we'd have to do something trickier. The old dll's are still loaded in memory by Julia, so you do need to restart Julia to actually fix the issue.

I'm going to try to write a build-time mini-WinRPM to get these dll's from opensuse in the first place for the binaries.

@vtjnash I'll commit the following if it LGTY

        catch err
            buf = PipeBuffer()
            showerror(buf, err)
            warn("Could not update Julia's gcc dlls, some WinRPM packages may not work.\n" *
                "Error was: $(readall(buf))\n" *
                "Try running Julia as administrator and calling `Pkg.build(\"WinRPM\")`.")
        end

@vtjnash
Copy link
Member

vtjnash commented Nov 12, 2014

lgtm

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

Successfully merging this pull request may close these issues.

3 participants