Полная версия этой страницы:
Сборка из исходников
tema-electric
Sep 18 2013, 06:53
Цитата(alex9 @ Sep 17 2013, 22:52)

Тоже не помогло.
Опишите процесс компиляции/установки виджетов полностью от исходников до полного финиша.
Пробовали очищать саму папку компиляции KiCAD и собирать KiCAD заново?
make clean
make
sudo make install или варианты. Под Ubuntu делаю sudo checkinstall -D -pkgname kicad
Как вариант, взять другие виджеты, более старые. Возможно 2.9.2 подойдут. Под виндой я на них собирал.
На Ubuntu 10.04 LTS вообще стоят 2.8.10.1 ....
PS: Я понимаю иметь такие проблемы под виндами ... Но только не под *unix.
Цитата(tema-electric @ Sep 18 2013, 10:53)

Опишите процесс компиляции/установки виджетов полностью от исходников до полного финиша.
также еще было бы интересно посмотреть результат команды
Код
dpkg -l | grep wx
Цитата(alex9 @ Sep 15 2013, 15:40)

Пытаюсь собрать под Debian 7 (386)- получаю "undefined reference to wxAui".
Что я делаю не так?
Может надо поправить cmakelists.txt (вставить aui, если не APPLE)
# On Apple only wxwidgets 2.9 or higher doesn't need to find aui part of base
if(APPLE)
find_package(wxWidgets COMPONENTS gl adv html core net base xml QUIET)
else(APPLE)
find_package(wxWidgets COMPONENTS gl adv html core net base xml QUIET)
endif(APPLE)
AUI убираю для Win - иначе ошибка.
Собрал после очередного захода. Всем спасибо!
В осадке.
wxWidgets конфигурировал с параметрами "--enable-unicode --disable-debuge --disable-shared --enable-monolithic --with-opengl --with-odbc --with-aui"
+ несколько пересборок и переустановок.
tema-electric
Oct 9 2013, 10:30
Сегодня попытался собрать свежий KiCAD (2013-10-01 BZR 4219 GOST-COMMITTERS), и cmake заругался на то, что нет папки internat.
Потерялась? Или нужно что-то докачивать?
Цитата(tema-electric @ Oct 9 2013, 14:30)

Сегодня попытался собрать свежий KiCAD (2013-10-01 BZR 4219 GOST-COMMITTERS), и cmake заругался на то, что нет папки internat.
Потерялась? Или нужно что-то докачивать?
Я закомментировал строку в cmake, на которой остановилось (add ...) - и все построилось...
Цитата(viknn @ Oct 9 2013, 20:32)

Я закомментировал строку в cmake, на которой остановилось (add ...) - и все построилось...
Тогда русского интерфейса не будет. Лучше папочку из другого исходника взять.
tema-electric
Oct 17 2013, 01:54
Цитата(alex9 @ Oct 13 2013, 00:20)

Тогда русского интерфейса не будет. Лучше папочку из другого исходника взять.
От чего же он у меня есть?

Качаем kicad-doc, собираем и ставим
Цитата
Я так понимаю, эти грабли есть только в ГОСТ-овской сборке.
Попутно вопрос. Кто нибудь мержил ветку kicad-gost с веткой kicad. Как это правильно делать?
Спрашиваю, потому как с 1 октября уже 17 дней прошло, а ветка мертвая стоит.
Цитата(tema-electric @ Oct 17 2013, 05:54)

Попутно вопрос. Кто нибудь мержил ветку kicad-gost с веткой kicad. Как это правильно делать?
Это делается с некоторыми плясками и бубном через bzr merge.
Цитата(tema-electric @ Oct 17 2013, 05:54)

Спрашиваю, потому как с 1 октября уже 17 дней прошло, а ветка мертвая стоит.
Ветка не мертвая. Просто в тестовой выкинули дефайны KICAD_GOST (якобы за ненадобностью -
миллиметры есть, нотация элементов есть, форматка есть через шаблоны листов).
А в гост-коммитерс в этот дефайн завернута работа с формированием перечня элементов по старому и через ОО.
Как это теперь объехать - большой вопрос. Тут подумать надо.
_Pasha
Oct 19 2013, 06:42
Смешная вещь. Попробовал собирать свежую - не получается, тянет за собой свежаки boost и затыкается на авторизации bzr. Что-то все сложнее и сложнее с этим справляться.
_Pasha
Oct 31 2013, 06:16
Действительно, как его победить?
Есть параметр для cmake, не помню его название - типа BUILD_GITHUB_PLUGIN_FROM_SCRATCH
отключил его, затем и вовсе прибил. Все равно лезет гад на bzr..
AHTOXA
Oct 31 2013, 08:48
Ну так представьтесь вы ему, раз он так настаивает:
Код
bzr launchpad-login ваш_логин_на_ланчпаде
_Pasha
Oct 31 2013, 10:28
Цитата(AHTOXA @ Oct 31 2013, 11:48)

Ну так представьтесь вы ему, раз он так настаивает:
Код
bzr launchpad-login ваш_логин_на_ланчпаде


Это неправильно. Совершенно очевидно, что направление на неуправляемые снапшоты - это чепуха. Потом повесят wxWidgets снапшоты, swig и будет ваще великолепно. Надо убивать такую тенденцию.
Цитата(AHTOXA @ Oct 31 2013, 11:48)

Ну так представьтесь вы ему, раз он так настаивает:
Код
bzr launchpad-login ваш_логин_на_ланчпаде


Это неправильно. Совершенно очевидно, что направление на неуправляемые снапшоты - это чепуха. Потом повесят wxWidgets снапшоты, swig и будет ваще великолепно. Надо убивать такую тенденцию.
Вот у меня есть boost и из репы и из salome. Зачем мне еще один, тем более, что cmake и так их находит ?
AHTOXA
Oct 31 2013, 11:13
А разве буст берётся из транка?
Я думал, что ему нужна какая-то конкретная версия, поэтому и качает из репозитория.
С другой стороны, вы же строите как раз-таки снапшот Кикада, почему бы не строить его из снапшотов других либ?
_Pasha
Oct 31 2013, 13:48
Цитата(AHTOXA @ Oct 31 2013, 15:13)

А разве буст берётся из транка?
Вот и странно, что этот параметр ыыыы_FROM_SCRATCH, уже ж не только выкл, но и прибит совсем, а все равно фигурирует в куче мест. И выкусывать его как-то муторно.
Цитата
С другой стороны, вы же строите как раз-таки снапшот Кикада, почему бы не строить его из снапшотов других либ?

_taras_
Nov 22 2013, 23:43
Убунта 12.04 32-битная
Попытался собрать крайнюю версию kicad-а по
инструкции Антохи и наткнулся на следующие непонятки:
1.
Код
CMake Error at CMakeLists.txt:466 (add_subdirectory):
add_subdirectory given source "internat" which is not an existing
directory.
Закоментировал 466 строку
Код
add_subdirectory(internat)
и процесс пошол дальше.
2.
Код
zr: ERROR: Unable to determine your name.
Please, set your name with the 'whoami' command.
E.g. bzr whoami "Your Name <name@example.com>"
make[2]: *** [/home/taras/kicad-build/kicad/.downloads-by-cmake/boost_1_54_0/src/boost-stamp/boost-bzr_commit_boost] Ошибка 3
make[1]: *** [CMakeFiles/boost.dir/all] Ошибка 2
make: *** [all] Ошибка 2
А вот с этой ошибкой что делать и как её исправить? При неудачной сборке какие папки и файлы нужно удалять?
AHTOXA
Nov 23 2013, 06:02
Цитата(_taras_ @ Nov 23 2013, 05:43)

А вот с этой ошибкой что делать и как её исправить? При неудачной сборке какие папки и файлы нужно удалять?
Сделайте как он просит, дайте команду
Код
bzr whoami "Your Name <name@example.com>"
Это нужно сделать только один раз, bzr вас запомнит и больше приставать не будет.
При неудачной сборке удаляйте папки build и debs, все продукты сборки складываются туда.
_taras_
Nov 23 2013, 12:28
Попробовал по новой собрать. Вываливается с ошибкой.
Код
CMake Warning:
Manually-specified variables were not used by the project:
KICAD_MINIZIP
KICAD_TESTING_VERSION
USE_PCBNEW_NANOMETRES
USE_PCBNEW_SEXPR_FILE_FORMAT
-- Build files have been written to: /home/taras/kicad-build/build/kicad
Scanning dependencies of target boost
[ 0%] committing pristine boost files to 'boost scratch repo'
[ 0%] Performing patch step for 'boost'
bzr: ERROR: неизвестная команда «patch»
make[2]: *** [/home/taras/kicad-build/kicad/.downloads-by-cmake/boost_1_54_0/src/boost-stamp/boost-patch] Ошибка 3
make[1]: *** [CMakeFiles/boost.dir/all] Ошибка 2
make: *** [all] Ошибка 2
Цитата(_taras_ @ Nov 23 2013, 16:28)

Попробовал по новой собрать. Вываливается с ошибкой.
bzr: ERROR: неизвестная команда «patch»
Нужно установить bzr-tools на сколько помню.
Сергей Борщ
Nov 23 2013, 12:36
Надо поставить bzr-utils (кажется так называется)
AHTOXA
Nov 23 2013, 13:18
bzrtools !
_taras_
Nov 23 2013, 13:41
Опять вылетело

Но уже на этапе
Код
Install the project...
file INSTALL cannot find
"/home/taras/kicad-build/kicad/template/fp-lib-table.for-eaqgle-6.4.0".
Call Stack (most recent call first):
cmake_install.cmake:90 (INCLUDE)
make: *** [install] Ошибка 1
AHTOXA
Nov 23 2013, 21:37
Цитата(_taras_ @ Nov 23 2013, 19:41)

Код
file INSTALL cannot find
"/home/taras/kicad-build/kicad/template/fp-lib-table.for-eaqgle-6.4.0".
Тут уж не подскажу. Похоже на опечатку в слове eagle - лишняя буква "q".
_taras_
Nov 23 2013, 22:41
Наверное в недрах кода ссылка на файл fp-lib-table.for-eagle-6.4.0 была опечатка. Переименовал на fp-lib-table.for-eaqgle-6.4.0 и продвинулся ещё немного

.
Но все равно наткнулся
Код
Installing: /home/taras/kicad-build/debs/kicad-bzr-3989-amd64/usr/share/kicad/template/stm32f100-discovery-shield/stm32f100-discovery-shield.dcm
dpkg-deb: ошибка: анализ файла «/home/taras/kicad-build/debs/kicad-bzr-3989-amd64/DEBIAN/control» около строки 2 пакета «kicad-bzr»:
ошибка в строке Version «bzr-3989»: номер версии не начинается с цифры
Сам файл состоит из
Код
Package: kicad-bzr
Version: bzr-3989
Section: misc
Priority: optional
Architecture: amd64
Depends: libc6 (>= 2.3.5-1)
Installed-Size: 23600
Maintainer: xxxx
Description: This is KiCAD.
Может я пытаюсь собрать 32-х битной машине версию для amd64? И почему относительно старая версия?
AHTOXA
Nov 24 2013, 05:34
Вы уже у цели

Цитата(_taras_ @ Nov 24 2013, 04:41)

Сам файл состоит из
Код
Package: kicad-bzr
Version: bzr-3989
Section: misc
Priority: optional
Architecture: amd64
Может я пытаюсь собрать 32-х битной машине версию для amd64? И почему относительно старая версия?
Да, архитектура не та. Она задаётся в начале скрипта build-kicad-deb.sh:
Код
# Specify system Architecture ("i386" or "amd64")
ARCHITECTURE="amd64"
Версия задаётся там же, рядом:
Код
# kicad revision
KICAD_REV="bzr-3989"
Замените на какую-нибудь цифру, раз ему не нравятся буквы. (Хотя у меня работало так)
А сам файл формируется ниже в скрипте:
Код
echo "Package: kicad-bzr
Version: $KICAD_REV
Section: misc
Priority: optional
Architecture: $ARCHITECTURE
Depends: libc6 (>= 2.3.5-1)
Installed-Size: 23600
Maintainer: xxxx
Description: This is KiCAD.
" > $INST_PATH/DEBIAN/control
Цитата(_taras_ @ Nov 23 2013, 17:41)

Код
Install the project...
file INSTALL cannot find
"/home/taras/kicad-build/kicad/template/fp-lib-table.for-eaqgle-6.4.0".
Call Stack (most recent call first):
cmake_install.cmake:90 (INCLUDE)
make: *** [install] Ошибка 1
Пардоньте, мой ляп.
Исправл, заодно смержил с 4496.
Получилась 4230. Можно забирать с lp.
_taras_
Nov 24 2013, 18:40
Я наверное наступаю на всевозможные граби

Осталась непонятка
[codeCMake Error at CMakeLists.txt:466 (add_subdirectory)[/code]
и нужно закомментировать
Код
dpkg-deb: сборка пакета «kicad-bzr» в файл «/home/taras/kicad-build/debs/kicad-4230-i386.deb».
[sudo] password for taras:
dpkg: не удалось обработать параметр /home/taras/kicad-build/debs/kicad.deb (--install):
нет доступа к архиву: Нет такого файла или каталога
При обработке следующих пакетов произошли ошибки:
/home/taras/kicad-build/debs/kicad.deb
Поробовал установить "в лоб"
Код
sudo dpkg -i kicad-4230-i386.deb
Распаковывается пакет kicad-bzr (из файла kicad-4230-i386.deb)...
dpkg: не удалось обработать параметр kicad-4230-i386.deb (--install):
попытка перезаписать «/usr/bin/gerbview», который уже имеется в пакете kicad 0.0.20110616-1
dpkg-deb: ошибка: подпроцесс вставка уничтожен по сигналу (Обрыв канала)
При обработке следующих пакетов произошли ошибки:
kicad-4230-i386.deb
Но мы не привыкли отступать

Я раскидал файлы по папкам вручную (естественно остались "лишние" файлы). Пока вроде работает (толком еще не тестировал). Единственно, что сразу бросается в глаза это не Гостовская рамка.
У меня deb не хочет собираться, пока не удалю установленную версию kicad.
Может та же история?
_Pasha
Nov 24 2013, 22:05
Цитата(_taras_ @ Nov 24 2013, 21:40)

Единственно, что сразу бросается в глаза это не Гостовская рамка.
4320 разве уже с kicad_wks ? Ничего не понял.
_taras_
Nov 24 2013, 22:18
_Pasha.
Я собирал по инструкции АНТОХИ. В ней сказано
Код
(если мы хотим использовать вариант от kicad-gost-committers, то это будет вот так:
bzr branch lp:~kicad-gost-committers/kicad/kicad
bzr branch lp:~kicad-gost-committers/kicad/doc
bzr branch lp:~kicad-gost-committers/kicad/library
Поэтому и удивился не увидев гостовской рамки.
Цитата(_Pasha @ Nov 25 2013, 02:05)

4320 разве уже с kicad_wks ? Ничего не понял.
4230 от kicad-gost-committers уже да.
Решил сегодня собрать свежак, заодно поправить
мой рецепт сборки под Ubuntu 12.04.
Вылезла пара проблем.
1. Появились новые зависимости: libglew-dev libbz2-dev doxygen;
2. Вылезла ошибка "add_subdirectory given source "internat" which is not an existing";
Тут я теряюсь в догадках, как сделать правильно. internat - это папка из другого пакета (doc). Я попробовал ответвить эту папку прямо в kicad,
но, похоже, bzr не позволяет делать бранч подпапки. Получается, что я должен сделать бранч
lp:~kicad-gost-committers/kicad/doc/ в ту же папку, что и
lp:~kicad-gost-committers/kicad/kicad/... Это, насколько я понимаю, невозможно. Кто как обходит эту проблему, и в чём её корни?
(Я пока решил проблему "в лоб": скопировал папку internat в папку kicad).
Короче, поправил инструкцию и скрипты, вроде всё работает. По крайней мере, у меня собралась rev 4237 от kicad-gost-committers:)
_Ross_
Dec 17 2013, 17:30
Дебиан - 7, amd64 . Ничего чего-то не собирается. А ведь написано wxWidgets >= 2.8.11, неужели обязательно собирать новый?
Код
pcbnew/dialogs/dialog_fp_lib_table_base.cpp:216: error: invalid static_cast from type ‘<unresolved overloaded function type>’ to type ‘void (wxEvtHandler::*)(wxCommandEvent&)’
make[2]: *** [pcbnew/CMakeFiles/pcbnew.dir/dialogs/dialog_fp_lib_table_base.cpp.o] Ошибка 1
И, посоветуйте пожалуйста, я столько упустил просто работая на сборке 2012 года. Что сейчас годно для работы из ГОСТ-сборок? Сейчас поставил просто из убунту-репозитария. Там такой весёлый перевод "редактировать в редакторе" и ещё ошибки. Поправил, но мне хотелось бы гост-сборку. И ешё, а т.н "изменения для себя" - входят в каждую последующую сборку?
В дальнейшем, как уже заявлял - могу собирать раз в месяц минимум что-то для Debian stable и oldstable. И ещё что-нибудь делать, тестировать в частности.
Ruslan.B
Mar 30 2014, 09:16
ЛС мне использовать почему-то запрещено, а потому вынужден обратиться тут к faa и alex9 как к людям знающим секрет удачной сборки ГОСТ-сборки. Поделитесь пожалуйста действующим рецептом, позволяющим получить свежую сборку в ОС Debian. Стыдно, впервые за 10 лет так споткнулся со сборкой что с прошлого года нет времени и сижу вне прогресса и даже не тестирую ничего. Нашел баги в редакторе схем, но это опять же в одной из прошлогодних тестовых сборок.
2 Ruslan.B А в каком месте, собственно, затык?
Ruslan.BНе далее как позавчера успешно собрал и установил по
рецепту, потом
это и
это.
Были проблемы с нехваткой библиотек, но всё решилось.
Только не грузил исходники как там написано, а скачал с FTP сервера.
К сожалению, KiCAD установился не в собственный каталог, а куда-то вроде /usr/bin (сейчас уже не помню), но это не существенно.
P.S. Собрал под Kubuntu 13.10.
_Pasha
Mar 31 2014, 06:33
Цитата(break @ Mar 31 2014, 05:41)

Были проблемы с нехваткой библиотек, но всё решилось.
Только не грузил исходники как там написано, а скачал с FTP сервера.
К сожалению, KiCAD установился не в собственный каталог, а куда-то вроде /usr/bin (сейчас уже не помню), но это не существенно.
P.S. Собрал под Kubuntu 13.10.
Делал то же самое но с крайней версией из реп, xubuntu13.10
после sudo make install имеем
Код
drvmotor@drvmotorX:~$ whereis kicad
kicad: /usr/local/bin/kicad /usr/local/lib/kicad
Ruslan.B
Apr 2 2014, 12:53
Цитата(alex9 @ Mar 30 2014, 19:30)

2 Ruslan.B А в каком месте, собственно, затык?
А во многих. Squezze и whezzy amd 64, в обоих или ошибки при сборке WX или ошибки при сборке самого KiCAD со ссылкой на wx или попросту "ошибка 2" уже на этапе сборки pcbnew ...
Возможно, новые версии в таких старых дистрибутивах и не собрать но я поставил из ppa убунты. Только она не ГОСТ, и к тому же время от времени заявляет "этот файл уже открыт" , а так же перевод там кривой жутко.
Цитата(Ruslan.B @ Apr 2 2014, 15:53)

А во многих. Squezze и whezzy amd 64, в обоих или ошибки при сборке WX или ошибки при сборке самого KiCAD со ссылкой на wx или попросту "ошибка 2" уже на этапе сборки pcbnew ...
У меня - wheezy x86 PAE (ставил amd64 - отказался по такой же причине).
wx - из реп 2.8.
Последний опыт - kicad-gost_4236-1_i386.
Ruslan.B
Apr 4 2014, 17:45
Всем спасибо за помощь, получилось. Именно на amd64, причем в Squezzе, качал c ftp bzr4247
Первые впечатления очень грустные - разные языки в меню режут глаз, и это не удастся поправить судя по всему через файл .po
А вот кто в редакторе схем переделал диалог добавления элементов в схему...взглянуть бы ему в глаза. Это ж надо, настолько сократить функциональность. Или помнить все наизусть теперь или сперва "обзор библиотек" (откуда ни в редактор, ни в схему ни вытянуть) потом отдельно поиск и выбор компонента. Что ж...
Цитата(Ruslan.B @ Apr 4 2014, 20:45)

А вот кто в редакторе схем переделал диалог добавления элементов в схему...взглянуть бы ему в глаза. Это ж надо, настолько сократить функциональность. Или помнить все наизусть теперь или сперва "обзор библиотек" (откуда ни в редактор, ни в схему ни вытянуть) потом отдельно поиск и выбор компонента. Что ж...
Он убрал кнопку "Список всех"?!
Если изменения не очень объёмные - можете поделиться?
Тут (или
там)?
зы В 4236 ГОСТ из "обзора библиотек" можно вставить компонент. Но приходится елозить мышкой по экрану. Список мне больше нравится - компактней и выскакивает в центре.
Кто-нибудь успешно собирал lp:kicad ревизии 4742 и выше?
У меня 4742 собирается, но при запуске Pcbnew вываливается "segmentation fault". При запуске eeschema все нормально.
А начиная с 4757 вообще не собирается.
В ветке lp:~kicad-gost-committers/kicad/kicad смержил пока только до ревизии 4741 ветки lp:kicad.
Барановский Константин
Apr 10 2014, 11:22
Цитата(AVL @ Apr 9 2014, 21:47)

Кто-нибудь успешно собирал lp:kicad ревизии 4742 и выше?
4751 - работает нормально:
Application: KiCad
Version: (2014-jan-25)-product Release build
wxWidgets: Version 2.8.12 (release,Unicode,compiler with C++ ABI 1002,GCC 4.8.1,wx containers,compatible with 2.6)
Platform: Linux 3.11.0-19-generic i686, 32 bit, Little endian, wxGTK
Boost version: 1.54.0
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=OFF
KICAD_SCRIPTING=ON
KICAD_SCRIPTING_MODULES=ON
KICAD_SCRIPTING_WXPYTHON=ON
USE_FP_LIB_TABLE=HARD_CODED_ON
BUILD_GITHUB_PLUGIN=OFF
Цитата(AVL @ Apr 9 2014, 22:47)

Кто-нибудь успешно собирал lp:kicad ревизии 4742 и выше?
Вот собирается. Но без github_plugin.
И даже работает

.
Только иногда (зависит от положения звезд на небе) pcbnew вываливается с "Missing OpenGL".
Application: kicad
Version: (2014-apr-05 bzr4786)-product Release build
wxWidgets: Version 2.8.12 (release,Unicode,compiler with C++ ABI 1002,GCC 4.8.2,wx containers,compatible with 2.6)
Platform: Linux 3.12.8-desktop-2.mga4 x86_64, 64 bit, Little endian, wxGTK
Boost version: 1.54.0
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=OFF
KICAD_SCRIPTING=OFF
KICAD_SCRIPTING_MODULES=OFF
KICAD_SCRIPTING_WXPYTHON=OFF
USE_FP_LIB_TABLE=HARD_CODED_ON
BUILD_GITHUB_PLUGIN=OFF
Странно, и 4751 тоже у меня выдает ошибку segmentation fault при запуске pcbnew:
Version: (2014-03-16 BZR 4751)-product Release build
wxWidgets: Version 2.9.4 (debug,wchar_t,compiler with C++ ABI 1002,GCC 4.4.5,wx containers,compatible with 2.8)
Platform: Linux 2.6.39-bpo.2-amd64 x86_64, 64 bit, Little endian, wxGTK
Boost version: 1.54.0
USE_WX_GRAPHICS_CONTEXT=OFF
USE_WX_OVERLAY=OFF
KICAD_SCRIPTING=OFF
KICAD_SCRIPTING_MODULES=OFF
KICAD_SCRIPTING_WXPYTHON=OFF
USE_FP_LIB_TABLE=HARD_CODED_ON
BUILD_GITHUB_PLUGIN=OFF
Debian 6.0.8 (squeeze)
Попробую wxWidgets пересобрать.
Цитата(AVL @ Apr 11 2014, 05:26)

Попробую wxWidgets пересобрать.
Попробовал пересобирать на базе wxWidgets 2.8.12, 3.0.0 с юникодом, без юникода, с отладкой, без отладки. Все одно, при запуске pcbnew выдает segmentation fault.
Причем dmesg показывает:
pcbnew[3700]: segfault at fffffffffffffff8 ip 00007f8d5662b783 sp 00007fff5c87ea10 error 4 in libstdc++.so.6.0.13[7f8d56569000+f6000]
Отладка через kdbg падает не успев начаться. Причем проблема повторяется и на другой машине где тоже Debian 6 (squeeze).
Разобрался в чем проблема - создаются статические переменные классов в хаотичной последовательности. Одна переменная одного модуля, не успев проинициализироваться, используется в другом конструкторе класса другого модуля, который вызывается раньше, чем инициализация первой переменной. Проблему пока описал на developer mailing list. Пока не понятно сколько таких мест по коду проекта.
То есть не удивительно, что на одних машинах проблема не проявляется, а на других проявляется. По идее зависит от компилятора, состава файлов, настроек и т.д.
Временный workaround в ревизии 4259 ветки lp:~kicad-gost-committers/kicad/kicad.
Нажмите для просмотра прикрепленного файлаОни вообще контроль не проводят?
PS у меня такие ошибки были на других сборках, но я всё свалил на свою криворукость.
Кстати, был debian squeeze.
PPS порадовал ответ Лоренцо: С++ во всём виноват... )
Ruslan.B
Jun 27 2014, 17:41
На wx2.8.12 собрал в squezze 4261 В cvpcb вид такой дурацкий - и имя библиотеки и название посадочного места... Нельзя ли по-старому вид списка сделать? В 4261 такой-же неполноценный перевод как и в 4247. Я вообще не понял, почему в .po файл не включены, как подобает, все элементы меню. Всплывающие подсказки тоже так же переведены.
И кто бы подсказал как собрать без этого FP_LIB_TABLE и без github-plugin. Именно на них сборка обрывается в 4239. А похоже 4239 - это то на чем ещё год-два можно работать.
tema-electric
Sep 10 2014, 05:22
Ребята, всем привет!
Чего-то не собирается у меня последняя гостовская сборка 4294.
Система.Код
$ uname -srmpio
Linux 3.2.0-23-generic i686 athlon i386 GNU/Linux
Опции:Код
cmake -L ../
-- Check for installed OpenGL -- found
-- Found Glew: /usr/lib/i386-linux-gnu/libGLEW.so
-- Check for installed GLEW -- found
-- Check for installed Cairo -- found
-- Check for installed wxWidgets -- found
-- Bazaar version control system version found.
-- Kicad Bazaar build version: (2014-09-05 BZR 4294 GOST-COMMITTERS)
-- Configuring done
-- Generating done
-- Build files have been written to: /home/Data/Soft/GOST/kicad-gost.bzr/build_tst
-- Cache values
BUILD_GITHUB_PLUGIN:BOOL=ON
CMAKE_BUILD_TYPE:STRING=Release
CMAKE_INSTALL_PREFIX:PATH=/usr/local
DOWNLOAD_DIR:PATH=/home/Data/Soft/GOST/kicad-gost.bzr/.downloads-by-cmake
KICAD_BUILD_DYNAMIC:BOOL=OFF
KICAD_BUILD_STATIC:BOOL=OFF
KICAD_FP_LIB_INSTALL_PATH:PATH=/usr/local
KICAD_GOST:BOOL=ON
KICAD_KEEPCASE:BOOL=ON
KICAD_REPO_NAME:STRING=product
KICAD_SCRIPTING:BOOL=OFF
KICAD_SCRIPTING_MODULES:BOOL=OFF
KICAD_SCRIPTING_WXPYTHON:BOOL=OFF
MAINTAIN_PNGS:BOOL=OFF
USE_INTERNAT:BOOL=OFF
USE_OPENOFFICE_SDK:BOOL=OFF
USE_PCAD2KICAD:BOOL=ON
USE_PYTHON_GOSTDOCGEN:BOOL=OFF
USE_RPC_DOC_SERVER:BOOL=ON
USE_WX_GRAPHICS_CONTEXT:BOOL=OFF
USE_WX_OVERLAY:BOOL=OFF
patch_bin:FILEPATH=/usr/bin/patch
wxUSE_UNICODE:BOOL=OFF
wxWidgets_CONFIG_EXECUTABLE:FILEPATH=/usr/bin/wx-config
wxWidgets_wxrc_EXECUTABLE:FILEPATH=/usr/bin/wxrc
Код
$ make -j2
[ 1%] Built target boost
[ 1%] Built target lib-dependencies
[ 35%] Built target bitmaps
[ 36%] Built target pcad2kicadpcb
[ 37%] Built target 3d-viewer
[ 38%] Built target avhttp
[ 38%] Built target polygon
[ 39%] Built target lib_dxf
[ 39%] Built target idf3
[ 39%] Building CXX object eeschema/GOST-doc-gen/CMakeFiles/GOST-doc-gen.dir/component_db.cpp.o
[ 40%] Built target potrace
[ 40%] Building CXX object eeschema/GOST-doc-gen/CMakeFiles/GOST-doc-gen.dir/doc_component_index.cpp.o
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp: В функции-члене «bool GOST_DOC_GEN::COMPONENT_DB::ValidateKiCadCompRefs()»:
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:258:47: ошибка: нет подходящей функции для вызова «SCH_SHEET_LIST::GetComponents(SCH_REFERENCE_LIST&, bool)»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:258:47: замечание: candidate is:
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/./sch_sheet_path.h:404:10: замечание: void SCH_SHEET_LIST::GetComponents(PART_LIBS*, SCH_REFERENCE_LIST&, bool)
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/./sch_sheet_path.h:404:10: замечание: no known conversion for argument 1 from «SCH_REFERENCE_LIST» to «PART_LIBS*»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp: В функции-члене «void GOST_DOC_GEN::COMPONENT_DB::ValidateKiCadAttrs()»:
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:289:47: ошибка: нет подходящей функции для вызова «SCH_SHEET_LIST::GetComponents(SCH_REFERENCE_LIST&, bool)»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:289:47: замечание: candidate is:
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/./sch_sheet_path.h:404:10: замечание: void SCH_SHEET_LIST::GetComponents(PART_LIBS*, SCH_REFERENCE_LIST&, bool)
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/./sch_sheet_path.h:404:10: замечание: no known conversion for argument 1 from «SCH_REFERENCE_LIST» to «PART_LIBS*»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:296:53: ошибка: «class SCH_REFERENCE» has no member named «GetComponent»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:300:67: ошибка: «class SCH_COMPONENT» has no member named «GetLibName»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:316:67: ошибка: «class SCH_COMPONENT» has no member named «GetLibName»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:351:39: ошибка: «class SCH_COMPONENT» has no member named «GetLibName»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:367:45: ошибка: «class SCH_COMPONENT» has no member named «GetLibName»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp: В функции-члене «void GOST_DOC_GEN::COMPONENT_DB::LoadFromKiCad()»:
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:432:47: ошибка: нет подходящей функции для вызова «SCH_SHEET_LIST::GetComponents(SCH_REFERENCE_LIST&, bool)»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:432:47: замечание: candidate is:
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/./sch_sheet_path.h:404:10: замечание: void SCH_SHEET_LIST::GetComponents(PART_LIBS*, SCH_REFERENCE_LIST&, bool)
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/./sch_sheet_path.h:404:10: замечание: no known conversion for argument 1 from «SCH_REFERENCE_LIST» to «PART_LIBS*»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:447:53: ошибка: «class SCH_REFERENCE» has no member named «GetComponent»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp: В функции-члене «bool GOST_DOC_GEN::COMPONENT_DB::CompareDB()»:
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:487:47: ошибка: нет подходящей функции для вызова «SCH_SHEET_LIST::GetComponents(SCH_REFERENCE_LIST&, bool)»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:487:47: замечание: candidate is:
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/./sch_sheet_path.h:404:10: замечание: void SCH_SHEET_LIST::GetComponents(PART_LIBS*, SCH_REFERENCE_LIST&, bool)
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/./sch_sheet_path.h:404:10: замечание: no known conversion for argument 1 from «SCH_REFERENCE_LIST» to «PART_LIBS*»
/PATH_TO_SOFT/kicad-gost.bzr/eeschema/GOST-doc-gen/component_db.cpp:506:53: ошибка: «class SCH_REFERENCE» has no member named «GetComponent»
make[2]: *** [eeschema/GOST-doc-gen/CMakeFiles/GOST-doc-gen.dir/component_db.cpp.o] Ошибка 1
make[2]: *** Ожидание завершения заданий...
[ 40%] Built target dxf2idf
[ 40%] Built target idf2vrml
make[1]: *** [eeschema/GOST-doc-gen/CMakeFiles/GOST-doc-gen.dir/all] Ошибка 2
make[1]: *** Ожидание завершения заданий...
[ 40%] Built target idfcyl
make: *** [all] Ошибка 2
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.