buggins / dlangide

D language IDE based on DlangUI
Boost Software License 1.0
446 stars 55 forks source link

Can't build on Ubuntu 16.04 #389

Open DeivAstra opened 5 years ago

DeivAstra commented 5 years ago

I have installed last stable DMD 2.0.83.0. deb package.

Then

git clone --recursive https://github.com/buggins/dlangide.git
cd  dlangide
dub build --verbose

I also tried below commands but the error remain:

dub clean-caches
dub upgrade --force-remove
dub build --force

Log output: Using dub registry url 'https://code.dlang.org/' Refreshing local packages (refresh existing: true)... Looking for local package map at /var/lib/dub/packages/local-packages.json Looking for local package map at /home/danykey/.dub/packages/local-packages.json Determined package version using GIT: dlangide 0.8.14 Refreshing local packages (refresh existing: false)... Looking for local package map at /var/lib/dub/packages/local-packages.json Looking for local package map at /home/danykey/.dub/packages/local-packages.json Version selection for dependency dsymbol (dsymbol) of dlangide is missing. Missing dependency dsymbol ~>0.4.8 of dlangide Version selection for dependency dcd (dcd) of dlangide is missing. Missing dependency dcd ~>0.9.13 of dlangide Version selection for dependency dlangui (dlangui) of dlangide is missing. Missing dependency dlangui 0.9.180 of dlangide Refreshing local packages (refresh existing: false)... Looking for local package map at /var/lib/dub/packages/local-packages.json Looking for local package map at /home/danykey/.dub/packages/local-packages.json Version selection for dependency dsymbol (dsymbol) of dlangide is missing. Missing dependency dsymbol ~>0.4.8 of dlangide Version selection for dependency dcd (dcd) of dlangide is missing. Missing dependency dcd ~>0.9.13 of dlangide Version selection for dependency dlangui (dlangui) of dlangide is missing. Missing dependency dlangui 0.9.180 of dlangide Checking for missing dependencies. Search for versions of dsymbol (1 package suppliers) Return for dsymbol: [0.4.8, 0.4.7, 0.4.6, 0.4.5, 0.4.4, 0.4.3, 0.4.2, 0.4.1, 0.4.0, 0.3.12, 0.3.11, 0.3.10, 0.3.9, 0.3.8, 0.3.7, 0.3.6, 0.3.5, 0.3.4, 0.3.3, 0.3.2, 0.3.1, 0.3.0, 0.2.9, 0.2.8, 0.2.7, 0.2.6, 0.2.5, 0.2.4, 0.2.3, 0.2.2, 0.2.1, 0.2.0, 0.1.2, 0.1.1, 0.1.0, 0.3.0-beta.3, 0.3.0-beta.2, 0.3.0-beta.1, 0.2.1-alpha.2, 0.2.1-alpha.1, 0.2.0-beta.2, 0.2.0-beta.1, 0.2.0-alpha7, 0.2.0-alpha6, 0.2.0-alpha5, 0.2.0-alpha4, 0.2.0-alpha3, 0.2.0-alpha2, 0.2.0-alpha1, 0.2.0-alpha.10, 0.2.0-alpha.9, 0.2.0-alpha.8, ~master, ~containers-0.7] Search for versions of dcd (1 package suppliers) Return for dcd: [0.9.13, 0.9.12, 0.9.11, 0.9.10, 0.9.9, 0.9.8, 0.9.7, 0.9.6, 0.9.5, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0, 0.8.0, 0.7.5, 0.7.4, 0.9.10-alpha.0, 0.9.0-beta.1, 0.9.0-alpha6, 0.9.0-alpha5, 0.9.0-alpha4, 0.9.0-alpha3, 0.9.0-alpha2, 0.9.0-alpha1, 0.9.0-alpha.6, 0.8.0-beta2, 0.8.0-beta1, ~master] Search for versions of dlangui (1 package suppliers) Ignoring version specification (>=0.0.0) for path based dependency ../../ ... ... Ignoring version specification (>=0.0.0) for path based dependency ../../ Return for dlangui: [0.9.180, 0.9.179, 0.9.178, 0.9.177, 0.9.176, 0.9.175, 0.9.174, 0.9.173, 0.9.172, 0.9.171, 0.9.170, 0.9.169, 0.9.168, 0.9.167, 0.9.166, 0.9.165, 0.9.164, 0.9.163, 0.9.162, 0.9.161, 0.9.160, 0.9.159, 0.9.158, 0.9.157, 0.9.156, 0.9.155, 0.9.154, 0.9.153, 0.9.152, 0.9.151, 0.9.150, 0.9.149, 0.9.148, 0.9.147, 0.9.146, 0.9.145, 0.9.144, 0.9.143, 0.9.142, 0.9.141, 0.9.140, 0.9.139, 0.9.138, 0.9.137, 0.9.136, 0.9.135, 0.9.134, 0.9.133, 0.9.132, 0.9.131, 0.9.130, 0.9.129, 0.9.128, 0.9.127, 0.9.126, 0.9.125, 0.9.124, 0.9.123, 0.9.122, 0.9.121, 0.9.120, 0.9.119, 0.9.118, 0.9.117, 0.9.116, 0.9.115, 0.9.114, 0.9.113, 0.9.112, 0.9.111, 0.9.110, 0.9.109, 0.9.108, 0.9.107, 0.9.106, 0.9.105, 0.9.104, 0.9.103, 0.9.102, 0.9.101, 0.9.100, 0.9.99, 0.9.98, 0.9.97, 0.9.96, 0.9.95, 0.9.94, 0.9.93, 0.9.92, 0.9.91, 0.9.90, 0.9.89, 0.9.88, 0.9.87, 0.9.86, 0.9.85, 0.9.84, 0.9.83, 0.9.82, 0.9.81, ~master] Search for versions of emsi_containers (1 package suppliers) Return for emsi_containers: [0.7.0, 0.6.0, 0.5.3, 0.5.2, 0.5.1, 0.5.0, 0.4.3, 0.4.2, 0.4.1, 0.4.0, 0.3.0, 0.8.0-alpha.10, 0.8.0-alpha.9, 0.8.0-alpha.8, 0.8.0-alpha.7, 0.8.0-alpha.6, 0.8.0-alpha.5, 0.8.0-alpha.4, 0.8.0-alpha.3, 0.8.0-alpha.2, 0.8.0-alpha.1, ~master] Search for versions of libdparse (1 package suppliers) Return for libdparse: [0.9.10, 0.9.9, 0.9.8, 0.9.7, 0.9.6, 0.9.5, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0, 0.8.8, 0.8.7, 0.8.6, 0.8.5, 0.8.4, 0.8.3, 0.8.2, 0.8.1, 0.8.0, 0.7.1, 0.7.0, 0.6.0, 0.5.0, 0.4.3, 0.4.2, 0.4.1, 0.4.0, 0.3.0, 0.2.1, 0.2.0, 0.1.1, 0.1.0, 0.8.0-alpha.5, 0.8.0-alpha.4, 0.8.0-alpha.3, 0.8.0-alpha.2, 0.8.0-alpha.1, 0.7.2-alpha.6, 0.7.2-alpha.5, 0.7.2-alpha.4, 0.7.2-alpha.3, 0.7.2-alpha.2, 0.7.2-alpha.1, 0.7.1-beta.9, 0.7.1-beta.8, 0.7.1-beta.7, 0.7.1-beta.6, 0.7.1-beta.5, 0.7.1-beta.4, 0.7.1-beta.3, 0.7.1-beta.2, 0.7.1-beta.1, 0.7.0-beta.8, 0.7.0-beta.7, 0.7.0-beta.6, 0.7.0-beta.5, 0.7.0-beta.4, 0.7.0-beta.3, 0.7.0-beta.2, 0.7.0-beta.1, 0.7.0-alpha9, 0.7.0-alpha8, 0.7.0-alpha7, 0.7.0-alpha6, 0.7.0-alpha5, 0.7.0-alpha4, 0.7.0-alpha3, 0.7.0-alpha2, 0.7.0-alpha12, 0.7.0-alpha11, 0.7.0-alpha10, 0.7.0-alpha1, 0.7.0-alpha.15, 0.7.0-alpha.14, 0.7.0-alpha.13, ~master] Search for versions of stdx-allocator (1 package suppliers) Return for stdx-allocator: [3.0.0, 2.77.4, 2.77.3, 2.77.2, 2.77.1, 2.77.0, 2.77.0-1, ~master] Search for versions of msgpack-d (1 package suppliers) Return for msgpack-d: [0.9.6, 0.9.5, 0.9.4, 0.9.3, 0.9.2, 0.9.1, 0.9.0, 1.0.0-beta.7, 1.0.0-beta.6, 1.0.0-beta.5, 1.0.0-beta.4, 1.0.0-beta.3, 1.0.0-beta.2, 1.0.0-beta.1, ~master, ~support-unpack-struct-withFieldName, ~seperate-modules, ~fix-enum-conflict, ~add-better-message-for-invalid-type] Search for versions of derelict-gl3 (1 package suppliers) Return for derelict-gl3: [1.0.24, 1.0.23, 1.0.22, 1.0.21, 1.0.20, 1.0.19, 1.0.18, 1.0.17, 1.0.16, 1.0.15, 1.0.14, 1.0.13, 1.0.12, 1.0.11, 1.0.10, 1.0.9, 1.0.8, 1.0.7, 1.0.6, 1.0.5, 1.0.4, 1.0.3, 1.0.2, 1.0.1, 1.0.0, 2.0.0-beta.7, 2.0.0-beta.6, 2.0.0-beta.5, 2.0.0-beta.4, 2.0.0-beta.3, 2.0.0-beta.2, 2.0.0-beta.1, 2.0.0-alpha.5, 2.0.0-alpha.4, 2.0.0-alpha.3, 2.0.0-alpha.2, 2.0.0-alpha.1, ~master, ~mixins, ~2.0, ~1.0] Search for versions of derelict-ft (1 package suppliers) Return for derelict-ft: [1.1.3, 1.1.2, 1.1.1, 1.1.0, 1.0.2, 1.0.1, 1.0.0, 2.0.0-beta.4, 2.0.0-beta.3, 2.0.0-beta.2, 2.0.0-beta.1, 2.0.0-alpha.1, ~master, ~DFT1.2, ~2.6, ~2.5, ~2.0] Search for versions of derelict-sdl2 (1 package suppliers) Return for derelict-sdl2: [2.1.4, 2.1.3, 2.1.2, 2.1.1, 2.1.0, 2.0.2, 2.0.1, 2.0.0, 1.9.7, 1.9.6, 1.9.5, 1.9.4, 1.9.3, 1.9.2, 1.9.1, 1.9.0, 1.2.16, 1.2.15, 1.2.14, 1.2.13, 1.2.12, 1.2.11, 1.2.10, 1.2.9, 1.2.8, 1.2.7, 1.2.6, 1.2.5, 1.2.4, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.17, 1.1.16, 1.1.15, 1.1.14, 1.1.13, 1.1.12, 1.1.11, 1.1.10, 1.1.9, 1.1.8, 1.1.7, 1.1.6, 1.1.5, 1.1.4, 1.1.3, 1.1.2, 1.1.1, 1.1.0, 1.0.19, 1.0.18, 1.0.17, 1.0.16, 1.0.15, 1.0.14, 1.0.13, 1.0.12, 1.0.11, 1.0.10, 1.0.9, 1.0.8, 1.0.7, 1.0.6, 1.0.5, 1.0.4, 1.0.3, 1.0.2, 1.0.1, 1.0.0, 3.1.0-alpha.4, 3.1.0-alpha.3, 3.1.0-alpha.2, 3.1.0-alpha.1, 3.0.0-beta.7, 3.0.0-beta.6, 3.0.0-beta.5, 3.0.0-beta.4, 3.0.0-beta.3, 3.0.0-beta.2, 3.0.0-beta.1, 3.0.0-alpha.6, 3.0.0-alpha.5, 3.0.0-alpha.4, 3.0.0-alpha.3, 3.0.0-alpha.2, 3.0.0-alpha.1, ~master, ~3.1, ~3.0, ~2.1, ~2.0.4, ~2.0.2, ~2.0.1, ~2.0.0] Search for versions of x11 (1 package suppliers) Return for x11: [1.0.21, 1.0.20, 1.0.19, 1.0.18, 1.0.17, 1.0.16, 1.0.15, 1.0.14, 1.0.13, 1.0.12, 1.0.11, 1.0.10, 1.0.9, 1.0.8, 1.0.7, 1.0.6, 1.0.5, 1.0.4, 1.0.3, 1.0.2, 1.0.1, 1.0.0, ~master] Search for versions of dsfml (1 package suppliers) Return for dsfml: [2.1.1, 2.1.0, ~master, ~2.3, ~2.0] Search for versions of derelict-util (1 package suppliers) Return for derelict-util: [2.1.0, 2.0.6, 2.0.5, 2.0.4, 2.0.3, 2.0.2, 2.0.1, 2.0.0, 1.9.1, 1.9.0, 1.0.3, 1.0.2, 1.0.1, 1.0.0, 3.0.0-beta.2, 3.0.0-beta.1, 3.0.0-alpha.2, 3.0.0-alpha.1, ~master, ~3.0, ~2.1, ~2.0] Unresolvable dependencies to package derelict-util: derelict-ft 1.1.3 depends on derelict-util ~>2.0.6 derelict-gl3 1.0.24 depends on derelict-util >=1.0.3

