Pages: [1]   Go Down
Author Topic: KiCad on MacOS X?  (Read 1058 times)
0 Members and 1 Guest are viewing this topic.
Paris FR
Offline Offline
Full Member
***
Karma: 0
Posts: 155
cute little geek...
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I follow here this thread

Quote

I look forward to the day when "100% open source" is followed by something other than Eagle... Sad
 
The RepRap project is IMO great so I wonder if there are any plans to switch to using KiCad or gEDA or similar at any point in the future?

MacOS X users around here : Anyone knows of a way to build KiCad on MacOS X? Seems veryyyy hard, and even if binaries "used" to be around, they aren't anymore.
 
Question 2 : Will anyone be interested in trying to succeed making a clean binary release of KiCAD as a MacOS X universal binary ? I've tried, and haven't succedeed. Maybe joining forces will help. Even if Eagle is a great tool, it would be great to have a GPL software available on this platform.
Logged

... could use some sleep

Forum Administrator
Cambridge, MA
Offline Offline
Faraday Member
*****
Karma: 9
Posts: 3538
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Go for it.  It would be a nice thing to have.  Does kicad on the Mac require X?
Logged

Paris FR
Offline Offline
Full Member
***
Karma: 0
Posts: 155
cute little geek...
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Go for it.  It would be a nice thing to have.

I'll do another try... But I think I'll need help at some moment smiley-kitty

Quote
 Does kicad on the Mac require X?

X-Window ? Don't think so, it's based on the wxWidgets libs, which runs seamlessly on Aqua.
« Last Edit: June 05, 2008, 06:43:19 pm by tehboii » Logged

... could use some sleep

Paris FR
Offline Offline
Full Member
***
Karma: 0
Posts: 155
cute little geek...
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Code:
/usr/include/wx-2.5/wx/defs.h:528: error: template with C linkage
/usr/include/wx-2.5/wx/string.h:940: error: declaration of C function 'wxString operator+(const wxString&, wxChar)' conflicts with
/usr/include/wx-2.5/wx/string.h:938: error: previous declaration 'wxString operator+(const wxString&, const wxString&)' here
/usr/include/wx-2.5/wx/string.h:942: error: declaration of C function 'wxString operator+(wxChar, const wxString&)' conflicts with
/usr/include/wx-2.5/wx/string.h:940: error: previous declaration 'wxString operator+(const wxString&, wxChar)' here
/usr/include/wx-2.5/wx/string.h:944: error: declaration of C function 'wxString operator+(const wxString&, const wxChar*)' conflicts with
/usr/include/wx-2.5/wx/string.h:942: error: previous declaration 'wxString operator+(wxChar, const wxString&)' here
/usr/include/wx-2.5/wx/string.h:946: error: declaration of C function 'wxString operator+(const wxChar*, const wxString&)' conflicts with
/usr/include/wx-2.5/wx/string.h:944: error: previous declaration 'wxString operator+(const wxString&, const wxChar*)' here
/usr/include/wx-2.5/wx/arrstr.h:219: error: declaration of C function 'wxArrayString::reverse_iterator operator+(int, const wxArrayString::reverse_iterator&)' conflicts with
/usr/include/wx-2.5/wx/string.h:946: error: previous declaration 'wxString operator+(const wxChar*, const wxString&)' here
/usr/include/wx-2.5/wx/arrstr.h:220: error: declaration of C function 'wxArrayString::reverse_iterator operator+(const wxArrayString::reverse_iterator&, int)' conflicts with
/usr/include/wx-2.5/wx/arrstr.h:219: error: previous declaration 'wxArrayString::reverse_iterator operator+(int, const wxArrayString::reverse_iterator&)' here
/usr/include/wx-2.5/wx/string.h: In function 'wxString operator+(const wxWCharBuffer&, const wxString&)':
/usr/include/wx-2.5/wx/string.h:1524: error: declaration of C function 'wxString operator+(const wxWCharBuffer&, const wxString&)' conflicts with
/usr/include/wx-2.5/wx/string.h:1522: error: previous declaration 'wxString operator+(const wxString&, const wxWCharBuffer&)' here
/usr/include/wx-2.5/wx/dynarray.h: At global scope:
/usr/include/wx-2.5/wx/dynarray.h:963: error: declaration of C function 'wxArrayShort::reverse_iterator operator+(int, const wxArrayShort::reverse_iterator&)' conflicts with
/usr/include/wx-2.5/wx/string.h:1524: error: previous declaration 'wxString operator+(const wxWCharBuffer&, const wxString&)' here
/usr/include/wx-2.5/wx/dynarray.h:963: error: declaration of C function 'wxArrayShort::reverse_iterator operator+(const wxArrayShort::reverse_iterator&, int)' conflicts with
/usr/include/wx-2.5/wx/dynarray.h:963: error: previous declaration 'wxArrayShort::reverse_iterator operator+(int, const wxArrayShort::reverse_iterator&)' here
/usr/include/wx-2.5/wx/dynarray.h:963: confused by earlier errors, bailing out
make[2]: *** [common/CMakeFiles/common.dir/base_screen.o] Error 1
make[1]: *** [common/CMakeFiles/common.dir/all] Error 2
make: *** [all] Error 2

(I cut down the output of the middle, it was really too long. Basically, tons of declarations conflicts within string.h)

