Comments (22)
Not sure why you're getting that. The function exists in the latest version of the OS. Also, if you want pthreads I recommend using the latest master and not an old version of the OS.
Make the OS editable, then build services from that. It should work.
from includeos.
Still no luck. I pulled down the latest master and built it but none of the versions got updated. Maybe I am doing something wrong....not quite sure. Could it be issue that the program I am using is in C and not C++??
The error is still the same above so maybe I did not update it like I thought I did...
from includeos.
Hey, have you made the OS editable? If so, then you should try adding this to the conanfile.py in the root folder and then re-initializing the build folder completely:
self.requires("musl/1.1.24@includeos/latest")
Just place it with the other dependencies, maybe between libcxx and libgcc, line 40.
Once you have built the OS with the new dependency, then you need to update the build folder for your service as well. It should build now, and you should have threads with parallellism. Hope this helps.
This is just a temporary solution until we have made a new release with threads support.
from includeos.
That did the trick. Now it is saying there is undefined reference to
syscall_SYS_clock_nanosleep in musl 1.1.24 :/
from includeos.
That's because the OS is not in editable mode, maybe. I don't really know how to perfectly get it working. Have you used conan editable ..
?
from includeos.
I believe it is in editable mode. Following what you gave me, I was able to update musl from 1.1.18 to 1.1.24 and that is what it said it build with. I put it in editable mode following the steps in the wiki / built it after adding musl 1.1.24 as a dependency and have just left it in editable mode
Actually i think I see the issue...it is checking for the code in a /home/gonzo.....instead of my home directory
from includeos.
Here were my steps. I believe the issue is that musl 1.1.24 got "installed" somewhere completely random / doesn't exist.
inside IncludeOS dir I made a build folder, in /etc/layout.txt I didn't change anything since build_dir was already pointing to build. Then I did:
$ conan editable add . includeos/
$ (conan inspect -a version . | cut -d " " -f 2)@includeos/latest --layout=etc/layout.txt
Then I did conan editable list to verify and the output was good. Then I ran...
$ cd includeos
$ conan install -if build . -pr clang-6.0-linux-x86_64
$ conan build -bf build .
That was where I stopped...any mistakes in what I did?
from includeos.
I don't see you building the OS anywhere. Try this instead:
Go into the IncludeOS folder.
mkdir -p build
cd build
conan install .. -pr clang-6.0-linux-x86_64
source activate.sh
cmake ..
make -j4
That should build the OS itself, and it should be automatically picked up by any services you build now.
from includeos.
/home/gonzo isn't a thing on my pc, so I'm not quite sure it is checking there? What would make it look there when running
cmake --build .
from includeos.
It's not using your editable OS built from source. Try changing your editable from to version 9.9.9?
You can see what you currently use with conan editable list
.
For comparison, here is what I have:
includeos/0.15.0@includeos/latest
Path: /home/gonzo/github/includeos/IncludeOS
Layout: /home/gonzo/github/includeos/IncludeOS/etc/layout.txt
Note that once you have done this you have to rerun conan in your services build folder:
mkdir -p build && cd build
conan install .. -pr clang-6.0-linux-x86_64
source activate.sh
cmake ..
make -j4
from includeos.
I must be changing the wrong thing...my 'conan editable list' is:
includeos/0.15.1-119@includeos/latest Path: /home/tyler/includeos Layout: /home/tyler/includeos/etc/layout.txt
I am still getting the same error?? I must not be setting the editable version correctly to be used?
from includeos.
It looks OK to me. I think you are just seeing paths from the PC that build the package originally, but it just looks to me like it's not picking up your editable OS built from source.
The editable list you posted looks OK. Have you initialized the build folder again after fixing the editable?
from includeos.
I have, but to make sure I am doing it correctly I am doing this...
I made the OS editable, did everything you said above, rebuild it with the commands above and then i try to apply it to my project I am trying to build so I:
cd back to home and do this....
'mkdir -p radix && cd radix' (then i paste my .c file in there with the CMakeLists.txt and conanfile.txt)
'mkdir -p build && cd build'
'conan install .. -pr clang-6.0-linux-x86_64'
'source activate'
'cmake ..'
'cmake --build .'
and this produces :
When I put in musl 1.1.24 in conanfile.py, it downloaded it, but i like it downloaded / mapped it somewhere that doesn't exist? is there a way to verify that? the src code file doesn't even exist in my path where musl 1.1.24 lives
from includeos.
Don't pay too much attention to musl here. It's working. You need to get the OS editable.
The thing about nanosleep is that it's implemented in the OS, so it can't be anything wrong with the musl package. It just confirms that it works. It also confirms that the OS is not being activated as an editable, and I don't know why.
So, what to try here? Have you tried editing the editable and increasing the version number? 9.9.9 would make your version higher than the package.
from includeos.
Modified the version to 9.9.9....running
conan editable list
confirmed that but the error remains the same, sadly
For what it is worth as well, I cannot build the hello_world example using the editable OS
from includeos.
The problem is... me :) You need to checkout one of my branches. My bad. It's not master, master is old and irrelevant.
Do this:
git remote add gonzo [email protected]:fwsGonzo/IncludeOS.git
git fetch gonzo
git checkout -b simpler_clone gonzo/simpler_clone
Now, go into the build folder, build the OS, and then simply build your service.
Sorry for the confusion. I don't think about these things. I should warn you that SMP has some concurrency issues. I'm working on solving that, but I have no ETA.
This is my test service for threads with concurrency: https://github.com/fwsGonzo/smp_bench
Good luck
from includeos.
Running into an issue now where it is saying there is multiple declarations LOL
I am troubleshooting the issue now, but anything come to mind off the top of your head?
from includeos.
Can you post the errors you are getting?
from includeos.
I checked out your smp branch and then rebuilt the OS and rebuilt my service and I get that error
And in the event you are curious as to what I am building, I am building the Splash-2 benchmarks to demonstrate the speed enhancement IncludeOS provides :D
from includeos.
Did you try building musl manually with --build? It looks like it still has __clone which is not the right package.
You can build musl with conan install .. -pr clang-6.0-linux-x86_64 --build musl
from includeos.
Worked like a charm! Thank you for all your help during that! That was awesome stuff getting to plug and play until it was working. Again, thank you for all your help!!
from includeos.
No problem. If you want to use SMP (multiprocessing) then there's a work-around for it.
Go into src/musl/futex.cpp and change to this:
while (*uaddr == val) asm("pause"); // __thread_yield();
It will make cooperative threads stop working, but it will make multi-processing stable.
from includeos.
Related Issues (20)
- Possible data race in src/posix/pthread.cpp HOT 4
- Writing grub.iso to external hard drive HOT 10
- The document should be updated
- Hello World Example fails to run with the error: "[Program_Failure] process exited" HOT 1
- Tweak to dot org instruction HOT 1
- demo examples fail to build on Ubuntu 20.04 HOT 1
- Ubuntu 20.04 fails to build Hello HOT 6
- Use IncludeOS as operating system HOT 1
- macOS cannot run 'boot hello'!
- Conan build everything from source HOT 4
- Is this maintained? HOT 1
- there is an alternative to include os HOT 1
- Bintray is deprecated! HOT 5
- Error duirng "conan install ../hello_world -pr <your_conan_profile>" HOT 5
- Remote includeos cant be found. HOT 7
- Error 410: Gone when building hello_world HOT 3
- Dependency not found (llvm@6)
- Conan Misconfiguration HOT 3
- Setting up things on Ubuntu 22.04 HOT 1
- Nix support in CI
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from includeos.