Я хочу создать cgreen на Cygwin64

#cygwin

#cygwin

Вопрос:

Я установил Cygwin64 и тоже хотел установить Cgreen.

Я ввожу команду ‘make’ на Cygwin64. Я увидел эту ошибку.

введите описание изображения здесь

Я думаю, что это проблема с makefile. Я не знаю, как это точно исправить.

Пожалуйста, помогите мне. Спасибо.

Ответ №1:

Вы не используете версию Make на Cygwin.

 $ type make
make is /usr/bin/make

$ make --version
GNU Make 4.3
Built for x86_64-pc-cygwin
...
  

итак, или вы не установили пакет make и для проверки его вам
следует использовать cygcheck

 $ cygcheck -c make
Cygwin Package Information
Package              Version        Status
make                 4.3-1          OK
  

или вы изменили ПУТЬ, чтобы иметь дополнительные каталоги перед Cygwin

 $ echo $PATH
/home/Marco/bin:/usr/local/bin:/usr/bin:/usr/lib/lapack:/usr/sbin:...
  

Комментарии:

1. спасибо, мацери. Как вам сказали, я установил пакет make. и сделать так, чтобы команда распознавалась на Cygwin. но возникла другая проблема.

2. Не помещайте скриншот, скопируйте и прошлые соответствующие ошибки. Вы установили компилятор? нравится gcc.core?

Ответ №2:

В выпуске пакета cgreen 1.3.0 есть некоторые проблемы. Очевидно, что он не тестировался как автономный перед выпуском. Смотри также:

https://github.com/cgreen-devs/cgreen/issues/234

Для сборки из исходного кода git вам необходимо установить make , cmake и git пакеты, плюс, конечно, компилятор C gcc-core

 $ git clone https://github.com/cgreen-devs/cgreen.git
Cloning into 'cgreen'...
remote: Enumerating objects: 203, done.
remote: Counting objects: 100% (203/203), done.
remote: Compressing objects: 100% (146/146), done.
remote: Total 9958 (delta 96), reused 133 (delta 56), pack-reused 9755
Receiving objects: 100% (9958/9958), 2.81 MiB | 6.07 MiB/s, done.
Resolving deltas: 100% (7024/7024), done.

$ cd cgreen

$ make
-- The C compiler identification is GNU 9.3.0
-- The CXX compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc - works
-- Detecting C compiler ABI info
...
[100%] Linking C shared library cygcgreen_runner_tests.dll
make[3]: Leaving directory '/pub/tmp/cgreen/build'
[100%] Built target cgreen_runner_tests
make[2]: Leaving directory '/pub/tmp/cgreen/build'
make[1]: Leaving directory '/pub/tmp/cgreen/build'
  

В моей системе он проходит все тесты

 $ make test
-- Configuring done
-- Generating done
-- Build files have been written to: /pub/tmp/cgreen/build
make[1]: Entering directory '/pub/tmp/cgreen/build'
...
25/25 Test #25: cgreen_runner_multiple_libraries ...................................   Passed    1.15 sec

100% tests passed, 0 tests failed out of 25

Total Test time (real) =  52.58 sec
make[4]: Leaving directory '/pub/tmp/cgreen/build'
Built target check
make[3]: Leaving directory '/pub/tmp/cgreen/build'
make[2]: Leaving directory '/pub/tmp/cgreen/build'
make[1]: Leaving directory '/pub/tmp/cgreen/build'
  

В качестве альтернативы вы можете использовать предложение, представленное в выпуске

 $ tar -xf cgreen-1.3.0.tar.gz
$ cd cgreen-1.3.0
$ sed -i -e "s/^get_filename_component/# get_filename_component/" CMakeLists.txt
$ make
  

Комментарии:

1. Спасибо! проблема в компиляторе gcc! 🙂

2. что вы имеете в виду?

3. Эта проблема была вызвана тем, что я не установил пакет gcc c .