-
-
Notifications
You must be signed in to change notification settings - Fork 799
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
LDF C++ parser error #837
Comments
Is this a regression, or not supported yet? |
I'll take a look on it later. Temporary solution is to |
Please re-test with http://docs.platformio.org/en/latest/installation.html#development-version |
This is a problem of SCons engine. The SCons C/C++ Preprocessor currently is disabled. I refactored disabled code and fixed all issues. See my PR to SCons https://bitbucket.org/scons/scons/pull-requests/380/improvements-for-scons-c-c-pre-processor/diff All these changes were applied to PlatformIO's Please report if it works. |
Sorry, @ivankravets, still not working for me, alas. The example doesn't find the appropriate libraries automatically and if I include them via lib_deps it automatically finds the wrong library, even though it's defined out.. |
Apologies again @ivankravets, updated to the latest development version and we're a bit closer but the sample still requires the line:
under |
Thanks! I can't imagine how we are going to release this PlatformIO 3.2 with these new changes 😢 |
Dude, I'm really sorry. I can make it work with lib_deps/lib_ignore so I wouldn't hold up a release for this issue. |
Hm... I've jsut re-tested again and all works very well!
|
There 2 options:
See my output where I have global deps:
As you can see, no P.S: This is forced me to detach from official SCons release. I've made SCons PR #380 and don't know will it be merged and when. Nevertheles, PlatformIO has own package managment system where I can have own patched packages. I did the same with SCon. Now PIO 3.2 depends on patched SCons 2.5.1 and package version is Please check that you have |
What is interesting, this huge refactoring to PIO LDF works 2-3x faster than previous PlatformIO release!!! 😊 |
Works as long as I have that single lib_deps line (I guess the auto-detect of some libraries isn't reliable.) I'll continue to use lib_deps as necessary. Keep up the AWESOME work! |
Does it work now? |
Yes, it works perfectly. I agree, lib_deps is preferred to global installs. :) What I'm surprised by is how ILI9341_t3 is automatically detected and installed but the Adafruit libraries are not. Best to explicitly specify libraries with lib_deps. |
What do you mean? Issue with |
AHA! I see. I was confused as to why the ILI9341_t3 library didn't need to be specified but the Adafruit ones did. The ILI9341_t3 library is part of framework-arduinoteensy and is automatically available, though not visible via Everything is working as expected now. |
How about to remove extra libraries from Arduino framework for Teensy? I don't know why I added them. I propose to keep only basic libraries such as SPI, Wire, etc. WDYT? |
The teensyduino installer from @PaulStoffregen includes all these libraries so teensy developers are used to having them all pre-installed and samples should "just work". This bug was really about a problem with the LDF parser which is working awesome now. I wouldn't mess with the framework-arduinoteensy unless there's a specific issue. My confusion was around not knowing which libraries I had installed, since |
PlatformIO 3.2 has been released. Please note that you need to change |
I'm building platformio.ini file that targets two different architectures (ESP8266 and Teensy3) and need to include different sets of libraries. I'm using lib_deps and lib_ignore successfully, but the LDF C++ parser seems to be failing for me here. It is including both libraries in the build, though it should only include the first.
The code in the header file looks like this:
#if TEENSY31 == 1
#include <ILI9341_t3.h>
#else
#include <Adafruit_ILI9341.h>
#endif
and the platformio.ini flag looks like this:
build_flags = -O -D TEENSY31=1 -UUSB_SERIAL -DARDUINO_ARCH_AVR -DUSB_SERIAL_HID -DLAYOUT_US_ENGLISH -I./src
But the graph looks like this:
|-- <ILI9341_t3>
| |-- v1.0
...
|-- v1.0.0
| |-- v1.1.5
| |-- v1.0
If I simply delete the line:
#include <Adafruit_ILI9341.h>
It builds fine.
Attached is a trivial example to reproduce:
ldftest.zip
The text was updated successfully, but these errors were encountered: