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

temporary: patch segfault on mac #274

Merged
merged 2 commits into from
Apr 11, 2019
Merged

temporary: patch segfault on mac #274

merged 2 commits into from
Apr 11, 2019

Conversation

daviehh
Copy link
Contributor

@daviehh daviehh commented Apr 10, 2019

discussed here, and also on upstream glib here, using dlopen/dlclose is not supported by glib, but is used by BinDeps; suggested in JuliaPackaging/BinDeps.jl#397 and verified by print(getpid()), the build process is run in another pid, therefore not using dlclose may be ok, patched with the new build.jl: only patch for macos and only patch the current version of BinDeps (occursin("ZEval",pathof(BinDeps)))

julia: 0.6 removed in .travis.yml since pathof is not available there, feel free to disregard

temporary until maybe #229 is finished?

@coveralls
Copy link

Coverage Status

Coverage decreased (-0.9%) to 91.257% when pulling f71f2eb on daviehh:master into f1631cd on JuliaGraphics:master.

1 similar comment
@coveralls
Copy link

Coverage Status

Coverage decreased (-0.9%) to 91.257% when pulling f71f2eb on daviehh:master into f1631cd on JuliaGraphics:master.

@lobingera lobingera merged commit ec941c1 into JuliaGraphics:master Apr 11, 2019
@tknopp
Copy link
Contributor

tknopp commented Apr 11, 2019

am I right that this fixes the OSX issues?

@tkelman
Copy link
Contributor

tkelman commented Apr 11, 2019

This should not have been merged in this state. The minimum supported Julia version needs to be raised since this uses syntax that does not work on 0.6. Or Compat would need to be used for it, and testing put back for 0.6.

@lobingera
Copy link
Contributor

@tknopp, travis runs show testing positive
@tkelman, i agree with you, that this has not reached the state of a fully qualified solution, it's just easier to let people test "master" than go to branching.

@tknopp
Copy link
Contributor

tknopp commented Apr 11, 2019

@tkelman: drop 0.6 support. I think it is much more problematic that currently Cairo, Gtk, ... are not working in Mac than to have the current releases working in Julia 0.6, which only a fraction of people is using. When the METADATA <-> Registry sync is removed (very soon!) then it will be difficult to maintain 0.6 compat anyway.

@lobingera
Copy link
Contributor

@tknopp JuliaLang/Compat.jl#651 will happen anyway

@daviehh daviehh mentioned this pull request Apr 11, 2019
@tkelman
Copy link
Contributor

tkelman commented Apr 11, 2019

Dropping 0.6 support is fine (this PR didn't do that - it uses syntax that wouldn't work there but still claims to support it in REQUIRE), but dropping testing of a version without changing the minimum supported version is not a good idea.

@daviehh
Copy link
Contributor Author

daviehh commented Apr 11, 2019

@tkelman noted, thanks! btw, with this it looks like the REQUIRE file is no longer needed?

@tkelman
Copy link
Contributor

tkelman commented Apr 11, 2019

Depends whether you plan on tagging any additional versions in METADATA that do support 0.6. If not, then the REQUIRE file should be replaced with a toml version, which should include a minimum supported julia version of 0.7 or higher

@floswald
Copy link

hi all,
for me this still fails on OS mojave:

(v1.1) pkg> add Cairo#master
   Cloning git-repo `https://github.com/JuliaGraphics/Cairo.jl.git`
  Updating git-repo `https://github.com/JuliaGraphics/Cairo.jl.git`
 Resolving package versions...
  Updating `~/.julia/environments/v1.1/Project.toml`
  [159f3aea] + Cairo v0.5.6+ #master (https://github.com/JuliaGraphics/Cairo.jl.git)
  Updating `~/.julia/environments/v1.1/Manifest.toml`
  [159f3aea] ↑ Cairo v0.5.6 ⇒ v0.5.6+ #master (https://github.com/JuliaGraphics/Cairo.jl.git)
  Building Cairo → `~/.julia/packages/Cairo/oqfzQ/deps/build.log`
┌ Error: Error building `Cairo`: 
│ WARNING: redefining constant DEBIAN_VERSION_REGEX
│ WARNING: redefining constant have_sonames
│ WARNING: redefining constant sonames
│ WARNING: redefining constant EXTENSIONS
│ 
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/florian.oswald/.julia/packages/Cairo/oqfzQ/deps/build.jl:176
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 19509343 (Pool: 19506543; Big: 2800); GC: 43
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075

@daviehh
Copy link
Contributor Author

daviehh commented Apr 14, 2019

@floswald do you have system-wide hombrew installed? you may still need to run brew unlink glib for the system-wide glib while it's building (and revert by brew link glib when finished). also, you may need to run build Cairo twice since in my test with a new .julia directory (appear to be in the process of generating font cache)

@floswald
Copy link

tried that:

➜  ~ brew unlink glib
Unlinking /usr/local/Cellar/glib/2.60.0... 145 symlinks removed
➜  ~ julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.0 (2019-01-21)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

(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/oqfzQ/deps/build.log`
┌ Error: Error building `Cairo`: 
│ WARNING: redefining constant DEBIAN_VERSION_REGEX
│ WARNING: redefining constant have_sonames
│ WARNING: redefining constant sonames
│ WARNING: redefining constant EXTENSIONS
│ 
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/florian.oswald/.julia/packages/Cairo/oqfzQ/deps/build.jl:176
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 19503103 (Pool: 19500303; Big: 2800); GC: 43
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075

(v1.1) pkg> 

@daviehh
Copy link
Contributor Author

daviehh commented Apr 14, 2019

@floswald it's quite strange... I cannot reproduce with a new julia depot (essentially a new .julia directory): in bash terminal outside julia, export JULIA_DEPOT_PATH="~/julia_test":

$ brew unlink glib
Unlinking /usr/local/Cellar/glib/2.60.0_1... 145 symlinks removed
$ julia 


(v1.1) pkg> build Cairo
  Building LibCURL ─→ `~/julia_test/packages/LibCURL/khRkY/deps/build.log`
  Building WinRPM ──→ `~/julia_test/packages/WinRPM/Y9QdZ/deps/build.log`
  Building Homebrew → `~/julia_test/packages/Homebrew/s09IX/deps/build.log`
  Building Cairo ───→ `~/julia_test/packages/Cairo/oqfzQ/deps/build.log`

(v1.1) pkg> 

@floswald
Copy link

➜  ~ export JULIA_DEPOT_PATH="~/julia_test"
➜  ~ brew unlink glib
Unlinking /usr/local/Cellar/glib/2.60.0... 0 symlinks removed
➜  ~ julia
┌ Warning: Could not load Revise.
└ @ Main ~/.julia/config/startup.jl:13
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.0 (2019-01-21)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

(v1.1) pkg> build Cairo
ERROR: The following package names could not be resolved:
 * Cairo (not found in project or manifest)
Please specify by known `name=uuid`.

(v1.1) pkg> add Cairo
   Cloning default registries into `~/julia_test`
   Cloning registry from "https://github.com/JuliaRegistries/General.git"
     Added registry `General` to `~/julia_test/registries/General`
 Resolving package versions...
 Installed Reexport ────────── v0.2.0
 Installed Compat ──────────── v2.1.0
 Installed Libz ────────────── v1.0.0
 Installed Homebrew ────────── v0.7.1
 Installed ColorTypes ──────── v0.7.5
 Installed BufferedStreams ─── v1.0.0
 Installed BinaryProvider ──── v0.5.3
 Installed Graphics ────────── v0.4.0
 Installed FixedPointNumbers ─ v0.5.3
 Installed NaNMath ─────────── v0.3.2
 Installed BinDeps ─────────── v0.8.10
 Installed HTTPClient ──────── v0.2.1
 Installed LibExpat ────────── v0.5.0
 Installed Colors ──────────── v0.9.5
 Installed URIParser ───────── v0.4.0
 Installed WinRPM ──────────── v0.4.2
 Installed JSON ────────────── v0.20.0
 Installed Cairo ───────────── v0.5.6
 Installed LibCURL ─────────── v0.5.0
  Updating `~/julia_test/environments/v1.1/Project.toml`
  [159f3aea] + Cairo v0.5.6
  Updating `~/julia_test/environments/v1.1/Manifest.toml`
  [9e28174c] + BinDeps v0.8.10
  [b99e7846] + BinaryProvider v0.5.3
  [e1450e63] + BufferedStreams v1.0.0
  [159f3aea] + Cairo v0.5.6
  [3da002f7] + ColorTypes v0.7.5
  [5ae59095] + Colors v0.9.5
  [34da2185] + Compat v2.1.0
  [53c48c17] + FixedPointNumbers v0.5.3
  [a2bd30eb] + Graphics v0.4.0
  [0862f596] + HTTPClient v0.2.1
  [d9be37ee] + Homebrew v0.7.1
  [682c06a0] + JSON v0.20.0
  [b27032c2] + LibCURL v0.5.0
  [522f3ed2] + LibExpat v0.5.0
  [2ec943e9] + Libz v1.0.0
  [77ba4419] + NaNMath v0.3.2
  [189a3867] + Reexport v0.2.0
  [30578b45] + URIParser v0.4.0
  [c17dfb99] + WinRPM v0.4.2
  [2a0f44e3] + Base64 
  [ade2ca70] + Dates 
  [8bb1440f] + DelimitedFiles 
  [8ba89e20] + Distributed 
  [b77e0a4c] + InteractiveUtils 
  [76f85450] + LibGit2 
  [8f399da3] + Libdl 
  [37e2e46d] + LinearAlgebra 
  [56ddb016] + Logging 
  [d6f4376e] + Markdown 
  [a63ad114] + Mmap 
  [44cfe95a] + Pkg 
  [de0858da] + Printf 
  [3fa0cd96] + REPL 
  [9a3f8284] + Random 
  [ea8e919c] + SHA 
  [9e88b42a] + Serialization 
  [1a1011a3] + SharedArrays 
  [6462fe0b] + Sockets 
  [2f01184e] + SparseArrays 
  [10745b16] + Statistics 
  [8dfed614] + Test 
  [cf7118a7] + UUIDs 
  [4ec0a83e] + Unicode 
  Building LibCURL ─→ `~/julia_test/packages/LibCURL/khRkY/deps/build.log`
  Building WinRPM ──→ `~/julia_test/packages/WinRPM/Y9QdZ/deps/build.log`
  Building Homebrew → `~/julia_test/packages/Homebrew/s09IX/deps/build.log`
  Building Cairo ───→ `~/julia_test/packages/Cairo/CXPG1/deps/build.log`
┌ Error: Error building `Cairo`, showing the last 100 of log: 
│ `python3`, `python3-config`, `pip3` etc., respectively, have been installed into
│   /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/opt/python/libexec/bin
│ 
│ If you need Homebrew's Python 2.7 run
│   brew install python@2
│ 
│ You can install Python packages with
│   pip3 install <package>
│ They will install into the site-package directory
│   /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/lib/python3.7/site-packages
│ 
│ See: https://docs.brew.sh/Homebrew-and-Python
│ ==> Summary
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/python/3.7.3: 3,863 files, 59.9MB
│ Warning: Already linked: /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/python/3.7.3
│ ==> Installing libffi from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/libffi-3.2.1.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/89b4ef328be250153e7a2b39982ac446e0b3bbfe7f3e2708912ba1976862c302--libffi-3.2.1.mojave.bottle.tar.gz
│ ==> Pouring libffi-3.2.1.mojave.bottle.tar.gz
│ ==> Caveats
│ libffi is keg-only, which means it was not symlinked into /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr,
│ because some formulae require a newer version of libffi.
│ 
│ For compilers to find libffi you may need to set:
│   export LDFLAGS="-L/Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/opt/libffi/lib"
│ 
│ For pkg-config to find libffi you may need to set:
│   export PKG_CONFIG_PATH="/Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/opt/libffi/lib/pkgconfig"
│ 
│ ==> Summary
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/libffi/3.2.1: 16 files, 297KB
│ ==> Installing glib from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/glib-2.60.0_1.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/1c92dc54c48ba5a2d12d9498a9115546dfcaf257650a7baf6ec67911f60e8c2e--glib-2.60.0_1.mojave.bottle.tar.gz
│ ==> Pouring glib-2.60.0_1.mojave.bottle.tar.gz
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/glib/2.60.0_1: 432 files, 15.3MB
│ Warning: Already linked: /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/glib/2.60.0_1
│ ==> Installing libpng from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/libpng-1.6.36.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/b401f5b07a537975da7de448c4bbdaf0c2112d5dc7d8e0955e0d4fb938909010--libpng-1.6.36.mojave.bottle.tar.gz
│ ==> Pouring libpng-1.6.36.mojave.bottle.tar.gz
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/libpng/1.6.36: 27 files, 1.2MB
│ Warning: Already linked: /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/libpng/1.6.36
│ ==> Installing freetype from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/freetype-2.10.0.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/b11d24b3f88092e926183279c927c8f3b1ed6c1044a2828a6c7474513fdd567b--freetype-2.10.0.mojave.bottle.tar.gz
│ ==> Pouring freetype-2.10.0.mojave.bottle.tar.gz
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/freetype/2.10.0: 61 files, 2.3MB
│ Warning: Already linked: /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/freetype/2.10.0
│ ==> Installing fontconfig from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/fontconfig-2.13.1.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/b7ad94d49bcdca22738f50b570efc07c7a20f98a469b3c4b32198b7318b8af5a--fontconfig-2.13.1.mojave.bottle.tar.gz
│ ==> Pouring fontconfig-2.13.1.mojave.bottle.tar.gz
│ ==> Regenerating font cache, this may take a while
│ ==> /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/fontconfig/2.13.1/bin/fc-cache -frv
│ Last 15 lines from /Users/florian.oswald/Library/Logs/Homebrew/fontconfig/post_install.01.fc-cache:
│ 
│ /usr/share/fonts: skipping, no such directory
│ /System/Library/Fonts: /System/Library/Fonts: failed to write cache
│ caching, new cache contents: 398 fonts, 0 dirs
│ /Library/Fonts: caching, new cache contents: 374 fonts, 1 dirs
│ /Library/Fonts/Microsoft: caching, new cache contents: 207 fonts, 0 dirs
│ /Users/florian.oswald/Library/Fonts: caching, new cache contents: 1 fonts, 0 dirs
│ /System/Library/Assets/com_apple_MobileAsset_Font3: skipping, no such directory
│ /Users/florian.oswald/.local/share/fonts: skipping, no such directory
│ /Users/florian.oswald/.fonts: caching, new cache contents: 1 fonts, 0 dirs
│ /Library/Fonts/Microsoft: skipping, looped directory detected
│ /usr/local/var/cache/fontconfig: not cleaning unwritable cache directory
│ /Users/florian.oswald/.cache/fontconfig: not cleaning unwritable cache directory
│ /Users/florian.oswald/.fontconfig: not cleaning non-existent cache directory
│ /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/fontconfig/2.13.1/bin/fc-cache: failed
│ Warning: The post-install step did not complete successfully
│ You can try again using `brew postinstall staticfloat/juliatranslated/fontconfig`
│ ==> Summary
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/fontconfig/2.13.1: 531 files, 3.3MB
│ ERROR: LoadError: failed process: Process(`/Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/bin/brew install --ignore-dependencies staticfloat/juliatranslated/fontconfig`, ProcessExited(1)) [1]
│ Stacktrace:
│  [1] error(::String, ::Base.Process, ::String, ::Int64, ::String) at ./error.jl:42
│  [2] pipeline_error at ./process.jl:785 [inlined]
│  [3] #run#515(::Bool, ::Function, ::Cmd) at ./process.jl:726
│  [4] run at ./process.jl:724 [inlined]
│  [5] #brew#4(::Bool, ::Bool, ::Bool, ::Bool, ::Bool, ::Function, ::Cmd) at /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/src/API.jl:19
│  [6] #brew at ./none:0 [inlined]
│  [7] #install_and_link#38(::Bool, ::Function, ::String) at /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/src/API.jl:492
│  [8] (::getfield(Homebrew, Symbol("#kw##install_and_link")))(::NamedTuple{(:verbose,),Tuple{Bool}}, ::typeof(Homebrew.install_and_link), ::String) at ./none:0
│  [9] #add#29(::Bool, ::Bool, ::Function, ::String) at /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/src/API.jl:462
│  [10] add at /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/src/API.jl:412 [inlined]
│  [11] install(::Array{String,1}) at /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/src/bindeps_integration.jl:50
│  [12] (::getfield(Homebrew, Symbol("##80#81")))() at /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/src/bindeps_integration.jl:45
│  [13] run(::getfield(Homebrew, Symbol("##80#81"))) at /Users/florian.oswald/julia_test/packages/BinDeps/ZEval/src/BinDeps.jl:478
│  [14] run(::BinDeps.SynchronousStepCollection) at /Users/florian.oswald/julia_test/packages/BinDeps/ZEval/src/BinDeps.jl:521
│  [15] satisfy!(::BinDeps.LibraryDependency, ::Array{DataType,1}) at /Users/florian.oswald/julia_test/packages/BinDeps/ZEval/src/dependencies.jl:944
│  [16] satisfy!(::BinDeps.LibraryGroup, ::Array{DataType,1}) at /Users/florian.oswald/julia_test/packages/BinDeps/ZEval/src/dependencies.jl:910
│  [17] satisfy!(::BinDeps.LibraryGroup) at /Users/florian.oswald/julia_test/packages/BinDeps/ZEval/src/dependencies.jl:874
│  [18] top-level scope at /Users/florian.oswald/julia_test/packages/BinDeps/ZEval/src/dependencies.jl:977
│  [19] include at ./boot.jl:326 [inlined]
│  [20] include_relative(::Module, ::String) at ./loading.jl:1038
│  [21] include(::Module, ::String) at ./sysimg.jl:29
│  [22] include(::String) at ./client.jl:403
│  [23] top-level scope at none:0
│ in expression starting at /Users/florian.oswald/julia_test/packages/Cairo/CXPG1/deps/build.jl:165
│ 
│ Full log at /Users/florian.oswald/julia_test/packages/Cairo/CXPG1/deps/build.log
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075

(v1.1) pkg> 

@daviehh
Copy link
Contributor Author

daviehh commented Apr 14, 2019

@floswald run build Cairo a second time (in the new depot export JULIA_DEPOT_PATH="~/julia_test")? the log appears to show something with font cache

@floswald
Copy link

here is the seond time:

➜  JULIA_DEPOT_PATH="~/julia_test"
➜  julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.0 (2019-01-21)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

(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/oqfzQ/deps/build.log`
┌ Error: Error building `Cairo`: 
│ WARNING: redefining constant DEBIAN_VERSION_REGEX
│ WARNING: redefining constant have_sonames
│ WARNING: redefining constant sonames
│ WARNING: redefining constant EXTENSIONS
│ 
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/florian.oswald/.julia/packages/Cairo/oqfzQ/deps/build.jl:176
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 19503101 (Pool: 19500303; Big: 2798); GC: 43
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075

@daviehh
Copy link
Contributor Author

daviehh commented Apr 14, 2019

in bash should be export JULIA_DEPOT_PATH="~/julia_test" since the log shows the build is still done with the ~/.julia/ path and not the julia_test path; can you try again? thanks!

this PR fixes the segfault caused by glib no longer supporting dlopen/dlclose discussed #271, and the CI test is with a "clean" .julia depot which passes...https://travis-ci.org/daviehh/Cairo.jl

@floswald
Copy link

sorry, my bad.

➜   export JULIA_DEPOT_PATH="~/julia_test"
➜   julia
┌ Warning: Could not load Revise.
└ @ Main ~/.julia/config/startup.jl:13
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.0 (2019-01-21)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

(v1.1) pkg> build Cairo
  Building LibCURL ─→ `~/julia_test/packages/LibCURL/khRkY/deps/build.log`
  Building WinRPM ──→ `~/julia_test/packages/WinRPM/Y9QdZ/deps/build.log`
  Building Homebrew → `~/julia_test/packages/Homebrew/s09IX/deps/build.log`
  Building Cairo ───→ `~/julia_test/packages/Cairo/CXPG1/deps/build.log`
┌ Error: Error building `Cairo`: 
│ 
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/florian.oswald/julia_test/packages/Cairo/CXPG1/deps/build.jl:165
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 19791665 (Pool: 19788822; Big: 2843); GC: 44
└ @ 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_test/packages/LibCURL/khRkY/deps/build.log`
  Building WinRPM ──→ `~/julia_test/packages/WinRPM/Y9QdZ/deps/build.log`
  Building Homebrew → `~/julia_test/packages/Homebrew/s09IX/deps/build.log`
  Building Cairo ───→ `~/julia_test/packages/Cairo/CXPG1/deps/build.log`
┌ Error: Error building `Cairo`: 
│ 
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/florian.oswald/julia_test/packages/Cairo/CXPG1/deps/build.jl:165
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 19798807 (Pool: 19795965; Big: 2842); GC: 44
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075

@daviehh
Copy link
Contributor Author

daviehh commented Apr 14, 2019

@floswald since the patch is not released, you should use add Cairo#master; may still need to run build Cairo a 2nd time (the export JULIA_DEPOT_PATH="~/julia_test" essentially makes a new .julia path for the packages).

@floswald
Copy link

of course! sorry.

unfortunately get the same thing...

➜  export JULIA_DEPOT_PATH="~/julia_test"
➜  julia
┌ Warning: Could not load Revise.
└ @ Main ~/.julia/config/startup.jl:13
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.1.0 (2019-01-21)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

(v1.1) pkg> build Cairo
  Building LibCURL ─→ `~/julia_test/packages/LibCURL/khRkY/deps/build.log`
  Building WinRPM ──→ `~/julia_test/packages/WinRPM/Y9QdZ/deps/build.log`
  Building Homebrew → `~/julia_test/packages/Homebrew/s09IX/deps/build.log`
  Building Cairo ───→ `~/julia_test/packages/Cairo/CXPG1/deps/build.log`
┌ Error: Error building `Cairo`: 
│ 
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/florian.oswald/julia_test/packages/Cairo/CXPG1/deps/build.jl:165
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 19791665 (Pool: 19788822; Big: 2843); GC: 44
└ @ 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_test/packages/LibCURL/khRkY/deps/build.log`
  Building WinRPM ──→ `~/julia_test/packages/WinRPM/Y9QdZ/deps/build.log`
  Building Homebrew → `~/julia_test/packages/Homebrew/s09IX/deps/build.log`
  Building Cairo ───→ `~/julia_test/packages/Cairo/CXPG1/deps/build.log`
┌ Error: Error building `Cairo`: 
│ 
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/florian.oswald/julia_test/packages/Cairo/CXPG1/deps/build.jl:165
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 19798807 (Pool: 19795965; Big: 2842); GC: 44
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075

(v1.1) pkg> add Cairo#master
  Updating registry at `~/julia_test/registries/General`
  Updating git-repo `https://github.com/JuliaRegistries/General.git`
   Cloning git-repo `https://github.com/JuliaGraphics/Cairo.jl.git`
  Updating git-repo `https://github.com/JuliaGraphics/Cairo.jl.git`
 Resolving package versions...
  Updating `~/julia_test/environments/v1.1/Project.toml`
  [159f3aea] ↑ Cairo v0.5.6 ⇒ v0.5.6+ #master (https://github.com/JuliaGraphics/Cairo.jl.git)
  Updating `~/julia_test/environments/v1.1/Manifest.toml`
  [159f3aea] ↑ Cairo v0.5.6 ⇒ v0.5.6+ #master (https://github.com/JuliaGraphics/Cairo.jl.git)
  Building Cairo → `~/julia_test/packages/Cairo/oqfzQ/deps/build.log`
┌ Error: Error building `Cairo`: 
│ WARNING: redefining constant DEBIAN_VERSION_REGEX
│ WARNING: redefining constant have_sonames
│ WARNING: redefining constant sonames
│ WARNING: redefining constant EXTENSIONS
│ ==> Installing pixman from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/pixman-0.38.4.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/59c64d8c0ff37e75df441d8b1560500f2a5aeb546f28e12cf7756c81ce3c73af--pixman-0.38.4.mojave.bottle.tar.gz
│ ==> Pouring pixman-0.38.4.mojave.bottle.tar.gz
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/pixman/0.38.4: 13 files, 1.3MB
│ Warning: Already linked: /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/pixman/0.38.4
│ ==> Installing cairo from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/cairo-1.16.0.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/fafc9fd181a939883ef055697994edea57d091a35299109bf774fc91092fbae7--cairo-1.16.0.mojave.bottle.tar.gz
│ ==> Pouring cairo-1.16.0.mojave.bottle.tar.gz
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/cairo/1.16.0: 117 files, 5.5MB
│ Warning: Already linked: /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/cairo/1.16.0
│ ==> Installing icu4c from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/icu4c-63.1.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/88108185da55bf1af475d5e191e97f633514bd24c1c70bb89029af6cf5cc5185--icu4c-63.1.mojave.bottle.tar.gz
│ ==> Pouring icu4c-63.1.mojave.bottle.tar.gz
│ ==> Caveats
│ icu4c is keg-only, which means it was not symlinked into /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr,
│ because macOS provides libicucore.dylib (but nothing else).
│ 
│ If you need to have icu4c first in your PATH run:
│   echo 'export PATH="/Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/opt/icu4c/bin:$PATH"' >> ~/.zshrc
│   echo 'export PATH="/Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/opt/icu4c/sbin:$PATH"' >> ~/.zshrc
│ 
│ For compilers to find icu4c you may need to set:
│   export LDFLAGS="-L/Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/opt/icu4c/lib"
│   export CPPFLAGS="-I/Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/opt/icu4c/include"
│ 
│ For pkg-config to find icu4c you may need to set:
│   export PKG_CONFIG_PATH="/Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/opt/icu4c/lib/pkgconfig"
│ 
│ ==> Summary
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/icu4c/63.1: 254 files, 68.4MB
│ ==> Installing fribidi from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/fribidi-1.0.5.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/b966c6f589c81500014b64f8e15ff29e9b70f3e7ee8e0b0b5851f700c2ad0fa4--fribidi-1.0.5.mojave.bottle.tar.gz
│ ==> Pouring fribidi-1.0.5.mojave.bottle.tar.gz
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/fribidi/1.0.5: 66 files, 581.4KB
│ Warning: Already linked: /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/fribidi/1.0.5
│ ==> Installing harfbuzz from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/harfbuzz-2.4.0.mojave.bottle.1.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/61ea4e31f63a04d505eb9d47b253ce068b5dc10c34770c81b372b9de63e784b2--harfbuzz-2.4.0.mojave.bottle.1.tar.gz
│ ==> Pouring harfbuzz-2.4.0.mojave.bottle.1.tar.gz
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/harfbuzz/2.4.0: 145 files, 9.4MB
│ Warning: Already linked: /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/harfbuzz/2.4.0
│ ==> Installing pango from staticfloat/juliatranslated
│ ==> Downloading https://homebrew.bintray.com/bottles/pango-1.42.4_1.mojave.bottle.tar.gz
│ Already downloaded: /Users/florian.oswald/Library/Caches/Homebrew.jl/downloads/f7d576fd30d48fab15ea38e97c79854a517864b3a64199be1550eb79e1143cf3--pango-1.42.4_1.mojave.bottle.tar.gz
│ ==> Pouring pango-1.42.4_1.mojave.bottle.tar.gz
│ 🍺  /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/pango/1.42.4_1: 106 files, 4.4MB
│ Warning: Already linked: /Users/florian.oswald/julia_test/packages/Homebrew/s09IX/deps/usr/Cellar/pango/1.42.4_1
│ 
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/florian.oswald/julia_test/packages/Cairo/oqfzQ/deps/build.jl:176
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 21120946 (Pool: 21117776; Big: 3170); GC: 47
└ @ 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_test/packages/LibCURL/khRkY/deps/build.log`
  Building WinRPM ──→ `~/julia_test/packages/WinRPM/Y9QdZ/deps/build.log`
  Building Homebrew → `~/julia_test/packages/Homebrew/s09IX/deps/build.log`
  Building Cairo ───→ `~/julia_test/packages/Cairo/oqfzQ/deps/build.log`
┌ Error: Error building `Cairo`: 
│ WARNING: redefining constant DEBIAN_VERSION_REGEX
│ WARNING: redefining constant have_sonames
│ WARNING: redefining constant sonames
│ WARNING: redefining constant EXTENSIONS
│ 
│ signal (11): Segmentation fault: 11
│ in expression starting at /Users/florian.oswald/julia_test/packages/Cairo/oqfzQ/deps/build.jl:176
│ _platform_strcmp at /usr/lib/system/libsystem_platform.dylib (unknown line)
│ Allocations: 19505749 (Pool: 19502930; Big: 2819); GC: 43
└ @ Pkg.Operations /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.1/Pkg/src/Operations.jl:1075

(v1.1) pkg> 

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.

6 participants