The strange fact is that I've had to hack the /CMakeModules/FindwxWidgetsCVS.cmake because it apparently contained an error which led the cmake to fail :
Code:
# tehboii       FOREACH(_upper_opt_name DEBUG STATIC UNICODE UNIVERSAL)
        FOREACH(_opt_name DEBUG STATIC UNICODE UNIVERSAL) #tehboii
          SET(wxWidgets_DEFAULT_${_upper_opt_name} OFF)
        ENDFOREACH(_opt_name)

Ideas, anyone ?
« Last Edit: June 05, 2008, 08:33:19 pm by tehboii » Logged

... could use some sleep

Forum Administrator
Cambridge, MA
Offline Offline
Faraday Member
*****
Karma: 9
Posts: 3538
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

What was the error you were getting before you hacked the cmake file?  Sometimes that sort of hack gets you to the next step, but breaks something.

Also, it's weird that's trying to declare operator+ as a C function, since overloaded operators only really make sense in C++, I think.  Do you see any:

 extern "C"

statements in defs.h (above line 528) or string.h or anything they include.  Which file was being compiled when those errors occurred?
Logged

Paris FR
Offline Offline
Full Member
***
Karma: 0
Posts: 155
cute little geek...
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
What was the error you were getting before you hacked the cmake file?  Sometimes that sort of hack gets you to the next step, but breaks something.

cmake reported that it was unable to continue because there a FOREACH statement in a "CMfile with no associated ENDFOREACH, in a "CMakeLists.txt". After checking every CMakeLists.txt in the tree, there was none FOREACH statement in any of them.

But there was one in /CMakeModules/FindwxWidgetsCVS.cmake which seemingly ended with a different parameter than the one it started with, as you can see in my code extract.

Quote
Also, it's weird that's trying to declare operator+ as a C function, since overloaded operators only really make sense in C++, I think.  Do you see any:

 extern "C"

statements in defs.h (above line 528) or string.h or anything they include.  Which file was being compiled when those errors occurred?

I'll check these points a little bit later, don't have time for it now. Thank you for helping, I hope to see a "nothing to be done for : all" sooner or later smiley-kitty
« Last Edit: June 06, 2008, 11:30:33 am by tehboii » Logged

... could use some sleep

Forum Administrator
Cambridge, MA
Offline Offline
Faraday Member
*****
Karma: 9
Posts: 3538
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I'd try changing the ENDFOREACH to _upper_opt_name and leaving the FOREACH as it was originally as it looks like _upper_opt_name is used inside the loop.  You might also want to start with a fresh copy of the source tree.
Logged

New Zealand
Offline Offline
God Member
*****
Karma: 0
Posts: 999
Arduino pebbles
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
I follow here this thread
Quote
I wonder if there are any plans to switch to using KiCad
Ahh, don't listen to that guy... smiley-grin

Quote
MacOS X users around here : Anyone knows of a way to build KiCad on MacOS X? Seems veryyyy hard, and even if binaries "used" to be around, they aren't anymore.
Your impression is unfortunately fairly accurate so far. I have just regained access to the machine I had built (and downloaded) KiCad on so when my server is up again I'll try to take a look at re-uploading them. Even so, it wasn't a particularly usable build in its current state.
 
Quote
Question 2 : Will anyone be interested in trying to succeed making a clean binary release of KiCAD as a MacOS X universal binary ? I've tried, and haven't succedeed. Maybe joining forces will help.
I documented (some of?) what I used to build things here: http://google.com/search?q=cache:http://code.rancidbacon.com/BuildingKiCadOnMacOSX(cached due to server issue)

That page includes a link to someone who has made a more recent but not entirely successful attempt to build KiCad on Mac OS X.

One significant issue (in terms of making the build visually usable) is discussed here: http://tech.groups.yahoo.com/group/kicad-devel/message/1436

Any progress would be gratefully noted!

--Phil.
Logged

Paris FR
Offline Offline
Full Member
***
Karma: 0
Posts: 155
cute little geek...
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Having read follower's answer and various comments on kicad-dev and others, I think that if people are really interested in making KiCAD works on OSX, we'd better set up a work group to considerer a partial rewrite of the source code, even if it involves forking from the main code, as it have been done with NeoOffice

This matter should be discussed first on kicad-dev (which I'm not member of, yet) 'cause it would be very rude to act like "okay we take this code and go playing with it on our side thksbye"

So, what about the kicad-osx group on sourceforge ? smiley-kitty
« Last Edit: June 07, 2008, 06:46:58 am by tehboii » Logged

... could use some sleep

0
Offline Offline
Newbie
*
Karma: 0
Posts: 3
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi,

One small tip: Use a more recent version of wxWidgets. wx-2.8 is recommended since the old versions of wx use deprecated API's and won't work on Mac OS 10.5 or newer. KiCad on Mac OS X will thus probably require wx >= 2.8. You can get wxWidgets from MacPorts.

Also, as mentioned earlier, this discussion could be brought up on kicad-devel, especially if you're interested in contributing something.

 -Marius

Update: With the latest svn version of kicad and wxWidgets from MacPorts, kicad now compiles and runs, at least on Mac OS X 10.5.
« Last Edit: June 15, 2008, 02:12:23 pm by kintel » Logged

Pages: [1]   Go Up
Jump to: