Code Monkey home page Code Monkey logo

Comments (25)

tralamazza avatar tralamazza commented on July 20, 2024 5

This might help (tested on yosemite 10.10.1):

install proper sed, gperf and grep:

brew install gnu-sed --with-default-names
brew tap homebrew/dupes
brew install gperf
brew install grep

create and mount a case sensitive volume:

hdiutil create ~/Desktop/eos.dmg -volname "esp-open-sdk" -size 10g -fs "Case-sensitive HFS+"
hdiutil mount ~/Desktop/eos.dmg
cd /Volumes/eos-open-sdk
git clone [email protected]:pfalcon/esp-open-sdk.git
cd eos-open-sdk

build it normally

make

from esp-open-sdk.

george-hopkins avatar george-hopkins commented on July 20, 2024

This issue is very likely the same as the one fixed in this patch request. The patch should be included quite soon.
In meantime, you could update your gperf installation using homebrew or apply the patch manually.

from esp-open-sdk.

Ivoah avatar Ivoah commented on July 20, 2024

Installing gperf from homebrew fixed that error, but now I'm getting an error about an illegal option being passed to sed: http://pastebin.com/P71T5sud

EDIT: I got the sed issue fixed by installing gnu-sed from homebrew, but now it gives an error about my filesystem not being case sensitive: [ERROR] Your file system in '/Users/ivo/Desktop/esp-open-sdk/crosstool-NG/.build' is *not* case-sensitive!

from esp-open-sdk.

pfalcon avatar pfalcon commented on July 20, 2024

@george-hopkins: Thanks for your hints, because I don't use MacOSX and the only reply I could have is to draw attention to "Building" section of https://github.com/pfalcon/esp-open-sdk/blob/master/README , which stipulates that GNU tools should be installed.

from esp-open-sdk.

pfalcon avatar pfalcon commented on July 20, 2024

EDIT: I got the sed issue fixed by installing gnu-sed from homebrew, but now it gives an error about my filesystem not being case sensitive: [ERROR] Your file system in '/Users/ivo/Desktop/esp-open-sdk/crosstool-NG/.build' is not case-sensitive!

Well, I remember reading somewhere there's an option for MacOSX to make filesystem case-sensitive, you may want to google for that.

Overall, there's little I can do with this bugreport - this project is just a Makefile which calls to crosstool-NG, which in turn calls to standard configure scripts for gcc, binutils, etc. Bugreports should be sent to those projects instead. In particular, if it's known that some patch to crosstool-NG resolves an issues, please file bugreport to https://github.com/jcmvbkbc/crosstool-NG , that's what I use, and if it it will be fixed there, I just pull new version to this project.

Otherwise, we can just document what steps and workarounds are required for MacOSX build, or if nothing works, say it's not supported (and suggest using Linux VM instead for example).

from esp-open-sdk.

Ivoah avatar Ivoah commented on July 20, 2024

I found a workaround for Mac OS X, you need to create a case-sensitive disk image and build/use the compiler from there

from esp-open-sdk.

Ivoah avatar Ivoah commented on July 20, 2024

The case sensitivity issues have been resolved, but now I get another error: http://pastebin.com/vBmv0D86

from esp-open-sdk.

george-hopkins avatar george-hopkins commented on July 20, 2024

This is probably due to some incompatioility of your grep binary.
You could try to install GNU grep from homebrew-dupes and modify paths.sh in the crosstool-NG folder.

paths.sh (untested):

export install="/usr/local/bin/ginstall -c"
export bash="/brew2/local/bin/bash"
export awk="/brew2/local/bin/gawk"
export grep="/brew2/local/bin/ggrep"
export make="/usr/bin/make"
export sed="/brew2/local/bin/gsed"
export libtool="/brew2/local/bin/glibtool"
export libtoolize="/brew2/local/bin/glibtoolize"
export objcopy="/brew2/local/bin/gobjcopyi"
export objdump="/brew2/local/bin/gobjdump"
export readelf="/brew2/local/bin/greadelf"
export patch="/usr/bin/patch"

from esp-open-sdk.

mickys avatar mickys commented on July 20, 2024

Hi,

After installing everything needed using MacPorts, and replacing osx sed with gsed, i got to the point where xtensa src throws an error.
Yet if i rerun "make STANDALONE=y" it says the toolchain is installed.

Build log: http://pastebin.com/Mq2VsrvF

No idea how to test if it works thou, need a few pointers.

from esp-open-sdk.

george-hopkins avatar george-hopkins commented on July 20, 2024

You could try to compile this sample project: esp8266/source-code-examples/basic_example
Don't forget to adjust XTENSA_TOOLS_ROOT. If this works, you should be fine (at least in my opinion).

from esp-open-sdk.

Ivoah avatar Ivoah commented on July 20, 2024

I don't know exactly what I did, but it's building now! YAY!

from esp-open-sdk.

hebnern avatar hebnern commented on July 20, 2024

Thanks @tralamazza, worked like a charm! Just ran into one issue where lx106-hal tried to use my system ar instead of the xtensa compiler version. Filed a PR with that project here: tommie/lx106-hal#6

from esp-open-sdk.

Poopi avatar Poopi commented on July 20, 2024

I was playing with MacPorts not brew and finally got the compiler running on OSX like a charm:

Need to install proper packages first ( although I might missed something ):

sudo port install git gsed gawk binutils gperf grep gettext py-serial

Then create case sensitive volume ( like described by @tralamazza):

hdiutil create -size 10g -fs "Case-sensitive HFS+" -volname ESPTools ESPTools.sparsebundle
hdiutil attach ESPTools.sparsebundle
cd /Volumes/ESPTools

Get the compiler (check which git you are using. OSX one automatically initializes submodules, whether macport one is not. TO avoid this add --recursive option):

git clone https://github.com/pfalcon/esp-open-sdk.git --recursive
cd esp-open-sdk

Patch it:

sed -i.bak '1s/^/gettext=\'$'\n/' crosstool-NG/kconfig/Makefile
sed -i.bak -e 's/[[:<:]]sed[[:>:]]/gsed/' Makefile
sed -i.bak -e 's/[[:<:]]awk[[:>:]]/\$(AWK)/' lx106-hal/src/Makefile.am
sed -i.bak 's/AM_PROG_AS/AM_PROG_AS\'$'\nAM_PROG_AR/' lx106-hal/configure.ac

And finally build:

make STANDALONE=n ... or y

from esp-open-sdk.

supergis avatar supergis commented on July 20, 2024

I do all step above,run make but got error:

make -C crosstool-NG -f ../Makefile _toolchain
./ct-ng xtensa-lx106-elf
gmake[2]: Entering directory '/Volumes/ESPTools/esp-open-sdk/crosstool-NG'
ct-ng:26: /Volumes/ESPTools/esp-open-sdk/crosstool-NG/lib/ct-ng.1.20.0/paths.mk: No such file or directory
ct-ng:113: /Volumes/ESPTools/esp-open-sdk/crosstool-NG/lib/ct-ng.1.20.0/config/config.mk: No such file or directory
ct-ng:114: /Volumes/ESPTools/esp-open-sdk/crosstool-NG/lib/ct-ng.1.20.0/kconfig/kconfig.mk: No such file or directory
ct-ng:115: /Volumes/ESPTools/esp-open-sdk/crosstool-NG/lib/ct-ng.1.20.0/steps.mk: No such file or directory
ct-ng:116: /Volumes/ESPTools/esp-open-sdk/crosstool-NG/lib/ct-ng.1.20.0/samples/samples.mk: No such file or directory
ct-ng:117: /Volumes/ESPTools/esp-open-sdk/crosstool-NG/lib/ct-ng.1.20.0/scripts/scripts.mk: No such file or directory
gmake[2]: *** No rule to make target '/Volumes/ESPTools/esp-open-sdk/crosstool-NG/lib/ct-ng.1.20.0/scripts/scripts.mk'。 停止。
gmake[2]: Leaving directory '/Volumes/ESPTools/esp-open-sdk/crosstool-NG'
make[1]: *** [_toolchain] Error 2
make: *** [/Volumes/ESPTools/esp-open-sdk/xtensa-lx106-elf/bin/xtensa-lx106-elf-gcc] Error 2

from esp-open-sdk.

supergis avatar supergis commented on July 20, 2024

if into crosstool-NG,run make will got error as:

Undefined symbols for architecture x86_64:
  "_libintl_bindtextdomain", referenced from:
      _main in conf.o
  "_libintl_gettext", referenced from:
      _conf_parse in zconf.tab.o
      _conf_read_simple in zconf.tab.o
      _conf_write in zconf.tab.o
      _get_prompt_str in zconf.tab.o
      _get_symbol_str in zconf.tab.o
      _get_relations_str in zconf.tab.o
      _menu_get_ext_help in zconf.tab.o
      ...
  "_libintl_setlocale", referenced from:
      _main in conf.o
  "_libintl_textdomain", referenced from:
      _main in conf.o
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
make[2]: *** [conf] Error 1
make[1]: *** [build-lib-kconfig] Error 2
make: *** [build] Error 2

from esp-open-sdk.

Poopi avatar Poopi commented on July 20, 2024

@supergis Are you sure you have the gettext from macports installed ? If not please install.

from esp-open-sdk.

supergis avatar supergis commented on July 20, 2024

Thanks for your advice. I been installed gettext, but get same error.
Any others advice?

from esp-open-sdk.

Poopi avatar Poopi commented on July 20, 2024

Please paste the output from following commands:
gobjdump -f /opt/local/lib/libintl.8.dylib
port list gettext

from esp-open-sdk.

lberezy avatar lberezy commented on July 20, 2024

I'm trying to compile on OS X 10.9 and get the following

lberezy@air /V/e/esp-open-sdk> make STANDALONE=y
make -C crosstool-NG -f ../Makefile _ct-ng
./bootstrap
Running autoconf...
Done. You may now run:
    ./configure
./configure --prefix=`pwd`
checking build system type... x86_64-apple-darwin13.4.0
checking host system type... x86_64-apple-darwin13.4.0
checking for a BSD-compatible install... /usr/bin/install -c
checking for grep that handles long lines and -e... /usr/local/bin/ggrep
checking for egrep... /usr/local/bin/ggrep -E
checking for a sed that does not truncate output... /usr/local/bin/sed
checking whether sed understands -r -i -e... yes
checking whether ln -s works... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for ranlib... ranlib
checking for gobjcopy... gobjcopy
checking for absolute path to gobjcopy... /usr/local/bin/gobjcopy
checking for gobjdump... gobjdump
checking for absolute path to gobjdump... /usr/local/bin/gobjdump
checking for greadelf... greadelf
checking for absolute path to greadelf... /usr/local/bin/greadelf
checking for gperf... gperf
checking for absolute path to gperf... /usr/bin/gperf
checking for bison... bison
checking for flex... flex
checking for makeinfo... makeinfo
checking for cut... cut
checking for stat... stat
checking for readlink... readlink
checking for wget... wget
checking for tar... tar
checking for gzip... gzip
checking for bzip2... bzip2
checking for patch... /usr/bin/patch
checking for bash >= 3.1... /bin/bash
checking for GNU awk... /usr/local/bin/gawk
checking for GNU make >= 3.80... /usr/bin/make
checking whether /usr/bin/make sets $(MAKE)... yes
checking for make 3.81... yes
checking for GNU libtool >= 1.5.26... /usr/local/bin/glibtool
checking for GNU libtoolize >= 1.5.26... /usr/local/bin/glibtoolize
checking for GNU automake >= 1.10... /usr/local/bin/automake
checking for xz... xz
checking for cvs... no
checking for svn... svn
checking for inline... inline
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible realloc... yes
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking libintl.h usability... no
checking libintl.h presence... no
checking for libintl.h... no
checking ncurses/ncurses.h usability... no
checking ncurses/ncurses.h presence... no
checking for ncurses/ncurses.h... no
checking ncurses/curses.h usability... no
checking ncurses/curses.h presence... no
checking for ncurses/curses.h... no
checking ncursesw/curses.h usability... no
checking ncursesw/curses.h presence... no
checking for ncursesw/curses.h... no
checking ncurses.h usability... yes
checking ncurses.h presence... yes
checking for ncurses.h... yes
checking for library containing initscr... -lncurses
configure: creating ./config.status
config.status: creating Makefile
make MAKELEVEL=0
  SED    'ct-ng'
  SED    'scripts/crosstool-NG.sh'
  SED    'scripts/saveSample.sh'
  SED    'scripts/showTuple.sh'
  GEN    'config/configure.in'
  GEN    'paths.mk'
  GEN    'paths.sh'
  DEP    'nconf.gui.dep'
  DEP    'nconf.dep'
  DEP    'lxdialog/yesno.dep'
  DEP    'lxdialog/util.dep'
  DEP    'lxdialog/textbox.dep'
  DEP    'lxdialog/menubox.dep'
  DEP    'lxdialog/inputbox.dep'
  DEP    'lxdialog/checklist.dep'
  DEP    'mconf.dep'
  DEP    'conf.dep'
  BISON  'zconf.tab.c'
  GPERF  'zconf.hash.c'
  LEX    'lex.zconf.c'
  DEP    'zconf.tab.dep'
  CC     'zconf.tab.o'
In file included from zconf.tab.c:234:
./zconf.hash.c:177:8: warning: implicit declaration of function 'offsetof' is invalid in C99 [-Wimplicit-function-declaration]
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str2),              T_ON,           TF_PARAM},
       ^
./zconf.hash.c:177:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str2),              T_ON,           TF_PARAM},
                ^
./zconf.hash.c:178:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str3),              T_OPT_ENV,      TF_OPTION},
                ^
./zconf.hash.c:180:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str5),              T_ENDIF,        TF_COMMAND},
                ^
./zconf.hash.c:181:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str6),              T_OPTION,       TF_COMMAND},
                ^
./zconf.hash.c:182:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str7),      T_ENDMENU,      TF_COMMAND},
                ^
./zconf.hash.c:183:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str8),      T_OPTIONAL,     TF_COMMAND},
                ^
./zconf.hash.c:184:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str9),      T_ENDCHOICE,    TF_COMMAND},
                ^
./zconf.hash.c:185:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str10),             T_RANGE,        TF_COMMAND},
                ^
./zconf.hash.c:186:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str11),             T_CHOICE,       TF_COMMAND},
                ^
./zconf.hash.c:187:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str12),     T_DEFAULT,      TF_COMMAND, S_UNKNOWN},
                ^
./zconf.hash.c:188:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str13),     T_DEFAULT,      TF_COMMAND, S_BOOLEAN},
                ^
./zconf.hash.c:189:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str14),             T_HELP,         TF_COMMAND},
                ^
./zconf.hash.c:191:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str16),             T_CONFIG,       TF_COMMAND},
                ^
./zconf.hash.c:192:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str17),     T_DEFAULT,      TF_COMMAND, S_TRISTATE},
                ^
./zconf.hash.c:193:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str18),             T_TYPE,         TF_COMMAND, S_HEX},
                ^
./zconf.hash.c:194:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str19),     T_OPT_DEFCONFIG_LIST,TF_OPTION},
                ^
./zconf.hash.c:196:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str22),             T_IF,           TF_COMMAND|TF_PARAM},
                ^
./zconf.hash.c:197:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str23),             T_TYPE,         TF_COMMAND, S_INT},
                ^
./zconf.hash.c:199:17: error: expected expression
      {offsetof(struct kconf_id_strings_t, kconf_id_strings_str27),     T_OPT_MODULES,  TF_OPTION},
                ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
1 warning and 20 errors generated.
make: *** [zconf.tab.o] Error 1
make: *** [build-lib-kconfig] Error 2
make: *** [build] Error 2
make[1]: *** [_ct-ng] Error 2
make: *** [crosstool-NG/ct-ng] Error 2

Any pointers? Wrong version of GCC?

lberezy@air /V/e/esp-open-sdk> gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix

from esp-open-sdk.

Poopi avatar Poopi commented on July 20, 2024

Try to install bison and gperf from macports and try again

from esp-open-sdk.

eadf avatar eadf commented on July 20, 2024

This is the tl;dr edition of what's already been said by george-hopkins and Poopi above.

On a case sensitive drive, using macports, execute this in the esp-open-sdk folder:

export bash="/opt/local/bin/bash"
export awk="/opt/local/bin/gawk"
export grep="/opt/local/bin/ggrep"
export make="/usr/bin/make"
export sed="/opt/local/bin/gsed"
export libtool="/opt/local/bin/glibtool"
export libtoolize="/opt/local/bin/glibtoolize"
export objcopy="/opt/local/bin/gobjcopyi"
export objdump="/opt/local/bin/gobjdump"
export readelf="/opt/local/bin/greadelf"
export patch="/usr/bin/patch"


sed -i.bak '1s/^/gettext=\'$'\n/' crosstool-NG/kconfig/Makefile
sed -i.bak -e 's/[[:<:]]sed[[:>:]]/gsed/' Makefile
sed -i.bak -e 's/[[:<:]]awk[[:>:]]/\$(AWK)/' lx106-hal/src/Makefile.am
sed -i.bak 's/AM_PROG_AS/AM_PROG_AS\'$'\nAM_PROG_AR/' lx106-hal/configure.ac

Then

make STANDALONE=n ... or y

That's all i needed to make it build on yosemite

from esp-open-sdk.

pfalcon avatar pfalcon commented on July 20, 2024

#40 contributed MacOSX instructions to README, closing.

from esp-open-sdk.

cgriptide avatar cgriptide commented on July 20, 2024

I'm trying to compile the library for mac but keep getting this error.

make STANDALONE=n
cp esptool/esptool.py /Volumes/esp-open-sdk/esp-open-sdk/xtensa-lx106-elf/bin/
ln -snf esp_iot_sdk_v1.3.0 sdk
make -C lx106-hal -f ../Makefile _libhal
autoreconf -i
PATH=/Volumes/esp-open-sdk/esp-open-sdk/xtensa-lx106-elf/bin:/Users/cesar/.rbenv/shims:/Users/cesar/Downloads/cocos2d-x-3.1/tools/cocos2d-console/bin:/opt/local/bin:/opt/local/sbin:/Users/cesar/.gvm/groovy/current/bin:/Users/cesar/.gvm/grails/current/bin:/Users/cesar/.gvm/griffon/current/bin:/Users/cesar/.gvm/gradle/current/bin:/Users/cesar/.gvm/vertx/current/bin:/Users/cesar/.gvm/bin:/Users/cesar/.gvm/ext:/Applications/CMake.app/Contents/bin/:/Users/cesar/Downloads/libs/oclint-0.6-x86_64-apple-darwin12/bin:/usr/local/mysql-5.6.10-osx10.7-x86_64/bin/:/Users/cesar/Downloads/sbt/bin/:/Developer/SDKs/Research In Motion/BlackBerry 10 WebWorks SDK 1.0.4.5/dependencies/tools/bin:/Developer/SDKs/Research In Motion/BlackBerry 10 WebWorks SDK 1.0.4.5:/Users/cesar/gems/bin:/Users/cesar/.rvm/gems/ruby-1.9.3-p362/bin:/Users/cesar/.rvm/gems/ruby-1.9.3-p362@global/bin:/Users/cesar/.rvm/rubies/ruby-1.9.3-p362/bin:/Users/cesar/.rvm/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/go/bin:/Users/cesar/Downloads/apache-ant-1.9.4/bin:/Applications/Qt5/5.0.0-rc1/clang_64/bin/:/Library/Frameworks/Python.framework/Versions/3.3/bin/:/Users/cesar/Downloads/apache-maven-3.1.1/bin/:/Users/cesar/Library/Android/tools/:/Users/cesar/Library/Android/platform-tools/:/Users/cesar/Downloads/mongodb/bin ./configure --host=xtensa-lx106-elf --prefix=/Volumes/esp-open-sdk/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr
/bin/sh: In: command not found
make[1]: *** [_libhal] Error 127
make: *** [/Volumes/esp-open-sdk/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/lib/libhal.a] Error 2

Any clue?

from esp-open-sdk.

Grousee avatar Grousee commented on July 20, 2024

Hi, i am trying to compile with max OS X Sierra but i have this :

Makefile:181: warning: overriding commands for target `ESP8266_NONOS_SDK_V2.0.0_16_08_10/.dir'
Makefile:176: warning: ignoring old commands for target `ESP8266_NONOS_SDK_V2.0.0_16_08_10/.dir'
make -C crosstool-NG -f ../Makefile _ct-ng
../Makefile:181: warning: overriding commands for target `ESP8266_NONOS_SDK_V2.0.0_16_08_10/.dir'
../Makefile:176: warning: ignoring old commands for target `ESP8266_NONOS_SDK_V2.0.0_16_08_10/.dir'
./bootstrap
Running autoconf...
Done. You may now run:
    ./configure
./configure --prefix=`pwd`
checking build system type... x86_64-apple-darwin16.5.0
checking host system type... x86_64-apple-darwin16.5.0
checking for a BSD-compatible install... /usr/local/bin/ginstall -c
checking for grep that handles long lines and -e... ./configure: line 2584: 45032 Abort trap: 6           "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" > "conftest.out" 2> /dev/null
/usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for a sed that does not truncate output... /usr/bin/sed
checking whether sed understands -r -i -e... no
configure: error: 
make[1]: *** [_ct-ng] Error 1
make: *** [crosstool-NG/ct-ng] Error 2

from esp-open-sdk.

micky-socaci-uniway avatar micky-socaci-uniway commented on July 20, 2024

@Grousee you need to replace sed in your system with gsed.

from esp-open-sdk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.