Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add support for Arduino Eclipse Plugin #2

Closed
Links2004 opened this issue Mar 28, 2015 · 3 comments
Closed

add support for Arduino Eclipse Plugin #2

Links2004 opened this issue Mar 28, 2015 · 3 comments

Comments

@Links2004
Copy link
Collaborator

add support for Arduino Eclipse Plugin (http://www.baeyens.it/eclipse/)

change the platform.txt, the Compiling is working.
the serial upload in current broken.

@@ -17,6 +17,9 @@ compiler.cpreprocessor.flags=-D__ets__ -DICACHE_FLASH "-I{compiler.sdk.path}/inc
 compiler.c.cmd=xtensa-lx106-elf-gcc
 compiler.c.flags=-c -Os -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -MMD -std=c99

+compiler.S.cmd=xtensa-lx106-elf-gcc
+compiler.S.flags=-c -g -x assembler-with-cpp -MMD
+
 compiler.c.elf.ldscript=eagle.app.v6.ld
 compiler.c.elf.flags=-nostdlib -Wl,--no-check-sections -u call_user_start -Wl,-static "-L{compiler.sdk.path}/lib" "-L{compiler.sdk.path}/ld" "-T{compiler.c.elf.ldscript}"
 compiler.c.elf.cmd=xtensa-lx106-elf-gcc
@@ -57,7 +60,7 @@ recipe.c.o.pattern="{compiler.path}{compiler.c.cmd}" {compiler.cpreprocessor.fla
 recipe.cpp.o.pattern="{compiler.path}{compiler.cpp.cmd}" {compiler.cpreprocessor.flags} {compiler.cpp.flags} -DF_CPU={build.f_cpu} -DARDUINO={runtime.ide.version} -DARDUINO_{build.board} -DARDUINO_ARCH_{build.arch} {compiler.cpp.extra_flags} {build.extra_flags} {includes} "{source_file}" -o "{object_file}"

 ## Compile S files
-recipe.S.o.pattern="{compiler.path}{compiler.as.cmd}"  -o "{object_file}" "{source_file}"
+recipe.S.o.pattern="{compiler.path}{compiler.c.cmd}" {compiler.cpreprocessor.flags} {compiler.S.flags} -DF_CPU={build.f_cpu} -DARDUINO={runtime.ide.version} -DARDUINO_{build.board} -DARDUINO_ARCH_{build.arch} {compiler.c.extra_flags} {build.extra_flags} {includes} "{source_file}" -o "{object_file}"

 ## Create archives
 recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{build.path}/{archive_file}" "{object_file}"

hope this help.

@igrr igrr closed this as completed in cb799b6 Mar 29, 2015
igrr added a commit that referenced this issue Apr 1, 2015
igrr pushed a commit that referenced this issue Jun 2, 2015
igrr pushed a commit that referenced this issue Jun 11, 2015
@czopas
Copy link

czopas commented Jun 29, 2015

Can anyone help with tutorial how to build sketch using EclipseArduino ? I am trying and still have error like:

"make all
Cannot run program "make": Launching failed

Error: Program "make" not found in PATH"

@Links2004
Copy link
Collaborator Author

may this helps:
https://github.com/esp8266/Arduino/blob/esp8266/docs/eclipse/eclipse.md

if make still missing try to install the make from mingw

@czopas
Copy link

czopas commented Jun 29, 2015

Ok, so I installed Eclipse with baeyens plugin and Arduino 1.6.1.
Next I set Arduino IDE Path to folder with Arduino. I also set Private Hardware Path to C:\Users[username]\AppData\Roaming\Arduino15\packages\esp8266\hardware.

If I tried to compile I received error:

"make all
Building file: ../.ino.cpp
Starting C++ compile
"/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:/Users/Marcin/AppData/Roaming/Arduino15/packages/esp8266/hardware/esp8266/1.6.5-804-g2d340c7/tools/sdk//include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11 -MMD -DF_CPU=80000000L -DARDUINO=10601 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266 -DESP8266 -I"C:\Users\Marcin\AppData\Roaming\Arduino15\packages\esp8266\hardware\esp8266\1.6.5-804-g2d340c7\cores\esp8266" -I"C:\Users\Marcin\AppData\Roaming\Arduino15\packages\esp8266\hardware\esp8266\1.6.5-804-g2d340c7\variants\nodemcu" -MMD -MP -MF".ino.cpp.d" -MT".ino.cpp.o" -D__IN_ECLIPSE__=1 -x c++ "../.ino.cpp" -o ".ino.cpp.o" -Wall
/usr/bin/sh: /bin/xtensa-lx106-elf-g++: No such file or directory
make: *** [.ino.cpp.o] Error 127"

Next fix was to change path to:

"runtime.tools.xtensa-lx106-elf-gcc.path={runtime.platform.path}/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9
runtime.tools.esptool.path={runtime.platform.path}/tools/esptool/0.4.5"

The error was chnged to:

"make all
Building file: ../.ino.cpp
Starting C++ compile
"C:/Users/Marcin/AppData/Roaming/Arduino15/packages/esp8266/hardware/esp8266/1.6.5-804-g2d340c7/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:/Users/Marcin/AppData/Roaming/Arduino15/packages/esp8266/hardware/esp8266/1.6.5-804-g2d340c7/tools/sdk//include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11 -MMD -DF_CPU=80000000L -DARDUINO=10601 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266 -DESP8266 -I"C:\Users\Marcin\AppData\Roaming\Arduino15\packages\esp8266\hardware\esp8266\1.6.5-804-g2d340c7\cores\esp8266" -I"C:\Users\Marcin\AppData\Roaming\Arduino15\packages\esp8266\hardware\esp8266\1.6.5-804-g2d340c7\variants\nodemcu" -MMD -MP -MF".ino.cpp.d" -MT".ino.cpp.o" -D__IN_ECLIPSE__=1 -x c++ "../.ino.cpp" -o ".ino.cpp.o" -Wall
0 [main] sh 5640 handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
147 [main] sh 5640 open_stackdumpfile: Dumping stack trace to sh.exe.stackdump
make: *** [.ino.cpp.o] Error 101120"

Any suggestion where is a problem ?

EDIT: Ok, it works on my other computer :)

igrr pushed a commit that referenced this issue Oct 28, 2015
igrr added a commit that referenced this issue Oct 29, 2015
igrr added a commit that referenced this issue Oct 29, 2015
igrr pushed a commit that referenced this issue Oct 29, 2015
igrr pushed a commit that referenced this issue Oct 29, 2015
igrr pushed a commit that referenced this issue Oct 29, 2015
igrr pushed a commit that referenced this issue Oct 29, 2015
igrr pushed a commit that referenced this issue Nov 10, 2015
igrr pushed a commit that referenced this issue Nov 22, 2015
igrr pushed a commit that referenced this issue Feb 10, 2016
Create pins_arduino.h for ESPino (WROOM-02)
mblythe86 added a commit to mblythe86/Arduino that referenced this issue Jun 14, 2017
@Eszartek Eszartek mentioned this issue Jul 23, 2018
6 tasks
devyte pushed a commit that referenced this issue Oct 17, 2018
* fix parseArgument

* remove recursion

* keep variable naming style consistent

* inviting Alexa

* fix alexa fix (well, trying...)

* fix pos substrings

key_end_pos--;
dont count down here, it will cut of every key by -1 ("save" will be "sav") (substring  (end = up to, but not including, so no need to -1)

Parsing cpp L329
arg.value = urlDecode(data.substring(equal_index + 1, next_index - 1));
=> -1 is too less for substring (substring  (end = up to, but not including, so no need to -1)

* alexa invite: add workaround for malformed x-www-form-urlencoded

* when !form, alway add content in key "plain"

* fix memleak

* parse arguments: use functors

* cleaning
SimonWilkinson added a commit to SimonWilkinson/Arduino that referenced this issue Jan 5, 2019
Rewrite the request handling in the DNSServer code to address the
following issues:

Compatibility with EDNS esp8266#1:

   RFC6891 says that
     "Responders that choose not to implement the protocol
      extensions defined in this document MUST respond with a
      return code (RCODE) of FORMERR to messages containing an
      OPT record in the additional section and MUST NOT include an
      OPT record in the response"

   If we have any additional records in the request, then we need
   to return a FORMERR, and not whatever custom error code the user
   may have set.

Compatibility with EDNS esp8266#2:

   If we're returning an error, we need to explicitly zero all of
   the record counters. In the existing code, if there is an
   additional record present in the request, we return an ARCOUNT
   of 1 in the response, despite including no additional records
   in the payload.

Don't answer non-A requests

   If we receive an AAAA request (or any other non-A record)
   requests, we shouldn't respond to it with an A record.

Don't answer non-IN requests

   If we receive a request for a non-IN type, don't answer it
   (it's unlikely that we'd see this in the real world)

Don't read off the end of malformed packets

   If a packet claims to have a query, but then doesn't include
   one, or includes a query with malformed labels, don't read off
   the end of the allocated data structure.
devyte pushed a commit that referenced this issue Jan 5, 2019
* DNSServer: Handle examplewww.com correctly

Just replacing 'www.' with the empty string when we assign the
domainname will remove all occurrences of 'www.', not just those
at the start of the string.

Change this to a startsWith check so that only "www." at the
beginning of the string is removed.

* DNSServer: Rework request handling

Rewrite the request handling in the DNSServer code to address the
following issues:

Compatibility with EDNS #1:

   RFC6891 says that
     "Responders that choose not to implement the protocol
      extensions defined in this document MUST respond with a
      return code (RCODE) of FORMERR to messages containing an
      OPT record in the additional section and MUST NOT include an
      OPT record in the response"

   If we have any additional records in the request, then we need
   to return a FORMERR, and not whatever custom error code the user
   may have set.

Compatibility with EDNS #2:

   If we're returning an error, we need to explicitly zero all of
   the record counters. In the existing code, if there is an
   additional record present in the request, we return an ARCOUNT
   of 1 in the response, despite including no additional records
   in the payload.

Don't answer non-A requests

   If we receive an AAAA request (or any other non-A record)
   requests, we shouldn't respond to it with an A record.

Don't answer non-IN requests

   If we receive a request for a non-IN type, don't answer it
   (it's unlikely that we'd see this in the real world)

Don't read off the end of malformed packets

   If a packet claims to have a query, but then doesn't include
   one, or includes a query with malformed labels, don't read off
   the end of the allocated data structure.

* DNSServer: Clarify and tidy writing the answer record

Modify the code used to write the answer record back to the server
so that it is clearer that we are writing network byte order
16-bit quantities, and to clarify what's happening with the pointer
used at the start of the answer.
ascillato pushed a commit to ascillato/Arduino that referenced this issue Nov 12, 2019
devyte pushed a commit that referenced this issue Apr 5, 2021
d-a-v added a commit that referenced this issue Jun 16, 2021
* release script: fix variable name error
* Release process in README is decribed twice. Syncing the two walk-throughs.
* adding ARDUINO_ESP8266_VERSION reflecting exactly what's passed to `makecorever.py -v`
* remove "unix-" in version name (which was present even for windows but never used)
d-a-v added a commit to francescolavra/Arduino that referenced this issue Jun 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants