-
Notifications
You must be signed in to change notification settings - Fork 57
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
Cairo version 0.5.6 builds successfully in Linux but not in OSX. #279
Comments
Could you show a successful build with 0.5.5? |
I'm also on OSX, and have the same issue. Building on v0.5.5 fails as well. (v1.1) pkg> add Cairo@0.5.5
Resolving package versions...
Installed Cairo ─ v0.5.5
Updating `~/.julia/environments/v1.1/Project.toml`
[159f3aea] + Cairo v0.5.5
Updating `~/.julia/environments/v1.1/Manifest.toml`
[159f3aea] ↓ Cairo v0.5.6 ⇒ v0.5.5
Building Cairo → `~/.julia/packages/Cairo/mbKYP/deps/build.log`
┌ Error: Error building `Cairo`:
│
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/anshul/.julia/packages/Cairo/mbKYP/deps/build.jl:164
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 17613150 (Pool: 17610690; Big: 2460); GC: 39
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075
(v1.1) pkg> build Cairo
Building LibCURL ─→ `~/.julia/packages/LibCURL/khRkY/deps/build.log`
Building WinRPM ──→ `~/.julia/packages/WinRPM/Y9QdZ/deps/build.log`
Building Homebrew → `~/.julia/packages/Homebrew/s09IX/deps/build.log`
Building Cairo ───→ `~/.julia/packages/Cairo/mbKYP/deps/build.log`
┌ Error: Error building `Cairo`:
│
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/anshul/.julia/packages/Cairo/mbKYP/deps/build.jl:164
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 17598553 (Pool: 17596090; Big: 2463); GC: 39
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075 |
as does building 0.5.4 (with the same error). Building 0.5.3 also fails, but for another reason: (v1.1) pkg> add Cairo@0.5.3
Resolving package versions...
Installed Cairo ─ v0.5.3
Updating `~/.julia/environments/v1.1/Project.toml`
[159f3aea] ↓ Cairo v0.5.4 ⇒ v0.5.3
Updating `~/.julia/environments/v1.1/Manifest.toml`
[159f3aea] ↓ Cairo v0.5.4 ⇒ v0.5.3
Building Cairo → `~/.julia/packages/Cairo/NBtbd/deps/build.log`
┌ Error: Error building `Cairo`:
│ ERROR: LoadError: syntax: misplaced assignment statement in "[libpng = library_dependency("png", aliases = ["libpng", "libpng-1.5.14", "libpng15", "libpng12.so.0", "libpng12"], runtime = false, group = group); pixman = library_dependency("pixman", aliases = ["libpixman", "libpixman-1", "libpixman-1-0", "libpixman-1.0"], depends = [libpng], runtime = false, group = group); libffi = library_dependency("ffi", aliases = ["libffi"], runtime = false, group = group); gettext = library_dependency("gettext", aliases = ["libintl", "preloadable_libintl", "libgettextpo"], os = :Unix, group = group); gobject = library_dependency("gobject", aliases = ["libgobject-2.0-0", "libgobject-2.0", "libgobject-2_0-0", "libgobject-2.0.so.0"], depends = [libffi, gettext], group = group); freetype = library_dependency("freetype", aliases = ["libfreetype"], runtime = false, group = group); fontconfig = library_dependency("fontconfig", aliases = ["libfontconfig-1", "libfontconfig", "libfontconfig.so.1"], depends = [freetype], runtime = false, group = group); cairo = library_dependency("cairo", aliases = ["libcairo-2", "libcairo", "libcairo.so.2", "libcairo2"], depends = [gobject, fontconfig, libpng], group = group, validate = validate_cairo_version); pango = library_dependency("pango", aliases = ["libpango-1.0-0", "libpango-1.0", "libpango-1.0.so.0", "libpango-1_0-0"], group = group); pangocairo = library_dependency("pangocairo", aliases = ["libpangocairo-1.0-0", "libpangocairo-1.0", "libpangocairo-1.0.so.0"], depends = [cairo], group = group); zlib = library_dependency("zlib", aliases = ["libzlib", "zlib1"], os = :Windows, group = group)]"
│ Stacktrace:
│ [1] include at ./boot.jl:326 [inlined]
│ [2] include_relative(::Module, ::String) at ./loading.jl:1038
│ [3] include(::Module, ::String) at ./sysimg.jl:29
│ [4] include(::String) at ./client.jl:403
│ [5] top-level scope at none:0
│ in expression starting at /Users/anshul/.julia/packages/Cairo/NBtbd/deps/build.jl:19
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075 |
then it's mostlikely #271 |
Yep, looks like it. Will post build output there when I get the time, thanks! |
upon more investigations, i noticed that i didn't have cairo in the previous releases and it was added recently when I installed Queryverse which installed Vegalite which installed Cairo. Travis build fails and my local mac Pkg.build("Cairo") also fails. (v1.0) pkg> build Cairo I stand corrected when I said previous version was successful in mac. |
you may also try |
thanks @daviehh. it made me rethink what causes it and realized that using Queryverse loaded so many packages including Cairo which i don't necessarily need. i just needed FileIO, CSVFiles, and FeatherFiles which Queryverse reimports/reexports for common save/load API to different file formats. I removed Queryverse which removed so many deps including Cairo ;) |
I think I have the same problem also on macOS 10.14.4:
What can I do? I have reinstalled |
@sbacelar should be ok in the latest version, try
|
@daviehh Yes I did |
@sbacelar one reason for Lines 7 to 15 in 3d781a7
after |
@daviehh I edited the
Now, when I try to install Agents I get:
|
@daviehh Well, I think the problem is between
|
After a fresh Julia installation on macOS Mojave I added only one package
|
@sbacelar yes, the reason is Agents uses an older version of Cairo. You may now edit the build.jl file according to #279 (comment) but then use |
@daviehh Thank you. I asked |
I don't know if this helps to solve the problem. With no package installed and without the build.jl file edited, I did
|
What's the output of |
After freeing Cairo:
|
Weird...and it still doesn't build correctly? |
Have you tried switching glib? |
Here is what is happening now. Can you explain to me how to
|
@sbacelar i think you may have a system-wide (not julia) glib installed... can you try |
@daviehh I did brew unlink glib in other tab of iTerm and then:
|
@sbacelar that seems to be caused by some font cache conflicts... try |
|
It looks like you still have glib 2.6 installed. There's a solution here: #271 (comment) |
|
Yes, but the result is similar,
|
|
How do I know in what environment I am? |
When you go into Pkg REPL-mode, the name in parentheses will tell you. In a vanilla Julia session, that would be (1.1), like so:
whereas this should look like:
|
In REPL-mode is always |
Right, you have to do the other stuff as well - the thing that changes the environment is This is the code that will setup and activate the environment: cd("~/.julia/environments" |> expanduser)
mkdir("agent-env")
cd("agent-env")
using Pkg
Pkg.activate() |
Doesn't work. I keep getting |
Ah, shit - I forgot that Pkg defaults to default environment. Try |
It didn't remove nothing but,
|
Nice, did the installation work? |
Well I didn't try. I am going to do |
No it didn't,
|
What happens with |
|
Hmm...try |
|
Nice, now try |
I think it worked (with some Warnings). What is the "moral of this story"?
|
When in doubt, use a fresh environment? :D |
:-) And stay there forever? |
I imagine there was some residual incompatibility somewhere in your default environment which prevented you from using |
That would in effect regenerate your default environment without whatever quirk caused the original incompatibility (hopefully). Also, back up your Project.toml before doing this so you have a record of what was installed. |
Well, I will try that. I have nothing to lose :-) |
In summary: to resolve a segfault while building Cairo, it is necessary to switch You will also need to have In Julia: using Homebrew
Homebrew.brew(`unlink glib`)
Homebrew.brew(`install --build-from-source https://raw.githubusercontent.com/Homebrew/homebrew-core/05871cb0394f78ef25a5c1c071456d0f1e4be4fe/Formula/glib.rb`) In terminal: brew unlink glib
brew install --build-from-source https://raw.githubusercontent.com/Homebrew/homebrew-core/05871cb0394f78ef25a5c1c071456d0f1e4be4fe/Formula/glib.rb Now, restart your Julia session, and try A related issue is #271. |
A synthesis of what I did afterwards: I deleted Manifest.toml and Project.toml (after backup). Then I added in environment v1.1 first: |
error in travis build: https://travis-ci.com/IBM/TSML.jl/jobs/193248596
Building Cairo ──────────→
~/.julia/packages/Cairo/CXPG1/deps/build.log
┌ Error: Error building
Cairo
:│
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/travis/.julia/packages/Cairo/CXPG1/deps/build.jl:165
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 17948020 (Pool: 17945255; Big: 2765); GC: 39
build.jl at line 165:
@BinDeps.install Dict([(:gobject, :_jl_libgobject),
(:cairo, :_jl_libcairo),
(:pango, :_jl_libpango),
(:pangocairo, :_jl_libpangocairo)])
The text was updated successfully, but these errors were encountered: