Shop OBEX P1 Docs P2 Docs Learn Events
SimpleIDE not finding simpletext.h — Parallax Forums

SimpleIDE not finding simpletext.h

I am on Linux Mint i686. I just installed SimpleIDE and I am trying to build the sample Hello World program and it is failing. Here is the error I am getting:
Project Directory: /home/user/Desktop/SimpleIDE/SimpleIDE/My Projects/

SimpleIDE Version 1.0.1
/home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/
/home/user/Desktop/SimpleIDE/SimpleIDE/ Updated on: 2016-05-02

propeller-elf-gcc -v GCC 4.6.1 (propellergcc_v1_0_0_2408)
propeller-elf-gcc -I . -L . -I /home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/Utility/libsimpletools -L /home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/Utility/libsimpletools/cmm/ -I /home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/Text Devices/libsimpletext -L /home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/Text Devices/libsimpletext/cmm/ -I /home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/Protocol/libsimplei2c -L /home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/Protocol/libsimplei2c/cmm/ -o cmm/Welcome.elf -Os -mcmm -m32bit-doubles -fno-exceptions -std=c99 Welcome.c -lm -lsimpletools -lsimpletext -lsimplei2c -lm -lsimpletools -lsimpletext -lm -lsimpletools -lm
In file included from Welcome.c:26:0:
/home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/Utility/libsimpletools/simpletools.h:111:24: fatal error: simpletext.h: No such file or directory
compilation terminated.
Done. Build Failed!

Click error or warning messages above to debug.

I have tried installing it to a different version of Mint that I booted from a LiveCD, and got the same problem. The header file "simpletext.h" exists, its just not being found for some reason (It is in "Simple Libraries/TextDevices/libsimpletext/simpletext.h").

Comments

  • Are you using #include <simpletext.h> or #include "simpletext.h" ? I believe you should be using the former of the two.

    If that doesn't fix it, can you post your code?
  • This is just the default Hellow World that the program starts up in when you don't have another project you are opening ("Welcome.c"). This isn't a project I wrote; I literally just installed SimpleIDE, started it up, and hit the Build Project button.
    #include "simpletools.h"
    
    int main()
    {
        print("Hello!");
    }
    

    It finds "simpletools.h", but "simpletools.h" has the line
    #include "simpletext.h"
    
    which is not found.

    I believe the double quotes is correct syntax in this case, as both of those header files are in the SimpleIDE Workspace folder as part of Simple Libraries. I have tried changing these to angle brackets though, and it gives the same error.
  • The <> syntax searches only system header directories and anything specified on the command line with the -I flag. The "" syntax searches the current directory and everything specified by the <> syntax. So, either should work in this case.
    Source.

    As to your question of why it does not work, I do not know :(
  • Chris SavageChris Savage Parallax Engineering Posts: 14,406
    Can you confirm that simpletext.h is in the path: SimpleIDE\Learn\Simple Libraries\TextDevices\libsimpletext
  • The path relative to the Workspace folder is "SimpleIDE/Learn/Simple Libraries/TextDevices/libsimpletext/simpletext.h"
  • Chris SavageChris Savage Parallax Engineering Posts: 14,406
    Hmmm, you've got me on this one. Let me see if I can get some help for you.
  • Hi, can you check the location of simpletext? It should be ...SimpleIDE/Learn/Simple Libraries/Text Devices/libsimpletext/
  • Where in your case, ...SimpleIDE is on your desktop.
  • Marcus,
    On my version of SimpleIDE, the folder Text Devices has a space between Text and Devices as shown in Andy's post. In your post there is no space. Did you type the path or cut & paste it?
  • Chris SavageChris Savage Parallax Engineering Posts: 14,406
    I copied and pasted the path. In Windows there is no space in the path.
  • In the output of the error message you posted, there is a space between Text and devices in the library list.

    Tom
  • So far as I can tell, libsimpletext is in the correct location relative to the Workspace and Library folders. In Tools>Properties the Workspace folder is set to "/home/user/Desktop/SimpleIDE/SimpleIDE" and the Library folder is set to "/home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/". These were automatically set by SimpleIDE on the first run of the program (it prompts you on where to put the Workspace folder). I have tried deleting the whole Workspace hierarchy so that it will recreate it, but it gives the same error. I have also tried to tell it to put the Workspace folder in a different location, and it gives the same error.

    (Ignore the fact that it is "SimpleIDE/SimpleIDE". I just decided to put the files in a folder called "SimpleIDE", but apparently the program had the same idea)
  • twm47099twm47099 Posts: 867
    edited 2016-05-13 18:48
    OK, when I went in to my library folder, right clicked on Simpletext folder and clicke on properties.
    I cut and pasted from the Location and got:
    C:\Users\tandj\Documents\SimpleIDE\Learn\Simple Libraries\Text Devices
    

    But I was using an old version of SimpleIDE and the Libraries (my simpletext library documentation shows version 0.85.)

    I downloaded and installed the latest version of SimpleIDE and whatever libraries it automatically installs. That version of simpletext.h is 0.99.

    More importantly, the path to that library does NOT have a space between Text and Devices. However, since the original post showed a space in the library string
    -I /home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/Text Devices/libsimpletext -L /home/user/Desktop/SimpleIDE/SimpleIDE/Learn/Simple Libraries/Text Devices/libsimpletext/cmm/
    
    

    I wonder if that inconsistency is causing a problem.

    I forgot to mention I am using windows.
    Also when I loaded and built the hello program using the version of SimpleIDE I just installed, it worked and the library list did NOT have a space between text and devices.
    I'm not sure what is happening.

    Tom
  • On closer inspection there are *two* folders, "TextDevices" and "Text Devices". It looks like someone may have tried to merge these folders and didn't catch the space difference. SimpleIDE is, in fact, looking in "Text Devices", and merging "TextDevices" into "Text Devices" appears to solve the problem. Good spot!

    The library hierarchy was created this way when SimpleIDE first ran, and I can reproduce the problem on a LiveCD. I got the package from: learn.parallax.com/tutorials/language/propeller-c/propeller-c-set-simpleide/linux
  • I booted up Debian x84_64 from a LiveCD and tested the 64bit package, and it worked fine. So only the 32bit package is affected.
  • Installed on Ubuntu 14.04 64-bit. Np.
    939 x 967 - 327K
  • I just spent a bunch of time dealing with this issue of "Text Devices" vs "TextDevices" directories on my Windows 7 installation. I installed the most recent version of SimpleIDE and the Learn Folder ("Learn-Folder-Updated-2017.01.18.zipside") and this issue apparently still exists.

    Why do these two separate directories exist? I would think that this should have been fixed by now for all OS platforms. If there is some reason as to why there must be two directories (i.e. backward-compatibly), there should be at least some documentation explaining that fact.

    It was very confusing as to why I was getting compilation/linking errors ((.text+0x14): undefined reference to `_fdserial_rxCount') when I was trying to compile the "Page Controls light Host.c" program for the 32420 Parallax WX ESP8266 WiFi Module - DIP.
Sign In or Register to comment.