Arhn - архитектура программирования

Не могу установить Rodeo с pip на Ubuntu

Я не могу установить Rodeo с pip на Ubuntu 14.04.2 LTS 64 бит (установлен на Virtual Box )

Для информации, я новичок в Python и Ubuntu, и я установил pip, следуя этому руководство

pip -V

pip 6.1.1 from /usr/local/lib/python2.7/dist-packages (python 2.7)

Проблема:

Когда я выполняю pip install -U rodeo, у меня появляется сообщение об ошибке. Вот журнал:

Did not find libzmq via pkg-config:

Package libzmq was not found in the pkg-config search path.

Perhaps you should add the directory containing `libzmq.pc'

to the PKG_CONFIG_PATH environment variable

No package 'libzmq' found



x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -c build/temp.linux-x86_64-2.7/scratch/check_sys_un.c -o build/temp.linux-x86_64-2.7/scratch/check_sys_un.o

x86_64-linux-gnu-gcc -pthread build/temp.linux-x86_64-2.7/scratch/check_sys_un.o -o build/temp.linux-x86_64-2.7/scratch/check_sys_un

Configure: Autodetecting ZMQ settings...

    Custom ZMQ dir:

************************************************

creating build/temp.linux-x86_64-2.7/scratch/tmp

cc -c /tmp/timer_createSSuyTd.c -o build/temp.linux-x86_64-2.7/scratch/tmp/timer_createSSuyTd.o

cc build/temp.linux-x86_64-2.7/scratch/tmp/timer_createSSuyTd.o -o build/temp.linux-x86_64-2.7/scratch/a.out

build/temp.linux-x86_64-2.7/scratch/tmp/timer_createSSuyTd.o: In function `main':

timer_createSSuyTd.c:(.text+0x15): undefined reference to `timer_create'

collect2: error: ld returned 1 exit status

x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -Izmq/utils -Izmq/backend/cython -Izmq/devices -c build/temp.linux-x86_64-2.7/scratch/vers.c -o build/temp.linux-x86_64-2.7/scratch/vers.o

build/temp.linux-x86_64-2.7/scratch/vers.c:4:17: fatal error: zmq.h: No such file or directory

 #include "zmq.h"

                 ^

compilation terminated.



error: command 'x86_64-linux-gnu-gcc' failed with exit status 1



Failed with default libzmq, trying again with /usr/local

Configure: Autodetecting ZMQ settings...

    Custom ZMQ dir:       /usr/local

************************************************

cc -c /tmp/timer_createcU4dvG.c -o build/temp.linux-x86_64-2.7/scratch/tmp/timer_createcU4dvG.o

Assembler messages:

Fatal error: can't create build/temp.linux-x86_64-2.7/scratch/tmp/timer_createcU4dvG.o: No such file or directory

x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/local/include -Izmq/utils -Izmq/backend/cython -Izmq/devices -c build/temp.linux-x86_64-2.7/scratch/vers.c -o build/temp.linux-x86_64-2.7/scratch/vers.o

build/temp.linux-x86_64-2.7/scratch/vers.c:4:17: fatal error: zmq.h: No such file or directory

 #include "zmq.h"

                 ^

compilation terminated.



error: command 'x86_64-linux-gnu-gcc' failed with exit status 1



Warning: Failed to build or run libzmq detection test.



If you expected pyzmq to link against an installed libzmq, please check to make sure:



    * You have a C compiler installed

    * A development version of Python is installed (including headers)

    * A development version of ZMQ >= 2.1.4 is installed (including headers)

    * If ZMQ is not in a default location, supply the argument --zmq=<path>

    * If you did recently install ZMQ to a default location,

      try rebuilding the ld cache with `sudo ldconfig`

      or specify zmq's location with `--zmq=/usr/local`



You can skip all this detection/waiting nonsense if you know

you want pyzmq to bundle libzmq as an extension by passing:



    `--zmq=bundled`



I will now try to build libzmq as a Python extension

unless you interrupt me (^C) in the next 10 seconds...



************************************************

 1...

Using bundled libzmq

already have bundled/zeromq

attempting ./configure to generate platform.hpp

Warning: failed to configure libzmq:

/bin/sh: 1: ./configure: not found



staging platform.hpp from: buildutils/include_linux

checking for timer_create

************************************************

************************************************

creating build/temp.linux-x86_64-2.7/tmp

cc -c /tmp/timer_createmVaK_l.c -o build/temp.linux-x86_64-2.7/tmp/timer_createmVaK_l.o

cc build/temp.linux-x86_64-2.7/tmp/timer_createmVaK_l.o -o build/temp.linux-x86_64-2.7/a.out

build/temp.linux-x86_64-2.7/tmp/timer_createmVaK_l.o: In function `main':

timer_createmVaK_l.c:(.text+0x15): undefined reference to `timer_create'

collect2: error: ld returned 1 exit status

no timer_create, linking librt

Using bundled libsodium

already have bundled/libsodium

staging buildutils/include_sodium/version.h to bundled/libsodium/src/libsodium/include/sodium/version.h

already have crypto_scalarmult_curve25519.h

already have crypto_stream_salsa20.h

************************************************

************************************************

building 'zmq.libsodium' extension

creating build/temp.linux-x86_64-2.7/buildutils

creating build/temp.linux-x86_64-2.7/bundled

creating build/temp.linux-x86_64-2.7/bundled/libsodium

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_verify

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_verify/32

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_verify/32/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_verify/16

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_verify/16/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_verify/64

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_verify/64/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_sign

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_sign/ed25519

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_sign/ed25519/ref10

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_sign/edwards25519sha512batch/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_core

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_core/hsalsa20

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_core/hsalsa20/ref2

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_core/salsa2012

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_core/salsa2012/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_core/salsa208

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_core/salsa208/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_core/salsa20

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_core/salsa20/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/sodium

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_aead

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_aead/chacha20poly1305

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_aead/chacha20poly1305/sodium

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_scalarmult

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_scalarmult/curve25519

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_scalarmult/curve25519/ref10

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_auth

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_auth/hmacsha512

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_auth/hmacsha512/cp

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_auth/hmacsha512256

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_auth/hmacsha512256/cp

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_auth/hmacsha256

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_auth/hmacsha256/cp

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/randombytes

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/randombytes/sysrandom

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/randombytes/salsa20

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_pwhash

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/sse

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_pwhash/scryptsalsa208sha256/nosse

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_generichash

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_generichash/blake2

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_generichash/blake2/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_hash

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_hash/sha512

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_hash/sha512/cp

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_hash/sha256

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_hash/sha256/cp

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_onetimeauth

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_onetimeauth/poly1305

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_onetimeauth/poly1305/donna

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_box

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_box/curve25519xsalsa20poly1305

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_box/curve25519xsalsa20poly1305/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/xsalsa20

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/xsalsa20/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/salsa2012

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/salsa2012/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/aes128ctr

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/aes128ctr/portable

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/chacha20

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/chacha20/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/salsa208

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/salsa208/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/salsa20

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_stream/salsa20/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_shorthash

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_shorthash/siphash24

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_shorthash/siphash24/ref

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_secretbox

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_secretbox/xsalsa20poly1305

creating build/temp.linux-x86_64-2.7/bundled/libsodium/src/libsodium/crypto_secretbox/xsalsa20poly1305/ref

x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DNATIVE_LITTLE_ENDIAN=1 -Ibundled/libsodium/src/libsodium/include -Ibundled/libsodium/src/libsodium/include/sodium -I/usr/include/python2.7 -c buildutils/initlibsodium.c -o build/temp.linux-x86_64-2.7/buildutils/initlibsodium.o

buildutils/initlibsodium.c:10:20: fatal error: Python.h: No such file or directory

 #include "Python.h"

                    ^

compilation terminated.

error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

----------------------------------------
Cleaning up...
Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_ricol/pyzmq/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-KXbrbW-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_ricol/pyzmq
Storing debug log for failure in /home/ricol/.pip/pip.log

Редактировать: я последовал ответу eanandersson:

sudo apt-get install python-dev
sudo apt-get install libzmq-dev
sudo pip install -U rodeo
sudo pip install slugify

Но все еще есть проблема, когда я выполняю rodeo . даже после перезагрузки:

ricol@ricol-VirtualBox:~$ rodeo .

 _______      ___   ______   ________    ___    
|_   __ \   .'   `.|_   _ `.|_   __  | .'   `.  
  | |__) | /  .-.  \ | | `. \ | |_ \_|/  .-.  \ 
  |  __ /  | |   | | | |  | | |  _| _ | |   | | 
 _| |  \ \_\  `-'  /_| |_.' /_| |__/ |\  `-'  / 
|____| |___|`.___.'|______.'|________| `.___.'  



   ''''''''''''''''''''''''''''''''''''''''''''''''''
      URL: http://localhost:5000/
      DIRECTORY: /home/ricol
    ''''''''''''''''''''''''''''''''''''''''''''''''''
(process:2429): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. Use isContentWindowPrivate instead (but only for frame scripts).
pbu_isWindowPrivate@resource://gre/modules/PrivateBrowsingUtils.jsm:25:14
pbs<@resource://unity/observer.js:38:71
Observer.prototype.observe@resource://unity/observer.js:77:24
get_contentWindow@chrome://global/content/bindings/browser.xml:412:54
get_securityUI@chrome://global/content/bindings/browser.xml:662:17
browser_XBL_Constructor@chrome://global/content/bindings/browser.xml:786:17
WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. Use isContentWindowPrivate instead (but only for frame scripts).
pbu_isWindowPrivate@resource://gre/modules/PrivateBrowsingUtils.jsm:25:14
pbs<@resource://unity/observer.js:38:71
Observer.prototype.observe@resource://unity/observer.js:77:24
WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. Use isContentWindowPrivate instead (but only for frame scripts).
pbu_isWindowPrivate@resource://gre/modules/PrivateBrowsingUtils.jsm:25:14
pbs<@resource://unity/observer.js:38:71
Observer.prototype.observe@resource://unity/observer.js:77:24
[ERROR]: Exception on / [GET]
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()
  File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1477, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1381, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()
  File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/usr/local/lib/python2.7/dist-packages/rodeo/rodeo.py", line 33, in home
    dirslug = slugify.slugify(dirname)
  File "/usr/local/lib/python2.7/dist-packages/slugify.py", line 26, in slugify
    unicodedata.normalize('NFKD', string)
TypeError: must be unicode, not str
WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. Use isContentWindowPrivate instead (but only for frame scripts).
pbu_isWindowPrivate@resource://gre/modules/PrivateBrowsingUtils.jsm:25:14
pbs<@resource://unity/observer.js:38:71
Observer.prototype.observe@resource://unity/observer.js:77:24
@chrome://browser/content/content.js:37:5
addTab@chrome://browser/content/tabbrowser.xml:1642:13
ssi_restoreWindow@resource:///modules/sessionstore/SessionStore.jsm:2292:1
ssi_onLoad@resource:///modules/sessionstore/SessionStore.jsm:782:11
SessionStoreInternal.onBeforeBrowserWindowShown/<@resource:///modules/sessionstore/SessionStore.jsm:948:9
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:744:7
WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. Use isContentWindowPrivate instead (but only for frame scripts).
pbu_isWindowPrivate@resource://gre/modules/PrivateBrowsingUtils.jsm:25:14
pbs<@resource://unity/observer.js:38:71
Observer.prototype.observe@resource://unity/observer.js:77:24
WARNING: content window passed to PrivateBrowsingUtils.isWindowPrivate. Use isContentWindowPrivate instead (but only for frame scripts).
pbu_isWindowPrivate@resource://gre/modules/PrivateBrowsingUtils.jsm:25:14
pbs<@resource://unity/observer.js:38:71
Observer.prototype.observe@resource://unity/observer.js:77:24

  • Этот вопрос не в том разделе. Попробуйте разместить сообщение на serverfault.com. Я уверен, что вы получите ответ, который вам нужен там 04.05.2015
  • У вас есть разрабатываемые версии Python и ZMQ, как указано в журнале? Я не знаю, как называются пакеты в Ubuntu, но должно быть что-то вроде python-devel. 04.05.2015

Ответы:


1

Вам нужно будет установить python-dev/libzmq-dev для успешной установки. Проблема в том, что хотя вы можете установить большинство библиотек Python с помощью pip, некоторые из них зависят от библиотек C или C++. Эти библиотеки нельзя загрузить с помощью PIP, поэтому их необходимо установить вручную.

Поскольку PIP устанавливает только библиотеки Python, любые внешние зависимости необходимо устанавливать с помощью apt-get. В этом случае вам понадобится библиотека разработки для zmq и/или python.

sudo apt-get install libzmq-dev

и/или

sudo apt-get install python-dev
04.05.2015
  • У меня есть это сообщение об ошибке, когда я его выполняю: E: Invalid operation python-dev 04.05.2015
  • @Ricol: Попробуйте сейчас, у меня была опечатка, отсутствовала установка. 04.05.2015
  • Вам нужно запустить pip как sudo. sudo pip install -U rodeo. PIP не разрешалось записывать новые файлы, Permission denied. 04.05.2015
  • Спасибо! Установка, кажется, работает, но у меня есть другое сообщение об ошибке, когда я хочу загрузить родео с помощью rodeo . (см. отредактированный пост) 04.05.2015
  • Установите slugify =] sudo pip install slugify. 04.05.2015
  • Библиотека не должна устанавливать зависимости в Python? 04.05.2015
  • Зависимости должны быть установлены, но автор библиотеки должен указать, какие зависимости устанавливать. 04.05.2015
  • Думаю, мы почти закончили! Родео загружается, но не корректно (см. отредактированный пост) 04.05.2015
  • Похоже, вы используете старую версию pip? pip.pypa.io/en/latest/installing.html 04.05.2015
  • Я только что обновил pip. Теперь у меня есть версия 6.1, но у меня все еще есть (новое) сообщение об ошибке:/ (см. отредактированный пост) 04.05.2015
  • У вас уже есть запущенный экземпляр родео. Перезапустите виртуальную машину или завершите уже запущенный процесс Python, и он должен работать. 04.05.2015
  • Спасибо за терпеливость. Я перезапустил виртуальную машину и... у меня появилось новое сообщение об ошибке, которое я не могу интерпретировать! :o (см. отредактированный пост) 04.05.2015
  • Да, в этом нет ни малейшего понятия. Похоже, это связано с вашим браузером, но, может быть, вам лучше спросить одного из их разработчиков на github? 04.05.2015

  • 2

    Начиная с Rodeo v2.0, его больше нельзя установить через pip. В Ubuntu вы можете установить его с помощью репозитория Rodeo apt, команды приведены ниже:

    #### add the yhat public key and the repo
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 33D40BC6
    sudo add-apt-repository -u "deb http://rodeo-deb.yhat.com/ rodeo main"
    
    #### install rodeo and run it
    sudo apt-get -y install rodeo
    /opt/Rodeo/rodeo
    
    22.11.2016
    Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..