Error installing HttpParser for Atom integration


#1

I recently picked up a snazzy new workstation to play with Julia’s GPU capabilities. I’d like to still use my laptop for development and just SSH tunnel into the workstation to work with Julia. When installing Atom on the workstation I get the error when it tries to build HttpParser. I thought perhaps it was my version of gcc since it’s a new machine that I just installed GCC 7.2, but the error and warnings remained.

Any thoughts on other things I should check for? It’s running in Manjaro Linux.

http_parser.c: In function ‘http_parser_execute’:
http_parser.c:1817:31: error: this statement may fall through [-Werror=implicit-fallthrough=]
               parser->upgrade = 1;
               ~~~~~~~~~~~~~~~~^~~
http_parser.c:1819:13: note: here
             case 1:
             ^~~~
http_parser.c: In function ‘http_parser_parse_url’:
http_parser.c:2376:18: error: this statement may fall through [-Werror=implicit-fallthrough=]
         found_at = 1;
         ~~~~~~~~~^~~
http_parser.c:2379:7: note: here
       case s_req_server:
       ^~~~
cc1: all warnings being treated as errors
make: *** [Makefile:102: libhttp_parser.o] Error 1
shtml================================================================================[ ERROR: HttpParser ]==============================================================================
===============================================================================[ ERROR: HttpParser ]================================================================================

LoadError: failed process: Process(setenv(`make -j8 -C http-parser-2.7.1 library`,String["EDITOR=/usr/bin/nano", "PATH=/home/thales/anaconda3/bin:/home/thales/anaconda3/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/opt/cuda/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl", "PWD=/home/thales", "LC_TELEPHONE=en_US.UTF-8", "XDG_DATA_DIRS=/home/thales/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share", "SHELL=/bin/bash", "ITERM_PREV_PS1=\\[\e]133;D;\$?\a\e]133;A\a\\][\\u@\\h \\W]\\\$ \\[\e]133;B\a\\]", "SSH_CONNECTION=fe80::1816:41a:7e1a:95%wls4 50727 fe80::5934:c715:48b:ccbb%wls4 55409", "OPENBLAS_NUM_THREADS=8", "DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus", "SONAME=libhttp_parser.so", "MAIL=/var/spool/mail/thales", "LANG=en_US.UTF-8", "SHLVL=1", "LOGNAME=thales", "LC_MONETARY=en_US.UTF-8", "LC_NAME=en_US.UTF-8", "XDG_SESSION_ID=c22", "OLDPWD=/home/thales/Repos/deps/src/http-parser-2.7.1", "XDG_RUNTIME_DIR=/run/user/1000", "LC_IDENTIFICATION=en_US.UTF-8", "LC_PAPER=en_US.UTF-8", "QT_QPA_PLATFORMTHEME=qt5ct", "SSH_CLIENT=fe80::1816:41a:7e1a:95%wls4 50727 55409", "LC_ADDRESS=en_US.UTF-8", "PS1=[\\u@\\h \\W]\\\$ ", "_=/usr/bin/julia", "QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1", "USER=thales", "SSH_TTY=/dev/pts/3", "LC_NUMERIC=en_US.UTF-8", "LC_TIME=en_US.UTF-8", "MOZ_PLUGIN_PATH=/usr/lib/mozilla/plugins", "ITERM_ORIG_PS1=[\\u@\\h \\W]\\\$ ", "HOME=/home/thales", "TERM=xterm-256color", "LS_COLORS=no=00:fi=00:di=34:ow=34;40:ln=35:pi=30;44:so=35;44:do=35;44:bd=33;44:cd=37;44:or=05;37;41:mi=05;37;41:ex=01;31:*.cmd=01;31:*.exe=01;31:*.com=01;31:*.bat=01;31:*.reg=01;31:*.app=01;31:*.txt=32:*.org=32:*.md=32:*.mkd=32:*.h=32:*.hpp=32:*.c=32:*.C=32:*.cc=32:*.cpp=32:*.cxx=32:*.objc=32:*.cl=32:*.sh=32:*.bash=32:*.csh=32:*.zsh=32:*.el=32:*.vim=32:*.java=32:*.pl=32:*.pm=32:*.py=32:*.rb=32:*.hs=32:*.php=32:*.htm=32:*.html=32:*.shtml=32:*.erb=32:*.haml=32:*.xml=32:*.rdf=32:*.css=32:*.sass=32:*.scss=32:*.less=32:*.js=32:*.coffee=32:*.man=32:*.0=32:*.1=32:*.2=32:*.3=32:*.4=32:*.5=32:*.6=32:*.7=32:*.8=32:*.9=32:*.l=32:*.n=32:*.p=32:*.pod=32:*.tex=32:*.go=32:*.sql=32:*.csv=32:*.sv=32:*.svh=32:*.v=32:*.vh=32:*.vhd=32:*.bmp=33:*.cgm=33:*.dl=33:*.dvi=33:*.emf=33:*.eps=33:*.gif=33:*.jpeg=33:*.jpg=33:*.JPG=33:*.mng=33:*.pbm=33:*.pcx=33:*.pdf=33:*.pgm=33:*.png=33:*.PNG=33:*.ppm=33:*.pps=33:*.ppsx=33:*.ps=33:*.svg=33:*.svgz=33:*.tga=33:*.tif=33:*.tiff=33:*.xbm=33:*.xcf=33:*.xpm=33:*.xwd=33:*.xwd=33:*.yuv=33:*.aac=33:*.au=33:*.flac=33:*.m4a=33:*.mid=33:*.midi=33:*.mka=33:*.mp3=33:*.mpa=33:*.mpeg=33:*.mpg=33:*.ogg=33:*.opus=33:*.ra=33:*.wav=33:*.anx=33:*.asf=33:*.avi=33:*.axv=33:*.flc=33:*.fli=33:*.flv=33:*.gl=33:*.m2v=33:*.m4v=33:*.mkv=33:*.mov=33:*.MOV=33:*.mp4=33:*.mp4v=33:*.mpeg=33:*.mpg=33:*.nuv=33:*.ogm=33:*.ogv=33:*.ogx=33:*.qt=33:*.rm=33:*.rmvb=33:*.swf=33:*.vob=33:*.webm=33:*.wmv=33:*.doc=31:*.docx=31:*.rtf=31:*.odt=31:*.dot=31:*.dotx=31:*.ott=31:*.xls=31:*.xlsx=31:*.ods=31:*.ots=31:*.ppt=31:*.pptx=31:*.odp=31:*.otp=31:*.fla=31:*.psd=31:*.7z=1;35:*.apk=1;35:*.arj=1;35:*.bin=1;35:*.bz=1;35:*.bz2=1;35:*.cab=1;35:*.deb=1;35:*.dmg=1;35:*.gem=1;35:*.gz=1;35:*.iso=1;35:*.jar=1;35:*.msi=1;35:*.rar=1;35:*.rpm=1;35:*.tar=1;35:*.tbz=1;35:*.tbz2=1;35:*.tgz=1;35:*.tx=1;35:*.war=1;35:*.xpi=1;35:*.xz=1;35:*.z=1;35:*.Z=1;35:*.zip=1;35:*.ANSI-30-black=30:*.ANSI-01;30-brblack=01;30:*.ANSI-31-red=31:*.ANSI-01;31-brred=01;31:*.ANSI-32-green=32:*.ANSI-01;32-brgreen=01;32:*.ANSI-33-yellow=33:*.ANSI-01;33-bryellow=01;33:*.ANSI-34-blue=34:*.ANSI-01;34-brblue=01;34:*.ANSI-35-magenta=35:*.ANSI-01;35-brmagenta=01;35:*.ANSI-36-cyan=36:*.ANSI-01;36-brcyan=01;36:*.ANSI-37-white=37:*.ANSI-01;37-brwhite=01;37:*.bak=01;33:*.BAK=01;33:*.old=01;33:*.OLD=01;33:*.org_archive=01;33:*.off=01;33:*.OFF=01;33:*.dist=01;33:*.DIST=01;33:*.orig=01;33:*.ORIG=01;33:*.swp=01;33:*.swo=01;33:*,v=01;33:*.gpg=34:*.gpg=34:*.pgp=34:*.asc=34:*.3des=34:*.aes=34:*.enc=34:*.sqlite=34:*.in=00;38;5;245:*.sh=00;38;5;245:*.log=00;38;5;245:*.e*=00;38;5;245:", "LC_MEASUREMENT=en_US.UTF-8", "OPENBLAS_MAIN_FREE=1"]), ProcessExited(2)) [2]
while loading /home/thales/.julia/v0.6/HttpParser/deps/build.jl, in expression starting on line 71

while loading /home/thales/.julia/v0.6/HttpParser/deps/build.jl, in expression starting on line 71

=====================================================================================================================================================================================

==================================================================================[ BUILD ERRORS ]===================================================================================

WARNING: HttpParser had build errors.

 - packages with build errors remain installed in /home/thales/.julia/v0.6
 - build the package(s) and all dependencies with `Pkg.build("HttpParser")`
 - build a single package by running its `deps/build.jl` script

=====================================================================================================================================================================================

#2

GCC7 cannot compile the last released version of node-http-parser, which we depend upon. There’s a workaround in https://github.com/JuliaWeb/HttpParser.jl/issues/75 and the upstream issue is https://github.com/nodejs/http-parser/issues/381


#3

Thanks, this did work. For anyone else with this problem I just used the simple route and took the following steps:

  1. Remove HttpParser from Julia: rm -rf ~/.julia/v0.6/HttpParser/;
  2. Install HttpParser with the Manjaro package manager: sudo pacman -S http-parser, and
  3. Use Pkg.add("HttpParser") again within the REPL.