SimpleIDE 1.1.0 On Linux.... almost :(
DavidZemon
Posts: 2,973
in Propeller 1
I'm really close I think! (I hope). I have re-written the Linux packaging script in Python and it seems to be working great. It builds a package just like the old 1.0.0 release. Supertastic. From that package, SimpleIDE installs and runs great! Unfortunately... the programs coming out of SimpleIDE don't run so well, and I don't know why.
Trying to run the Welcome program results in a successful program of the Propeller (according to proploader anyway) but no text is shown in SimpleIDE's terminal. I tried running the same thing from the command line and got the same results: proploader reports a successful transfer of the app, but then fails to print anything back.
I'd love to hear if anyone has suggestions or wants to give it a try for themselves. You can download the package from TeamCity here and view my pull request on GitHub here, where I've also brought up this issue.
Trying to run the Welcome program results in a successful program of the Propeller (according to proploader anyway) but no text is shown in SimpleIDE's terminal. I tried running the same thing from the command line and got the same results: proploader reports a successful transfer of the app, but then fails to print anything back.
I'd love to hear if anyone has suggestions or wants to give it a try for themselves. You can download the package from TeamCity here and view my pull request on GitHub here, where I've also brought up this issue.
Comments
I guess you have bundled the updated propeller-gcc but the old libraries ?
I found a couple other problems:
1. The new proploader doesn't work with my boards, not sure if this is really a problem with the loader or with my boards, I'm not using the standard propplug but a PIC18F14K50. The "old" propeller-load works fine. This is the verbose output from proploader:
I'll try to look at the proploader source to see if there is something I'm missing.
2. Changing memory model overwrites the old files on the first build, then subsequent builds works.
For example, the default welcome project builds as cmm. On first run (fresh install) build the project and you see the cmm folder empty and the output in the "My Projects" folder. Build again, the cmm folder is filled. Now, change memory model to lmm and build, you'll see the lmm folder empty and the cmm folder overwritten with the lmm build. Hit build again and finally the lmm folder is filled. Not sure if this is linux specific (will try on Windows later).
The problem is the new fastload feature, the PIC can't handle a baud rate of 900k or so. The bad thing is that there isn't an option to disable that feature, I had to modify a board configuration to force the fast load rate to 115200. I suggest to add a generic board configuration with all legacy settings.
After further testing, I can confirm that the build bug shows up in the Windows version too, and appears it was introduced with 1.1.0, I did a quick test with the previous version and it works as expected.
If I can give you a suggestion about the install script, try to put the gcc folder inside the simpleide folder, this will be consistent with the Windows installer and helps with testing since it doesn't mess with existing installations (I already had my own propeller-gcc folder under /opt). Also it would be good to be able to install in a user folder instead of /opt for the same reason.
So exactly which version (commit hash?) of PropGCC should be included?
Moving PropGCC within the simpleide folder would require a (presumably simple) code change to SimpleIDE for the default path.
Installing to a user directory should be as simple as extracting the archive and running bin/SimpleIDE I think. You'll need to open the settings and tell it where PropGCC can be found... but I think that should work.
So it's simply an incompatibility problem, not a "bug"? So if someone were to recompile all of the libraries in Simple, it would work just fine? That brings up a question I've had for a very long time: how are those libraries compiled? Did someone open up each and every folder in SimpleIDE and click the build button, or is there a script somewhere? If its easy to recompile everything, I'll happily add that to the release script so that the libraries are always compatible with whatever version of PropGCC is shipped with SimpleIDE.
Also, do you think anyone would be interested in switching SimpleIDE's build system from QMake to CMake? Doing so would allow consistent packaging instructions for all OSes - so that you don't have one release script for linux, another for Windows, and a third for Mac.
I'm not sure why there is a build script at all. Except I guess it builds SimpleIDE, with QMake, and then it also has to build/package prop-gcc, the loader etc. Perhaps that build script could be replaced with CMake. Although that adds an unnecessary dependency for anyone who wants to build the thing.
Right now, packaging for Mac requires this script, packaging for Linux requires this script and packaging for Windows requires some other script which doesn't appear to be in the repository at all. If QMake can combine all of these into one consistent packaging definition, it would appear to me that no one knows how to make it happen. I know CMake can unify all of these and I have the ability, time, and interest to do it. I've already done so for PropWare, using one packaging definition that can build exe, deb, rpm, dmg, and zip/tgz/bz2 installers (I just can't build the dmg package because it has to be run from a Mac), and I'd like to see it happen for SimpleIDE.
Interesting. I've been through the menus a couple times and haven't seen such a feature. I wonder if it requires setting some environment variable before starting it to enable some super secret menu option
Indeed, welcome back! We've missed your wisdom and input.
New SimpleIDE version is 1.1.1. Build clean to see version change at runtime.
David Zemon's github activity woke me up, but I'll be sleeping again soon.
Pull requests will be handled by Parallax.
I do not. I'll try that. I just realized I can't try the "Build all libraries" thing from windows because the Windows release is still 1.1.0
Took me a while to understand what you mean with "Project View", and the settings dialog won't help much: the "View Mode" option is on the same line with 'Auto include simple libraries" which made me think that it was related to it, only when I displayed the tooltip I realized that it should be checked to see another menu entry, which switches view showing more menu entries. Not very intuitive. Please move it below the auto include entry so they don't appear related. And, while I don't understand all these UI filtering, rename it to something like "Enable View Mode Switch". Better would be to not have that option and be able to switch mode always. Even better, display the whole UI.
Another thing, I understand that the build all libraries isn't an operation that should be done very often, but the process makes impossible to do something else while building. The dialogs pop-up, project loading, etc. brings the SimpleIDE window on top every time. This is very annoying especially when the warning dialog says that it could take hours (fortunately it took only a couple of minutes) !
I think we should open a SimpleIDE thread for bugs and suggestions.
I would recommend, rather than a forum thread, you simply create tickets in GitHub: https://github.com/parallaxinc/SimpleIDE/issues
The default interface "Simple View" features are selected by Parallax for very a given audience. Project View is deliberately obscured to prevent Simple View users from accidentally going there. It is extremely unlikely that Parallax would allow Build All Libraries in Simple View.
Simple View is the only reason that the program keeps the title SimpleIDE ... I will not debate the actual simplicity or benefits, etc... of SimpleIDE, because what is simple to Parallax and others is difficult for me, vice-a-versa.
Github is the right place to point out bug fixes or request enhancements. Any feature requests or bug fixes that show up in github are negotiated between the developer and Parallax. Community input is important, but this forum is not where issue priorities are decided.
I had to run SimpleIDE 1.1.1 in Qt Creator's Debugger to get the mode switch to work. The logic for first run of 1.1.1 when a previous version of the IDE has been run seems to have a bug that limits the menu options (at least on macOS 10.12.3 Sierra). Hopefully, the issues get reviewed before next release.
Anywho, that link is to the proper place for writing up bug reports on SimpleIDE, if you want Parallax reviewing and prioritizing fixes/enhancements. Here it is again :-) https://github.com/parallaxinc/SimpleIDE/issues
dgately
I'm not sure how reproducible this success is... but it is the first success story! Now if we could get some attention from Parallax on this GitHub issue.
I did get the files from it a few days ago.
However, when I run the "Welcome.c" example, I don't see any ouput in the terminal window.
It claims to have built and loaded the image to the Activity Board, but nothing in the terminal at all.
Hi,
i suspected a delay error (terminal is launched too late after the propeller ). i added a for-loop with a fair amount of time and i saw the hello written.
But now i have another problem. All code about servo are not working. Anyone have an idea?