CEDAR Logic Simulator

Использование и разработка софта (преимущественно на ПЦ)

Moderator: Shaos

bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Post by bar »

А у мну в генту есть ебилды лишь для 2.8 и 2.9... Можно конечно написать ебилд для 2.4, и, теоретически, gentoo позволяет иметь в системе разные версии одной библиотеки. Другое дело что я не очень представляю себе как спровоцировать emerge, при установке поставить дополнительную версию, а не заменить существующую...
Хотя, можно, не парясь, поставить куда-нибудь в $HOME. Я попробую.

И я закинул всё это на github. https://github.com/amty/cedar-logic
С git, правда, я работал лишь на уровне git clone... То есть можно сказать вообще не работал. Но думаю, разберусь.
И на github, в отличие от того tar.bz2, я вернул взад Makefile, с правилом сборки xpm'ок из bmp'шек, я его случайно удалил вместе с картинками, прочищая сорцы. =)
bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Post by bar »

Shaos wrote:Обломчик - с моим wx v2.4 оно не собирается, а wx v2.8 в мою слаку не ставится :(
А вообще, странно это. В принципе-то, программа на sf не менялась с 2006 года. То есть, думается мне, что она должна дружить с 2.4. Я же практически ничего не менял в коде, что могло бы изменить версию. Лишь в gateImage в начале, там где объявление таблички ивентов.
Может дело в том, что я закинул на народ не собирающиеся сорцы? Там не хватало файлика GUI/xpm_bitmaps/Makefile, и где-то не хватало какого-то include'а моего заголовка. Это я потом выяснил, когда начал собирать снова. Попробуй для убеждённости с git вытянуть, и собрать. Я повозившись, сделал-таки, чтоб оно всё вытягивалось как надо. Вот последовательность команд, которая запускает у меня cedar из github:

Code: Select all

git clone git@github.com:amty/cedar-logic.git
cd cedar-logic/
git submodule init
git submodule update
make
./cedar
User avatar
Shaos
Admin
Posts: 24008
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Code: Select all

make: *** No rule to make target `tinyxml2/tinyxml2.o', needed by `all'.  Stop.
нету tinyxml2 там...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24008
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

скопировал tinyxml2 вручную - попробовал собрать, изменив вызовы wx-config в Makefile, вот что получилось:

Code: Select all

bash-4.1$ make
make -C logic
make[1]: Entering directory `/home/shaos/src/cedar-logic/logic'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/shaos/src/cedar-logic/logic'
make -C GUI
make[1]: Entering directory `/home/shaos/src/cedar-logic/GUI'
g++ -I/usr/local/lib/wx/include/gtk-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -I/usr/include/boost -I../tinyxml2 -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng14   -Wall -Wno-deprecated -DUNIX -ggdb3 -c -o CircuitParse.o CircuitParse.cpp
In file included from /usr/local/include/wx/platform.h:88:0,
                 from /usr/local/include/wx/defs.h:23,
                 from /usr/local/include/wx/glcanvas.h:4,
                 from guiGate.h:33,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/chkconf.h:47:9: error: #error "wxUSE_DYNLIB_CLASS must be defined."
/usr/local/include/wx/chkconf.h:55:9: error: #error "wxUSE_FILESYSTEM must be defined."
/usr/local/include/wx/chkconf.h:68:9: error: #error "wxUSE_DYNAMIC_LOADER must be defined."
/usr/local/include/wx/chkconf.h:76:9: error: #error "wxUSE_LOG must be defined."
/usr/local/include/wx/chkconf.h:84:9: error: #error "wxUSE_LONGLONG must be defined."
/usr/local/include/wx/chkconf.h:92:9: error: #error "wxUSE_MIMETYPE must be defined."
/usr/local/include/wx/chkconf.h:100:9: error: #error "wxUSE_PROLOGIO must be defined."
/usr/local/include/wx/chkconf.h:108:9: error: #error "wxUSE_PROTOCOL must be defined."
/usr/local/include/wx/chkconf.h:150:9: error: #error "wxUSE_REGEX must be defined."
/usr/local/include/wx/chkconf.h:158:9: error: #error "wxUSE_SOCKETS must be defined."
/usr/local/include/wx/chkconf.h:166:9: error: #error "wxUSE_STREAMS must be defined."
/usr/local/include/wx/chkconf.h:174:9: error: #error "wxUSE_STOPWATCH must be defined."
/usr/local/include/wx/chkconf.h:182:9: error: #error "wxUSE_TEXTBUFFER must be defined."
/usr/local/include/wx/chkconf.h:190:9: error: #error "wxUSE_TEXTFILE must be defined."
/usr/local/include/wx/chkconf.h:198:9: error: #error "wxUSE_UNICODE must be defined."
/usr/local/include/wx/chkconf.h:206:9: error: #error "wxUSE_URL must be defined."
/usr/local/include/wx/chkconf.h:224:9: error: #error "wxUSE_ACCEL must be defined."
/usr/local/include/wx/chkconf.h:232:9: error: #error "wxUSE_BMPBUTTON must be defined."
/usr/local/include/wx/chkconf.h:240:9: error: #error "wxUSE_BUTTON must be defined."
/usr/local/include/wx/chkconf.h:248:9: error: #error "wxUSE_CALENDARCTRL must be defined."
/usr/local/include/wx/chkconf.h:256:9: error: #error "wxUSE_CARET must be defined."
/usr/local/include/wx/chkconf.h:264:9: error: #error "wxUSE_CHECKBOX must be defined."
/usr/local/include/wx/chkconf.h:272:9: error: #error "wxUSE_CHECKLISTBOX must be defined."
/usr/local/include/wx/chkconf.h:280:9: error: #error "wxUSE_CHOICE must be defined."
/usr/local/include/wx/chkconf.h:288:9: error: #error "wxUSE_CHOICEDLG must be defined."
/usr/local/include/wx/chkconf.h:296:9: error: #error "wxUSE_CLIPBOARD must be defined."
/usr/local/include/wx/chkconf.h:304:9: error: #error "wxUSE_COLOURDLG must be defined."
/usr/local/include/wx/chkconf.h:312:9: error: #error "wxUSE_COMBOBOX must be defined."
/usr/local/include/wx/chkconf.h:320:9: error: #error "wxUSE_DATAOBJ must be defined."
/usr/local/include/wx/chkconf.h:328:9: error: #error "wxUSE_DOC_VIEW_ARCHITECTURE must be defined."
/usr/local/include/wx/chkconf.h:336:9: error: #error "wxUSE_FILEDLG must be defined."
/usr/local/include/wx/chkconf.h:344:9: error: #error "wxUSE_FONTDLG must be defined."
/usr/local/include/wx/chkconf.h:352:9: error: #error "wxUSE_FONTMAP must be defined."
/usr/local/include/wx/chkconf.h:360:9: error: #error "wxUSE_GAUGE must be defined."
/usr/local/include/wx/chkconf.h:368:9: error: #error "wxUSE_GRID must be defined."
/usr/local/include/wx/chkconf.h:376:9: error: #error "wxUSE_HELP must be defined."
/usr/local/include/wx/chkconf.h:384:9: error: #error "wxUSE_HTML must be defined."
/usr/local/include/wx/chkconf.h:392:9: error: #error "wxUSE_ICO_CUR must be defined."
/usr/local/include/wx/chkconf.h:400:9: error: #error "wxUSE_IFF must be defined."
/usr/local/include/wx/chkconf.h:408:9: error: #error "wxUSE_IMAGLIST must be defined."
/usr/local/include/wx/chkconf.h:416:9: error: #error "wxUSE_JOYSTICK must be defined."
/usr/local/include/wx/chkconf.h:424:9: error: #error "wxUSE_LISTBOX must be defined."
/usr/local/include/wx/chkconf.h:432:9: error: #error "wxUSE_LISTCTRL must be defined."
/usr/local/include/wx/chkconf.h:440:9: error: #error "wxUSE_LOGGUI must be defined."
/usr/local/include/wx/chkconf.h:448:9: error: #error "wxUSE_LOGWINDOW must be defined."
/usr/local/include/wx/chkconf.h:456:9: error: #error "wxUSE_LOG_DIALOG must be defined."
/usr/local/include/wx/chkconf.h:464:9: error: #error "wxUSE_MDI_ARCHITECTURE must be defined."
/usr/local/include/wx/chkconf.h:472:9: error: #error "wxUSE_MENUS must be defined."
/usr/local/include/wx/chkconf.h:480:9: error: #error "wxUSE_MSGDLG must be defined."
/usr/local/include/wx/chkconf.h:488:9: error: #error "wxUSE_NEW_GRID must be defined."
/usr/local/include/wx/chkconf.h:496:9: error: #error "wxUSE_NOTEBOOK must be defined."
/usr/local/include/wx/chkconf.h:504:9: error: #error "wxUSE_PALETTE must be defined."
/usr/local/include/wx/chkconf.h:512:9: error: #error "wxUSE_POPUPWIN must be defined."
/usr/local/include/wx/chkconf.h:520:9: error: #error "wxUSE_PRINTING_ARCHITECTURE must be defined."
/usr/local/include/wx/chkconf.h:528:9: error: #error "wxUSE_RADIOBOX must be defined."
/usr/local/include/wx/chkconf.h:536:9: error: #error "wxUSE_RADIOBTN must be defined."
/usr/local/include/wx/chkconf.h:544:9: error: #error "wxUSE_SASH must be defined."
/usr/local/include/wx/chkconf.h:552:9: error: #error "wxUSE_SCROLLBAR must be defined."
/usr/local/include/wx/chkconf.h:560:9: error: #error "wxUSE_SLIDER must be defined."
/usr/local/include/wx/chkconf.h:568:9: error: #error "wxUSE_SPINBTN must be defined."
/usr/local/include/wx/chkconf.h:576:9: error: #error "wxUSE_SPINCTRL must be defined."
/usr/local/include/wx/chkconf.h:584:9: error: #error "wxUSE_SPLASH must be defined."
/usr/local/include/wx/chkconf.h:592:9: error: #error "wxUSE_SPLITTER must be defined."
/usr/local/include/wx/chkconf.h:600:9: error: #error "wxUSE_STATBMP must be defined."
/usr/local/include/wx/chkconf.h:608:9: error: #error "wxUSE_STATBOX must be defined."
/usr/local/include/wx/chkconf.h:616:9: error: #error "wxUSE_STATLINE must be defined."
/usr/local/include/wx/chkconf.h:624:9: error: #error "wxUSE_STATTEXT must be defined."
/usr/local/include/wx/chkconf.h:632:9: error: #error "wxUSE_STATUSBAR must be defined."
/usr/local/include/wx/chkconf.h:640:9: error: #error "wxUSE_TAB_DIALOG must be defined."
/usr/local/include/wx/chkconf.h:648:9: error: #error "wxUSE_TEXTCTRL must be defined."
/usr/local/include/wx/chkconf.h:656:9: error: #error "wxUSE_TIPWINDOW must be defined."
/usr/local/include/wx/chkconf.h:664:9: error: #error "wxUSE_TOOLBAR must be defined."
/usr/local/include/wx/chkconf.h:672:9: error: #error "wxUSE_TOOLTIPS must be defined."
/usr/local/include/wx/chkconf.h:680:9: error: #error "wxUSE_TREECTRL must be defined."
/usr/local/include/wx/chkconf.h:688:9: error: #error "wxUSE_WX_RESOURCES must be defined."
/usr/local/include/wx/chkconf.h:696:9: error: #error "wxUSE_WXHTML_HELP must be defined."
/usr/local/include/wx/chkconf.h:1138:9: error: #error "wxMessageBox is always needed"
/usr/local/include/wx/chkconf.h:1184:9: error: #error "wxUSE_DYNAMIC_CLASSES must be defined as 1"
In file included from /usr/local/include/wx/memory.h:20:0,
                 from /usr/local/include/wx/object.h:25,
                 from /usr/local/include/wx/list.h:37,
                 from /usr/local/include/wx/docview.h:20,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/string.h:442:12: error: 'wxChar wxString::operator[](unsigned int) const' cannot be overloaded
/usr/local/include/wx/string.h:429:13: error: with 'wxChar wxString::operator[](size_t) const'
/usr/local/include/wx/string.h:446:13: error: 'wxChar& wxString::operator[](unsigned int)' cannot be overloaded
/usr/local/include/wx/string.h:437:13: error: with 'wxChar& wxString::operator[](size_t)'
In file included from /usr/local/include/wx/list.h:37:0,
                 from /usr/local/include/wx/docview.h:20,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/object.h:438:19: error: 'wxClassInfo' has not been declared
/usr/local/include/wx/object.h:479:5: error: 'wxObjectRefData' does not name a type
/usr/local/include/wx/object.h:480:21: error: 'wxObjectRefData' has not been declared
/usr/local/include/wx/object.h:498:13: error: 'wxObjectRefData' does not name a type
/usr/local/include/wx/object.h:501:13: error: 'wxObjectRefData' does not name a type
/usr/local/include/wx/object.h:503:5: error: 'wxObjectRefData' does not name a type
/usr/local/include/wx/object.h: In constructor 'wxObject::wxObject()':
/usr/local/include/wx/object.h:420:18: error: 'm_refData' was not declared in this scope
/usr/local/include/wx/object.h: In member function 'void wxObject::SetRefData(int*)':
/usr/local/include/wx/object.h:480:46: error: 'm_refData' was not declared in this scope
/usr/local/include/wx/object.h: At global scope:
/usr/local/include/wx/object.h:525:52: error: 'wxClassInfo' has not been declared
/usr/local/include/wx/object.h: In function 'wxObject* wxCheckDynamicCast(wxObject*, int*)':
/usr/local/include/wx/object.h:527:24: error: 'class wxObject' has no member named 'GetClassInfo'
In file included from /usr/local/include/wx/gdiobj.h:9:0,
                 from /usr/local/include/wx/gtk/colour.h:21,
                 from /usr/local/include/wx/colour.h:9,
                 from /usr/local/include/wx/gdicmn.h:28,
                 from /usr/local/include/wx/event.h:24,
                 from /usr/local/include/wx/window.h:23,
                 from /usr/local/include/wx/cmndata.h:19,
                 from /usr/local/include/wx/docview.h:21,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/gtk/gdiobj.h: In member function 'bool wxGDIObject::IsNull() const':
/usr/local/include/wx/gtk/gdiobj.h:29:35: error: 'm_refData' was not declared in this scope
In file included from /usr/local/include/wx/colour.h:9:0,
                 from /usr/local/include/wx/gdicmn.h:28,
                 from /usr/local/include/wx/event.h:24,
                 from /usr/local/include/wx/window.h:23,
                 from /usr/local/include/wx/cmndata.h:19,
                 from /usr/local/include/wx/docview.h:21,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/gtk/colour.h: In member function 'bool wxColour::Ok() const':
/usr/local/include/wx/gtk/colour.h:63:30: error: 'm_refData' was not declared in this scope
In file included from /usr/local/include/wx/gdicmn.h:29:0,
                 from /usr/local/include/wx/event.h:24,
                 from /usr/local/include/wx/window.h:23,
                 from /usr/local/include/wx/cmndata.h:19,
                 from /usr/local/include/wx/docview.h:21,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/font.h: In member function 'bool wxFontBase::Ok() const':
/usr/local/include/wx/font.h:104:30: error: 'm_refData' was not declared in this scope
/usr/local/include/wx/font.h: In member function 'wxFontRefData* wxFontBase::GetFontData() const':
/usr/local/include/wx/font.h:156:35: error: 'm_refData' was not declared in this scope
In file included from /usr/local/include/wx/gtk/cursor.h:23:0,
                 from /usr/local/include/wx/cursor.h:9,
                 from /usr/local/include/wx/event.h:25,
                 from /usr/local/include/wx/window.h:23,
                 from /usr/local/include/wx/cmndata.h:19,
                 from /usr/local/include/wx/docview.h:21,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/image.h: In member function 'bool wxImage::operator==(const wxImage&) const':
/usr/local/include/wx/image.h:262:18: error: 'm_refData' was not declared in this scope
/usr/local/include/wx/image.h:262:37: error: 'const class wxImage' has no member named 'm_refData'
/usr/local/include/wx/image.h: In member function 'bool wxImage::operator!=(const wxImage&) const':
/usr/local/include/wx/image.h:264:18: error: 'm_refData' was not declared in this scope
/usr/local/include/wx/image.h:264:37: error: 'const class wxImage' has no member named 'm_refData'
In file included from /usr/local/include/wx/region.h:9:0,
                 from /usr/local/include/wx/window.h:30,
                 from /usr/local/include/wx/cmndata.h:19,
                 from /usr/local/include/wx/docview.h:21,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/gtk/region.h: In member function 'bool wxRegion::Ok() const':
/usr/local/include/wx/gtk/region.h:89:30: error: 'm_refData' was not declared in this scope
In file included from /usr/local/include/wx/brush.h:9:0,
                 from /usr/local/include/wx/dc.h:28,
                 from /usr/local/include/wx/gtk/dcclient.h:17,
                 from /usr/local/include/wx/dcclient.h:9,
                 from /usr/local/include/wx/window.h:36,
                 from /usr/local/include/wx/cmndata.h:19,
                 from /usr/local/include/wx/docview.h:21,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/gtk/brush.h: In member function 'bool wxBrush::Ok() const':
/usr/local/include/wx/gtk/brush.h:48:30: error: 'm_refData' was not declared in this scope
In file included from /usr/local/include/wx/pen.h:9:0,
                 from /usr/local/include/wx/dc.h:29,
                 from /usr/local/include/wx/gtk/dcclient.h:17,
                 from /usr/local/include/wx/dcclient.h:9,
                 from /usr/local/include/wx/window.h:36,
                 from /usr/local/include/wx/cmndata.h:19,
                 from /usr/local/include/wx/docview.h:21,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/gtk/pen.h: In member function 'bool wxPen::Ok() const':
/usr/local/include/wx/gtk/pen.h:53:30: error: 'm_refData' was not declared in this scope
In file included from /usr/local/include/wx/gtk/accel.h:4:0,
                 from /usr/local/include/wx/accel.h:122,
                 from /usr/local/include/wx/window.h:41,
                 from /usr/local/include/wx/cmndata.h:19,
                 from /usr/local/include/wx/docview.h:21,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/generic/accel.h: In member function 'wxAcceleratorTable& wxAcceleratorTable::operator=(const wxAcceleratorTable&)':
/usr/local/include/wx/generic/accel.h:34:14: error: 'm_refData' was not declared in this scope
/usr/local/include/wx/generic/accel.h:34:33: error: 'const class wxAcceleratorTable' has no member named 'm_refData'
/usr/local/include/wx/generic/accel.h: In member function 'bool wxAcceleratorTable::operator==(const wxAcceleratorTable&) const':
/usr/local/include/wx/generic/accel.h:37:18: error: 'm_refData' was not declared in this scope
/usr/local/include/wx/generic/accel.h:37:37: error: 'const class wxAcceleratorTable' has no member named 'm_refData'
In file included from /usr/local/include/wx/window.h:1104:0,
                 from /usr/local/include/wx/cmndata.h:19,
                 from /usr/local/include/wx/docview.h:21,
                 from guiGate.h:39,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/gtk/window.h: At global scope:
/usr/local/include/wx/gtk/window.h:214:5: error: 'GdkIC' does not name a type
/usr/local/include/wx/gtk/window.h:215:5: error: 'GdkICAttr' does not name a type
In file included from guiGate.h:39:0,
                 from CircuitParse.h:16,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/docview.h:245:19: error: 'wxClassInfo' has not been declared
/usr/local/include/wx/docview.h:246:19: error: 'wxClassInfo' has not been declared
/usr/local/include/wx/docview.h:288:5: error: 'wxClassInfo' does not name a type
/usr/local/include/wx/docview.h:289:5: error: 'wxClassInfo' does not name a type
/usr/local/include/wx/docview.h:245:48: error: 'wxClassInfo' was not declared in this scope
/usr/local/include/wx/docview.h:245:61: error: expected primary-expression before ')' token
/usr/local/include/wx/docview.h:246:49: error: 'wxClassInfo' was not declared in this scope
/usr/local/include/wx/docview.h:246:62: error: expected primary-expression before ')' token
In file included from /usr/local/include/wx/icon.h:15:0,
                 from /usr/local/include/wx/app.h:31,
                 from /usr/local/include/wx/wx.h:24,
                 from MainApp.h:15,
                 from GUICircuit.h:20,
                 from CircuitParse.h:17,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/gtk/icon.h: In member function 'bool wxIcon::operator==(const wxIcon&) const':
/usr/local/include/wx/gtk/icon.h:49:56: error: 'm_refData' was not declared in this scope
/usr/local/include/wx/gtk/icon.h:49:74: error: 'const class wxIcon' has no member named 'm_refData'
In file included from /usr/local/include/wx/generic/textdlgg.h:24:0,
                 from /usr/local/include/wx/textdlg.h:4,
                 from /usr/local/include/wx/wx.h:78,
                 from MainApp.h:15,
                 from GUICircuit.h:20,
                 from CircuitParse.h:17,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/valtext.h: In member function 'bool wxTextValidator::CheckValidator() const':
/usr/local/include/wx/valtext.h:91:9: error: expected primary-expression before ')' token
/usr/local/include/wx/valtext.h:91:9: error: 'CLASSINFO' was not declared in this scope
In file included from /usr/local/include/wx/socket.h:34:0,
                 from /usr/local/include/wx/protocol/protocol.h:28,
                 from /usr/local/include/wx/url.h:24,
                 from /usr/local/include/wx/filesys.h:30,
                 from /usr/local/include/wx/html/helpdata.h:25,
                 from /usr/local/include/wx/html/helpfrm.h:23,
                 from /usr/local/include/wx/html/helpctrl.h:23,
                 from /usr/local/include/wx/help.h:16,
                 from MainApp.h:19,
                 from GUICircuit.h:20,
                 from CircuitParse.h:17,
                 from CircuitParse.cpp:11:
/usr/local/include/wx/sckaddr.h: At global scope:
/usr/local/include/wx/sckaddr.h:30:34: error: expected identifier before numeric constant
/usr/local/include/wx/sckaddr.h:30:34: error: expected '}' before numeric constant
/usr/local/include/wx/sckaddr.h:30:34: error: expected unqualified-id before numeric constant
/usr/local/include/wx/sckaddr.h:32:17: error: expected unqualified-id before ')' token
/usr/local/include/wx/sckaddr.h:33:17: error: expected unqualified-id before 'const'
/usr/local/include/wx/sckaddr.h:33:17: error: expected ')' before 'const'
/usr/local/include/wx/sckaddr.h:34:26: error: declaration of '~wxSockAddress' as non-member
/usr/local/include/wx/sckaddr.h:36:54: error: 'wxSockAddress& operator=(const wxSockAddress&)' must be a nonstatic member function
/usr/local/include/wx/sckaddr.h:38:22: error: 'virtual' outside class declaration
/usr/local/include/wx/sckaddr.h:39:20: error: 'virtual' outside class declaration
/usr/local/include/wx/sckaddr.h:39:24: error: function 'int Type()' is initialized like a variable
/usr/local/include/wx/sckaddr.h:41:26: error: non-member function 'GAddress* GetAddress()' cannot have cv-qualifier
/usr/local/include/wx/sckaddr.h: In function 'GAddress* GetAddress()':
/usr/local/include/wx/sckaddr.h:41:41: error: 'm_address' was not declared in this scope
/usr/local/include/wx/sckaddr.h: At global scope:
/usr/local/include/wx/sckaddr.h:46:34: error: 'virtual' outside class declaration
/usr/local/include/wx/sckaddr.h:46:34: error: non-member function 'wxSockAddress* Clone()' cannot have cv-qualifier
/usr/local/include/wx/sckaddr.h:46:42: error: function 'wxSockAddress* Clone()' is initialized like a variable
/usr/local/include/wx/sckaddr.h:48:1: error: expected unqualified-id before 'protected'
/usr/local/include/wx/sckaddr.h:51:1: error: expected unqualified-id before 'private'
/usr/local/include/wx/sckaddr.h:53:1: error: expected declaration before '}' token
make[1]: *** [CircuitParse.o] Error 1
make[1]: Leaving directory `/home/shaos/src/cedar-logic/GUI'
make: *** [all] Error 2
Похоже у меня битая сборка wxWidgets?...

P.S. это из-за макроса UNIX - оно точно надо?

P.P.S. заменил макрос UNIX на MYUNIX, теперь запинается в другом месте:

Code: Select all

g++ -I/usr/local/lib/wx/include/gtk-2.4 -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -I/usr/include/boost -I../tinyxml2 -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng14   -Wall -Wno-deprecated -DMYUNIX -ggdb3 -c -o CircuitParse.o CircuitParse.cpp
In file included from GUICanvas.h:26:0,
                 from GUICircuit.h:22,
                 from CircuitParse.h:17,
                 from CircuitParse.cpp:11:
klsGLCanvas.h:63:1: error: expected class-name before '{' token
klsGLCanvas.h: In member function 'void klsGLCanvas::setMouseCoords()':
klsGLCanvas.h:174:23: error: 'GetClientSize' was not declared in this scope
In file included from OscopeFrame.h:23:0,
                 from GUICircuit.h:23,
                 from CircuitParse.h:17,
                 from CircuitParse.cpp:11:
OscopeCanvas.h: At global scope:
OscopeCanvas.h:35:1: error: expected class-name before '{' token
make: *** [CircuitParse.o] Error 1
Я тут за главного - если что шлите мыло на me собака shaos точка net
bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Post by bar »

Мне кажется, что дело не в версии wxWidgets, а в том, с какими опциями был вызван configure при её сборке. По-крайней мере на эту мысль меня наталкивают фразы вида "#error wxUSE_* must be defined". Правда там их столько, что (если я их правильно понимаю) единственный вывод, который можно сделать: wx вообще собрана без поддержки GUI. =)

А вот фраза о том, что operator[] cant be overloaded, меня честно говоря озадачивает... Думаю дело в том, что платформа 32-bit, и size_t -- этот тот же unsigned int только под другим именем. И получается, что wx не перегружает функцию, а повторно определяет. Хотя я не уверен.
Но я тут высмотрел в info gcc такой флаг для g++, как -fpermissive. Попробуй его добавить к CXXFLAGS. Пробовать как этот флаг работает на практике я не пробовал, но в мануале написано, что g++ начинает компилировать код, который настоящий ANSI компилятор не должен компилировать.
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

Конечно можно, но не сразу. Надо подумать если серьезно...

Я скажу откуда взялось про фичи - не секрет, что я большой поклонник пакетов
Electronics Workbench, а также Proteus.

И для меня они во многом - рабочие инструменты.

Естественно, что когда пробуешь новый симулятор, даже непроизвольно
начинаешь сравнивать - нет вот такой привычной фичи как в EWB, нет вот такой
мульки как в Proteus-е...

Так что у кого нет конкретных привычек, это всё, возможно, не так и заметно...

Но если интересно, то могу и конкретно перечислить.
iLavr
bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Post by bar »

Это не код а ппц какой-то. Вчера, наверное, в течение часа, пытался выяснить, почему тут рисует, а там не рисует, и выясняется, что в этом долбаном коде местами не работают, казалось бы, совершенно безобидные вещи. Вот есть такое:

Code: Select all

glMatrixMode(GL_MODELVIEW);

	// Set up the forward matrix:
	glLoadIdentity();
	glTranslatef(x, y, 0);
	glGetDoublev( GL_MODELVIEW_MATRIX, mModel );

	for(int row = 0; row < 4; row ++) {
		for(int col = 0; col < 4; col ++) {
			printf("%6.3lf", mModel[row + col * 4]);
		}
		printf("\n");
	}
На входе, x=1 и y=1, но на выходе:

Code: Select all

 0,000 0,000 0,000 0,000
 0,000 0,000 0,000 0,000
 0,000 0,000 0,000 0,000
 0,000 0,000 0,000 0,000
Я уже даже начал сомневаться в том, что у меня OpenGL в системе рабочий, и задумался о том, чтобы поискать в шкафу видяшку nvidia... Дык нет же, тестовая _самостоятельная_ программка пишет всё как надо:

Code: Select all

#include <GL/glut.h>
#include <stdio.h>

int main(int argc, char *argv[])
{
	float x = 1, y = 1;
	GLdouble mModel[16];
	glutInit(&argc, argv);
	glutCreateWindow("");
	
	glMatrixMode(GL_MODELVIEW);

	// Set up the forward matrix:
	glLoadIdentity();
	glTranslatef(x, y, 0);
	glGetDoublev( GL_MODELVIEW_MATRIX, mModel );
	
	for(int row = 0; row < 4; row ++) {
		for(int col = 0; col < 4; col ++) {
			printf("%6.3lf", mModel[row + col * 4]);
		}
		printf("\n");
	}
	return 0;
}

Code: Select all

$ ./test-gl 
 1.000 0.000 0.000 1.000
 0.000 1.000 0.000 1.000
 0.000 0.000 1.000 0.000
 0.000 0.000 0.000 1.000
Единственное что радует -- вероятно это та самая причина, по которой, практически нигде нет картинок элементов. А поскольку пути решения проблемы достаточно очевидны, можно надеятся, что сегодня я-таки получу полноценно работающий гуй, и можно будет, наконец, посмотреть работает ли симуляция логики.
bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Post by bar »

Только что успел накидать аж целых три элемента в рабочее поле, прежде чем программа повисла. Правда судя по тому, что висит она в ожидании мьютекса, надо делать выводы, что новости плохие и пахнут дедлоками, лучше бы она, как обычно, упала с SIGSEGV.
User avatar
Shaos
Admin
Posts: 24008
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

фигово...
Я тут за главного - если что шлите мыло на me собака shaos точка net
bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Post by bar »

Дедлок я нашёл, и объяснил программе как его можно избежать, самым грязным способом, какой смог придумать. Теперь я могу накликать сколь угодно сложную схему. Но у меня теперь, пропал тулбар, и я не могу запустить симуляцию. =)
Не, ну вот какие интересно соображения могли сподвигнуть программиста создавать тулбар в функции OnIdle? Но это ладно, меня другое начинает беспокоить... У меня мануала нету к программе. И более того, я не сталкивался раньше с подобными программами... И если честно, я не совсем понимаю как это должно работать. То есть с элементами всё ясно. Но ведь должны быть какие-то входные сигналы, так? А где их взять?
Это я к тому, что было бы просто замечательно, если б кто-нибудь нарисовал бы в рабочем вендовом CEDAR схемку и запостил бы тут скриншот. Ну или не скриншот, а save-файл: я ещё рассматривал вопросы File->Open/Save/Save As, как раз будет повод с этим разобраться.

ps. Неожиданно, но факт: в программе, по-ходу дела, жёстко разделён GUI с логикой, и не только в том смысле, что сорцы по разным директориям разбросаны, но если я ничего не упустил из виду, то всё общение между этими двумя частями программы ведётся исключительно через двустороннюю очередь сообщений. Так сказать труЪ Unix Way, прям как проповедовал Master Foo в приложениях к TAOUP. Правда, Master Foo, если бы присматривал за созданием этой программы, посоветовал бы создателям не возиться с созданием велосипеда-очереди из двух инстансов std::queue<std::string>, а воспользоваться такими вещами как pipe, fifo или, на худой конец, socket, но... Но как бы там ни было, я просто не ожидал подобных изысков.
bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Post by bar »

bar wrote:Но это ладно, меня другое начинает беспокоить... У меня мануала нету к программе. И более того, я не сталкивался раньше с подобными программами... И если честно, я не совсем понимаю как это должно работать. То есть с элементами всё ясно. Но ведь должны быть какие-то входные сигналы, так? А где их взять?
Сорри. Тупил. Нашёл входы и выходы в библиотечки Input & Ouput. Оно заработало =)
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

bar wrote:Теперь я могу накликать сколь угодно сложную схему. Но у меня теперь, пропал тулбар, и я не могу запустить симуляцию. =)
Дома у меня нет этой программы, но мне помнится по впечатлениям на работе, -
у неё нет опции "запуск симуляции" - что прилепляешь в схему - сразу
симулируется...

Пробники в RS-триггере загорались сразу по подключению их... как мне помнится.
Может, правда, я "выключить" забыл, но по старту программы, как мне представлется,
симуляция не должна быть включенной. :wink:

Это, кстати, одна из "фич", которая мне не понравилась в сравнении с EWB... :(

Ну а раз уж Shaos спрашивал, симулятор не симулирует мультивибратор
на логических элементах.
Впрочем, это общая у них болячка - кварцы и RC-цепи - это аналоговые
комоненты, но могли бы "подхалтурить" как-то, хотя бы с кварцем... :-?
iLavr
bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Post by bar »

Lavr wrote:
bar wrote:Теперь я могу накликать сколь угодно сложную схему. Но у меня теперь, пропал тулбар, и я не могу запустить симуляцию. =)
Дома у меня нет этой программы, но мне помнится по впечатлениям на работе, -
у неё нет опции "запуск симуляции" - что прилепляешь в схему - сразу
симулируется...

Пробники в RS-триггере загорались сразу по подключению их... как мне помнится.
Может, правда, я "выключить" забыл, но по старту программы, как мне представлется,
симуляция не должна быть включенной. :wink:
С RS-триггером она справляется. Правда, поскольку я на ночь забыл её выключить или хотя бы тормознуть симуляцию, ей стало плохо, вероятно, там внутрях у неё счётчик тиков симуляции переполнился. Надо будет уточнить: я видел в сорцах то сообщение об ошибке которое вылезает, но не помню к чему именно оно.
Насчёт же того, что симуляция изначально выключена должна быть, я соглашусь. Меня тоже несколько сбивало это с толку. Там есть, конечно, кнопка pause, но, быть может, надо сделать чтобы была бы одна кнопка ">", но toggle-кнопка, то есть чтоб при нажатии она бы меняла состояние с нажатого, на отжатое, или обратно. Ну и изначально инициализировать её отжатым состоянием.

Но есть и другие новости. Я наконец-таки заметил, что у меня отсутствует библиотека "10 - Chips". Заглянул в вендовую версию, там в xml-файлике с описанием библиотек есть такая "10 - Chips", и в ней объявлен Z80

Code: Select all

<library> <name>10 - Chips</name>
#	(TO DO)
	<gate>
	<name>Z-80</name>
	<caption>Z-80</caption>
	<logic_type>Z80</logic_type>
	<gui_type>Z80</gui_type>
...
В опенсорс версии ничего такого нету. И grep Z80 по файлам ничего не дал. То есть выходит, что эмуляция Z80 -- это закрытая разработка авторов.
User avatar
Lavr
Supreme God
Posts: 16680
Joined: 21 Oct 2009 08:08
Location: Россия

Post by Lavr »

bar wrote:Я наконец-таки заметил, что у меня отсутствует библиотека "10 - Chips". Заглянул в вендовую версию, там в xml-файлике с описанием библиотек есть такая "10 - Chips", и в ней объявлен Z80...
В опенсорс версии ничего такого нету. И grep Z80 по файлам ничего не дал. То есть выходит, что эмуляция Z80 -- это закрытая разработка авторов.
Да не может такого быть! :o Я себе из всех исходников скачал только эмуляцию Z80 !!!
Чтобы посмотреть, как они делают симуляцию, но пока ещё лишь просмотрел бегло...

В ходе написания всяких эмуляторов, я всё-таки представляю себе принцип
эмуляции Z80, - вот и хотел сравнить...

Вот это разве не оно?
http://cedarlogic.svn.sourceforge.net/v ... trunk/Z80/
iLavr
bar
Senior
Posts: 185
Joined: 07 Aug 2006 10:18

Post by bar »

Оно. Видать я не оттуда скачивал. Я выкачал какой-то zip файл с сорцами, а в vcs даже не подумал заглянуть. А там, как вижу, сорцы посвежее, даже что-то 2011 годом датировано.