Stlink: компиляция на ubuntu 16.10

Созданный на 4 дек. 2016  ·  12Комментарии  ·  Источник: stlink-org/stlink

Привет
Я недавно установил ubuntu 16.10 и пытаюсь установить драйвер stlink. К сожалению, я не могу скомпилировать код. Что я делаю неправильно? проблемы с ubuntu 16.10?

CMakeFiles_output.zip

Это результат выполнения команды make release :

сделать выпуск

- Идентификатор компилятора C - GNU 6.2.0
- Проверить работоспособность компилятора C: / usr / bin / cc
- Проверить работоспособность компилятора C: / usr / bin / cc - работает
- Обнаружение информации ABI компилятора C
- Обнаружение информации ABI компилятора C - выполнено
- Обнаружение функций компиляции C
- Обнаружение функций компиляции C - выполнено
Ошибка CMake в cmake / Version. cmake: 25 (строка):
строковая подкоманда REGEX, режим REPLACE требует не менее 6 аргументов для
команда.
Стек вызовов (сначала последний вызов):
CMakeLists. txt: 15 (включая)

- Выполнение теста C_SUPPORTS_STD_GNU99
- Выполнение теста C_SUPPORTS_STD_GNU99 - Успех
- Выполнение теста C_SUPPORTS_WALL
- Выполнение теста C_SUPPORTS_WALL - Успех
- Выполнение теста C_SUPPORTS_WEXTRA
- Выполнение теста C_SUPPORTS_WEXTRA - Успех
- Выполнение теста C_SUPPORTS_WSHADOW
- Выполнение теста C_SUPPORTS_WSHADOW - Успех
- Выполнение теста C_SUPPORTS_D_FORTIFY_SOURCE_2
- Выполнение теста C_SUPPORTS_D_FORTIFY_SOURCE_2 - Успех
- Выполнение теста C_SUPPORTS_FSTRICT_ALIASING
- Выполнение теста C_SUPPORTS_FSTRICT_ALIASING - Успех
- Выполнение теста C_SUPPORTS_WUNDEF
- Выполнение теста C_SUPPORTS_WUNDEF - Успех
- Выполнение теста C_SUPPORTS_WFORMAT
- Выполнение теста C_SUPPORTS_WFORMAT - Успех
- Выполнение теста C_SUPPORTS_WFORMAT_SECURITY
- Выполнение теста C_SUPPORTS_WFORMAT_SECURITY - Успех
- Выполнение теста C_SUPPORTS_WMAYBE_UNINITIALIZED
- Выполнение теста C_SUPPORTS_WMAYBE_UNINITIALIZED - Успех
- Выполнение теста C_SUPPORTS_WMISSING_VARIABLE_DECLARATIONS
- Выполнение теста C_SUPPORTS_WMISSING_VARIABLE_DECLARATIONS - Ошибка
- Выполнение теста C_SUPPORTS_WSHORTEN_64_TO_32
- Выполнение теста C_SUPPORTS_WSHORTEN_64_TO_32 - Ошибка
- Выполнение теста C_SUPPORTS_WIMPLICIT_FUNCTION_DECLARATION
- Выполнение теста C_SUPPORTS_WIMPLICIT_FUNCTION_DECLARATION - Успех
- Выполнение теста C_SUPPORTS_WREDUNDANT_DECLS
- Выполнение теста C_SUPPORTS_WREDUNDANT_DECLS - Успех
- Выполнение теста C_SUPPORTS_FPIC
- Выполнение теста C_SUPPORTS_FPIC - Успех
- Нашел Libusb: /usr/lib/x86_64-linux-gnu/libusb-1.0.so
- Найден PkgConfig: / usr / bin / pkg-config (найдена версия "0.29.1")
- Проверка модуля 'gtk + -3.0'
- Нашел gtk + -3.0, версия 3.20.9
- Ищем sys / mman.h
- Ищем sys / mman.h - нашел
- Генерация man-страницы отключена
- Настройка не завершена, возникли ошибки!
См. Также «... / Toolchain / stlink / build / Release / CMakeFiles / CMakeOutput.log».
См. Также «... / Toolchain / stlink / build / Release / CMakeFiles / CMakeError.log».
Makefile: 42 : не удалось выполнить рецепт целевой сборки / выпуска
make: * [build / Release] Ошибка 1

