cannot compile rev 15278, Windows 10 (64-bit)

Bug #1645062 reported by please-include-batteries on 2016-11-27
20
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Inkscape
Undecided
Yale Zhang

Bug Description

First issue:
cairo-utils.cpp:16:23: fatal error: arpa/inet.h: No such file or directory
arpa/inet.h is unused, commenting out the include fixes it.

Second:
[100%] Linking CXX executable ..\bin\inkscape.exe
../lib/libgc_LIB.a(gc.cpp.obj):gc.cpp:(.text+0x4f0): multiple definition of `Inkscape::GC::Core::init()'
../lib/libinkscape_base.dll.a(d010870.o):(.text+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
src\CMakeFiles\inkscape.dir\build.make:201: recipe for target 'bin/inkscape.exe' failed
mingw32-make[2]: *** [bin/inkscape.exe] Error 1
CMakeFiles\Makefile2:421: recipe for target 'src/CMakeFiles/inkscape.dir/all' failed
mingw32-make[1]: *** [src/CMakeFiles/inkscape.dir/all] Error 2
Makefile:126: recipe for target 'all' failed
mingw32-make: *** [all] Error 2

I'm new here but I think I followed all the directions properly for the setup and cmake build.

Related branches

Patrick Storz (ede123) wrote :

First part (arpa/inet.h) fixed in
http://bazaar.launchpad.net/~inkscape.dev/inkscape/trunk/revision/15280

Let's see if I hit the second bug, too (just compiling)

Patrick Storz (ede123) wrote :

Second issue happens for me, too.

I tried to figure out what's wrong, but this goes way over my head...

Does Inkscape do automated tests for each commit so there is a quick way to find where it broke?

Patrick Storz (ede123) wrote :

No, especially not for Windows (Windows is a bit of a black sheep in the Inkscape developer community...).

If you have a fast machine you could try some binary-search-like approach to figure it out, but obviously compiling several versions will take some time...

I'll try the search and see what I find. The 0.92 branch revision 15225 has both issues.

Patrick Storz (ede123) wrote :

You mean "The 0.92 branch revision 15225 *does not* has both issues."?

(I just built it without problems)

I checked out 15225 from the trunk by accident

jazzynico (jazzynico) wrote :

There's an automatic build system on Launchpad that tests that the application compiles correctly, but for the Ubuntu version of the Inkscape packages only.

tags: added: build win64
Rey F Diaz (rfdiazpr) wrote :

revision is 15370
../lib/libgc_LIB.a(gc.cpp.obj):gc.cpp:(.text+0x4f0): multiple definition of `Inkscape::GC::Core::init()'
../lib/libinkscape_base.dll.a(d010866.o):(.text+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
mingw32-make[2]: *** [bin/inkscape.exe] Error 1
mingw32-make[1]: *** [src/CMakeFiles/inkscape.dir/all] Error 2
mingw32-make: *** [all] Error 2

Alvin Penner (apenner) on 2017-01-02
Changed in inkscape:
status: New → Confirmed
Hachmann (marenhachmann) wrote :

Is this what the patch on the mailing list is for?

https://sourceforge.net/p/inkscape/mailman/message/35581138/

Alvin Penner (apenner) wrote :

yes, I believe it is. I reported a problem on the dev mail list without realizing that this bug report existed
http://inkscape.13.x6.nabble.com/compile-error-on-Windows-10-Inkscape-rev-15382-64-bit-td4978305.html

Patrick Storz (ede123) wrote :

Patch from the mailing list confirmed working to compile trunk revision 15280 with cmake version 3.6.2 on Windows 10 with devlibs64.

Mc (mc...) on 2017-01-03
Changed in inkscape:
assignee: nobody → Yale Zhang (simdgenius)
Mc (mc...) on 2017-01-03
Changed in inkscape:
milestone: none → 0.93
Mc (mc...) wrote :

Pushed to r15388.

Changed in inkscape:
status: Confirmed → Fix Committed
Andrey Poltavets (apolta) wrote :

Hi guys!
It seems like such issue has been appeared again. I faced it in trunk 15458 revision on Windows 10 64-bit.

I'm not pretty familiar with Bazaar but I've triple checked this on Windows machine.
Is there someone who can check this too?

```
[100%] Built target dir-util-test
../lib/libgc_LIB.a(gc.cpp.obj):gc.cpp:(.text+0x4f0): multiple definition of `Inkscape::GC::Core::init()'
../lib/libinkscape_base.dll.a(d010966.o):(.text+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
testfiles\CMakeFiles\sp-object-test.dir\build.make:184: recipe for target 'bin/sp-object-test.exe' failed
mingw32-make[2]: *** [bin/sp-object-test.exe] Error 1
CMakeFiles\Makefile2:5896: recipe for target 'testfiles/CMakeFiles/sp-object-test.dir/all' failed
mingw32-make[1]: *** [testfiles/CMakeFiles/sp-object-test.dir/all] Error 2
Makefile:137: recipe for target 'all' failed
mingw32-make: *** [all] Error 2
```

You need to duplicate the change made to src/CMakeLists.txt to
testfiles/CMakeFiles.txt

Ideally, the library list, INKSCAPE_TARGET_LIBS should be moved from
src/CMakeLists.txt to CMakeLists.txt and be inherited by the test
suite and src

On Fri, Jan 27, 2017 at 3:05 PM, Andrey Poltavets
<email address hidden> wrote:
> Hi guys!
> It seems like such issue has been appeared again. I faced it in trunk 15458 revision on Windows 10 64-bit.
>
> I'm not pretty familiar with Bazaar but I've triple checked this on Windows machine.
> Is there someone who can check this too?
>
> ```
> [100%] Built target dir-util-test
> ../lib/libgc_LIB.a(gc.cpp.obj):gc.cpp:(.text+0x4f0): multiple definition of `Inkscape::GC::Core::init()'
> ../lib/libinkscape_base.dll.a(d010966.o):(.text+0x0): first defined here
> collect2.exe: error: ld returned 1 exit status
> testfiles\CMakeFiles\sp-object-test.dir\build.make:184: recipe for target 'bin/sp-object-test.exe' failed
> mingw32-make[2]: *** [bin/sp-object-test.exe] Error 1
> CMakeFiles\Makefile2:5896: recipe for target 'testfiles/CMakeFiles/sp-object-test.dir/all' failed
> mingw32-make[1]: *** [testfiles/CMakeFiles/sp-object-test.dir/all] Error 2
> Makefile:137: recipe for target 'all' failed
> mingw32-make: *** [all] Error 2
> ```
>
> --
> You received this bug notification because you are a bug assignee.
> https://bugs.launchpad.net/bugs/1645062
>
> Title:
> cannot compile rev 15278, Windows 10 (64-bit)
>
> Status in Inkscape:
> Fix Committed
>
> Bug description:
> First issue:
> cairo-utils.cpp:16:23: fatal error: arpa/inet.h: No such file or directory
> arpa/inet.h is unused, commenting out the include fixes it.
>
> Second:
> [100%] Linking CXX executable ..\bin\inkscape.exe
> ../lib/libgc_LIB.a(gc.cpp.obj):gc.cpp:(.text+0x4f0): multiple definition of `Inkscape::GC::Core::init()'
> ../lib/libinkscape_base.dll.a(d010870.o):(.text+0x0): first defined here
> collect2.exe: error: ld returned 1 exit status
> src\CMakeFiles\inkscape.dir\build.make:201: recipe for target 'bin/inkscape.exe' failed
> mingw32-make[2]: *** [bin/inkscape.exe] Error 1
> CMakeFiles\Makefile2:421: recipe for target 'src/CMakeFiles/inkscape.dir/all' failed
> mingw32-make[1]: *** [src/CMakeFiles/inkscape.dir/all] Error 2
> Makefile:126: recipe for target 'all' failed
> mingw32-make: *** [all] Error 2
>
> I'm new here but I think I followed all the directions properly for
> the setup and cmake build.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/inkscape/+bug/1645062/+subscriptions

Andrey Poltavets (apolta) wrote :

@simdgenius

Thank you!

I did this stuff. Please give some time to get understanding of Bazaar to commit fix.

Yale Zhang (simdgenius) wrote :

Andrey, I tried again to push my changes, but it errors with

Using saved push location: bzr+ssh://bazaar.launchpad.net/+branch/inkscape/
bzr: ERROR: Cannot lock
LockDir(chroot-87634256:///%2Bbranch/inkscape/.bzr/branch/lock):
Transport operation not possible: readonly transport

Am I even in the developer list? Eduard Braun checked in the patch
for the other makefile of my behalf. That's supposed to grant me
checkin permissions right?

I've also been waiting for my other vectorized gaussian blur
implementation (https://code.launchpad.net/~simdgenius/inkscape/inkscape/+merge/307251)
to be reviewed, so I can check in, but no takers.

On Sat, Jan 28, 2017 at 8:01 AM, Launchpad Bug Tracker
<email address hidden> wrote:
> ** Branch linked: lp:~apolta/inkscape/win10_building_problem_fix
>
> --
> You received this bug notification because you are a bug assignee.
> https://bugs.launchpad.net/bugs/1645062
>
> Title:
> cannot compile rev 15278, Windows 10 (64-bit)
>
> Status in Inkscape:
> Fix Committed
>
> Bug description:
> First issue:
> cairo-utils.cpp:16:23: fatal error: arpa/inet.h: No such file or directory
> arpa/inet.h is unused, commenting out the include fixes it.
>
> Second:
> [100%] Linking CXX executable ..\bin\inkscape.exe
> ../lib/libgc_LIB.a(gc.cpp.obj):gc.cpp:(.text+0x4f0): multiple definition of `Inkscape::GC::Core::init()'
> ../lib/libinkscape_base.dll.a(d010870.o):(.text+0x0): first defined here
> collect2.exe: error: ld returned 1 exit status
> src\CMakeFiles\inkscape.dir\build.make:201: recipe for target 'bin/inkscape.exe' failed
> mingw32-make[2]: *** [bin/inkscape.exe] Error 1
> CMakeFiles\Makefile2:421: recipe for target 'src/CMakeFiles/inkscape.dir/all' failed
> mingw32-make[1]: *** [src/CMakeFiles/inkscape.dir/all] Error 2
> Makefile:126: recipe for target 'all' failed
> mingw32-make: *** [all] Error 2
>
> I'm new here but I think I followed all the directions properly for
> the setup and cmake build.
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/inkscape/+bug/1645062/+subscriptions

Andrey Poltavets (apolta) wrote :

Yale,

regarding this I pushed the small fix to my branch ( I hope it works ), I also wait for review though... I do not know whether are you in devlist or not hence I kinda free contributor here too.

About your concern: perhars you've mismatched the workflow of launchpad?

jazzynico (jazzynico) wrote :

For the record, the patch from comment #12 was committed in lp:inkscape (trunk) rev. 15388.

@Audrey and Yale, thanks for the patch! The only drawback here is that you added it to a closed report. It would have been far better to open a new one so that we can handle it separately.

But don't worry, I'm going to review the patch and commit it if it's ok.

@Yale, as for the readonly lock, I confirm that you're not member of the development team (https://launchpad.net/~inkscape.dev/+members) and that you can't write to the branch directly.
To become member of the team you need to have two patches accepted and committed (the Inkscape's "two patches rule"), and as far as I can see, the cmake patch was your first.

jazzynico (jazzynico) wrote :

> But don't worry, I'm going to review the patch and commit it if it's ok.

Should have checked the title twice... I can't test it on Windows 10 because I don't have it on my computers. The only thing I can do for now it test for regressions on Xubuntu 16.04.

Andrey Poltavets (apolta) wrote :

I had been fully misled guys.

The changes of patch from #12 were already included in trunk. Yeah, I saw them in 15457 revision.

Despite this I was not able to build Inkscape on Win10 machine. Perhaps the patch from Yale had fixed some errors bit earlier. Seems lot of new changes in trunk led to such error on Windows again. That what is my patch supposed to.

Qantas94Heavy (qantas94heavy) wrote :

I'm going to close this as this was only on trunk and a fix was committed for it. If there is some other problem causing a build failure on current Inkscape master, please file a new bug. Thank you!

Changed in inkscape:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers