Compile error


#1

I’m using the latest revision (32:6d5a63b) and I get the following compile error:
Error: Undefined symbol Pokitto::audiopwm (referred from HWSound.LPC11U68.o).

I structured my application like this:

  • lib
    • PokittoLib
  • src
    • main.cpp
    • My_settings.h

I’m looking into whether or not I can use embitz together with the mbed (compiler) Mercurial hosting.
The reason why is to check whether or not it’s possible when you host the code on mbed (which uses Mercurial) that people can work together with their dev environment of choice (online or offline IDE).

Edit: tried to place everything underneath the main folder, still get the same error.


[Solved] Failed compilation in mbed, noted Cannot open source input file "My_settings.h"
#2

I will check it


#3

Thank you :blush:

Moved to 29:9467921dec10 for now.
The one right before the sound enhancement.


#4

I have an other question, sorry don’t have much C++ experience or with any of these tools.
But the mbed compiler adds a .lib file for Pokitto.
Can this .lib file be used while working with embitz?
I tried to add the .lib file as a library but I still get an error on including Pokitto.h: no such file or directory.


#5

I’ll be around later today! I’ll explain it


#6

Any news on this? :blush:


#7

Its fixed … I mentioned in other thread

It was a simple #if closure missing


#8

#9

ah sorry, I meant my other question. I saw the other thread, thanks for that! :slight_smile:


#10

No the .lib file works only in mbed online compiler, and is actually not needed in EmBitz

Explanation: the online compiler is commercial Keil ARMCC. The EmBitz compiler is open-source ARMGCC so the .lib file is not compatible.


#11

What do you mean with not needed?
Do I need to complete Pokitto source code in my project for it to work with embitz?
We can’t use a package manager, so we can easily add it to our project and update to newer versions?

If I follow the following tutorial:


I end up with all the source code and examples, which will clutter my project.


#12

.lib file is the compiled PokittoLib. The GitHub repo contains the source code to the entire PokittoLib - you do not need the compiled .lib because it will be generated when you compile your program.

In EmBitz, the idea is that the same project contains different targets. Having a pre-compiled library makes no sense, because the library needs to be re-compiled depending on the project settings you give in My_settings.h. Not all projects use same screen mode, sound etc. So recompiling from source is needed.

As for examples, maybe we could do a “slimmed down” repo.

If you have problems creating the targets, I will make a video about it.


#13

Ok, I understand now. Thank you for taking the time and explain it!


#14

3 posts were split to a new topic: Problem with PokittoSim


#16

But your own project will stil be in its own folder, and that is set as build target. I did find this confusing too, but once you understand the directory structure it works quite well.