И это CMakeError.log:

Выполнение теста C SOURCE FILE C_SUPPORTS_WMISSING_VARIABLE_DECLARATIONS завершилось неудачно со следующими выходными данными:
Изменить каталог: ... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp

Выполните команду сборки: "/ usr / bin / make" "cmTC_f6585 / fast"
make [1]: вход в каталог '... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp'
/ usr / bin / make -f CMakeFiles / cmTC_f6585.dir / build.make CMakeFiles / cmTC_f6585.dir / build
make [2]: вход в каталог '... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp'
Создание объекта C CMakeFiles / cmTC_f6585.dir / src.co
/ usr / bin / cc -std = gnu99 -Wall -Wextra -Wshadow -D_FORTIFY_SOURCE = 2 -fstrict-aliasing -Wundef -Wformat -Wformat-security -Wmaybe-uninitialized -DC_SUPPORTS_WMISSING_MISSING_VARIABLE_DVBLE-переменная -WMISSING_VARIABLE_Data_Data_Disc85_CM_MISSING_MISS_VARIABLE_DL_D_D_D_D_VARIABLE_D_D_D_D_VARIABLE_D_D_L_D_D_VARIABLE_D_D_D_VARIABLE_DEX_ каталог / src.co -c ... / Цепочка инструментов / stlink / build / Release / CMakeFiles / CMakeTmp / src.c
cc: error: нераспознанный параметр командной строки '-Wmissing-variable-declrations'; Вы имели в виду "-Wmissing-declations"?
CMakeFiles / cmTC_f6585.dir / build. make: 65 : рецепт для цели 'CMakeFiles / cmTC_f6585.dir / src.co' не удалось
make [2]: * [CMakeFiles / cmTC_f6585.dir / src.co] Ошибка 1make [2]: Выход из каталога '... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp'Makefile: 126 : рецепт для цели 'cmTC_f6585 / fast' не выполненmake [1]: * [cmTC_f6585 / fast] Ошибка 2
make [1]: Выход из каталога '... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp'

Исходный файл был:
int main (void) {возврат 0; }
Выполнение теста C SOURCE FILE C_SUPPORTS_WSHORTEN_64_TO_32 завершилось ошибкой со следующим выводом:
Изменить каталог: ... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp

Выполните команду сборки: "/ usr / bin / make" "cmTC_04dd3 / fast"
make [1]: вход в каталог '... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp'
/ usr / bin / make -f CMakeFiles / cmTC_04dd3.dir / build.make CMakeFiles / cmTC_04dd3.dir / build
make [2]: Вход в каталог '... Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp'
Создание объекта C CMakeFiles / cmTC_04dd3.dir / src.co
/ usr / bin / cc -std = gnu99 -Wall -Wextra -Wshadow -D_FORTIFY_SOURCE = 2 -fstrict-aliasing -Wundef -Wformat -Wformat-security -Wmaybe-uninitialized -DC_SUPPORTS_WSHORTEN_64_TO-64 -WSHORTEN_64_TO-64 -W cmTC_04dd3.dir / src.co -c ... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp / src.c
cc: error: нераспознанный параметр командной строки '-Wshorten-64-to-32'
CMakeFiles / cmTC_04dd3.dir / build. make: 65 : рецепт для цели 'CMakeFiles / cmTC_04dd3.dir / src.co' не удалось
make [2]: * [CMakeFiles / cmTC_04dd3.dir / src.co] Ошибка 1make [2]: Выход из каталога '... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp'Makefile: 126 : рецепт для цели 'cmTC_04dd3 / fast' не выполненmake [1]: * [cmTC_04dd3 / fast] Ошибка 2
make [1]: Выход из каталога '... / Toolchain / stlink / build / Release / CMakeFiles / CMakeTmp'

Исходный файл был:
int main (void) {возврат 0; }

bucompilation bufixed errocompilation olinux statuduplicate staturesolved

Самый полезный комментарий

Задача решена. Мне не хватало заголовков libusb: -). Извините за беспокойство.

Все 12 Комментарий

Кажется, (ваша) cmake (версия) задыхается от этого: https://github.com/texane/stlink/blob/master/cmake/Version.cmake#L25 -L26

Какая у вас версия cmake --version ?
Если я посмотрю на список пакетов ubuntu, вы должны запустить 3.5.x (http://packages.ubuntu.com/yakkety/cmake)

Спасибо за ответ.

это cmake версии 3.5.2
Как я могу это решить? Я новичок в этих темах

Мне нужно это исследовать. Так как у меня нет проблем с cmake 3.0 (debian 8) и 3.7 (mac osx). Вы сделали git clone или загрузили zip-файл с исходниками?

Я скачал zip файл

Я предложил исправление. Это произошло из-за разработки и сборки из дерева git (и определения версии из git), и я не проверял сборку исходного кода zip-файла.

Спасибо за сообщение, теперь все должно работать!

Мне нужно исправить это (также) в более старых версиях git, повторное открытие ... Похоже, что сборка с продолжением интеграции не удалась.

Руководство проверено на

  • Debian 8, cmake 3.0, версия git ??
  • Mac OS X, cmake 3.7, git версии 2.9.3 (Apple Git-75)

Сломанный на

  • Ubuntu? Версии 12? на Travis CI (требуется сообщить точные версии> здесь <)

Я тоже получаю эту ошибку сборки в Ubuntu 16.04 LTS, cmake версии 3.5.1

Ошибки в журнале:
нераспознанный параметр командной строки '-Wmissing-variable-declrations'
нераспознанный параметр командной строки '-Wshorten-64-to-32'

@newtoniant это не должно быть актуально при использовании нового zip-файла (master.zip). Коммит https://github.com/texane/stlink/commit/0c63a2cffc7b7fca817d4c7fb896dbe696341ea3 должен исправить это.

Закрытие, подготовка к v1.3.0. Не стесняйтесь открывать новый выпуск после выхода нового выпуска.

Это также появляется при сборке из дерева git с помощью git checkout 1.3.1; make debug в Fedora 25 (gcc 6.3.1, cmake 3.6.2). CMakeOutput.log и CMakeError.log прилагаются.

В частности, ошибки такие же:

Выполнение теста C SOURCE FILE C_SUPPORTS_WMISSING_VARIABLE_DECLARATIONS завершилось неудачно со следующими выходными данными:
...
/ usr / lib64 / ccache / cc -std = gnu99 -Wall -Wextra -Wshadow -D_FORTIFY_SOURCE = 2 -fstrict-aliasing -Wundef -Wformat -Wformat-security -Wmaybe-uninitialized -DC_SUPPORTS_WMISBLEATIONS -DECO_SUPPORTS_WMISSING_VAR_VAR_RU cmTC_df367.dir / src.co -c /home/blablabla/stlink/build/Release/CMakeFiles/CMakeTmp/src.c
cc: error: нераспознанный параметр командной строки '-Wmissing-variable-declrations'; Вы имели в виду "-Wmissing-declations"?

...

Выполнение теста C SOURCE FILE C_SUPPORTS_WSHORTEN_64_TO_32 завершилось ошибкой со следующим выводом:
...
/ usr / lib64 / ccache / cc -std = gnu99 -Wall -Wextra -Wshadow -D_FORTIFY_SOURCE = 2 -fstrict-aliasing -Wundef -Wformat -Wformat-security -Wmaybe-uninitialized -DC_SUPPORTS_WSHORTIFY-64-W_SUPPORTS_WSHORT32EN_64_s CMakeFiles / cmTC_0ceee.dir / src.co -c /home/blablabla/stlink/build/Release/CMakeFiles/CMakeTmp/src.c
cc: error: нераспознанный параметр командной строки '-Wshorten-64-to-32'

Просьба повторно открыть проблему.

Задача решена. Мне не хватало заголовков libusb: -). Извините за беспокойство.

Самое простое решение - удалить каталог .git и повторить попытку:
rm -r build && sudo rm -rf .git && make
Он работает на Linux Mint 18.3 и, вероятно, везде.
О, и не забудьте запустить sudo ldconfig после sudo make install

Была ли эта страница полезной?
0 / 5 - 0 рейтинги