Nafees10 commented 5 years ago

this isn't just on ubuntu 16.04, same happens on ubuntu 18.04 with dmd v2.083.0. Running
dub build dlangide --build=release
gives this output:

Building package dlangide in /home/nafees/.dub/packages/dlangide-0.8.14/dlangide/
Unresolvable dependencies to package derelict-util:
  derelict-ft 1.1.3 depends on derelict-util ~>2.0.6
  derelict-gl3 1.0.24 depends on derelict-util >=1.0.3
barukasu commented 5 years ago

If you have the problem

Building package dlangide in /home/nafees/.dub/packages/dlangide-0.8.14/dlangide/
Unresolvable dependencies to package derelict-util:
  derelict-ft 1.1.3 depends on derelict-util ~>2.0.6
  derelict-gl3 1.0.24 depends on derelict-util >=1.0.3

the solution is to install derelict-util

dub fetch derelict-util
dub run --build=release derelict-util
Nafees10 commented 5 years ago

no change, still the same output.
and dub fetch derelict-util fetches derelict-util 2.1.0

barukasu commented 5 years ago

I added the following to the dub.json and the gui started. But later, I got a segfault...

    "buildRequirements": ["silenceWarnings"],
    "dependencies": {
        "dlangui": "==0.9.180",
        "dsymbol": "~>0.4.8",
        "dcd": "~>0.9.13",
    "derelict-ft":"~>1.1.3",
    "derelict-util":"~>2.0.6",
    "derelict-gl3":"~>1.0.24"
    },

This suppresses the warning in order to get the gui to work. There are warnings about color #FFFFFF not being in the C format. Maybe this is the warning causing the segfault.

buggins commented 5 years ago

0.8.16 should work ok. Please confirm if issue is fixed.

Nafees10 commented 5 years ago

Tried building and running v0.8.17, it works.
So I guess it's fixed.

barukasu commented 5 years ago

Yes! you're right @buggins Everything works using 0.8.17.

DeivAstra commented 5 years ago

Works for me! Thanks a lot, Vadim. I think you may close the issue.