Comments (11)
/include/viface/viface.cpp needed explicitly #include <functional>
/examples/libtins/libtins.cpp needed explicitly #include <iomanip>
Everything compiles and works now :)
from libviface.
Update
libviface will compile under Linux Mint 18.1, cmake version 3.5.1 and make 4.1
IF
The libtins.cpp file under /examples/libtins has the following line added
#include<iomanip>
from libviface.
Update to the update
I THINK that the /include/viface/viface.cpp file needs to have the following added in order to get compilation working on my newer Debian system. I will try this when I get home.
#include <functional>
If this is the case, something something something about explicit includes maybe.
from libviface.
Thanks for the report.
Let's keep this open until we fix it in code.
Thanks
from libviface.
examples/libtins/libtins.cpp
needed explicitly#include <iomanip>
Added in e918b79 as it was clearly missing.
include/viface/viface.cpp
needed explicitly#include <functional>
There is no such file. Do you mean viface.hpp
? This is the public header, and I don't see any public API using anything from <functional>
. Did you mean include/viface/private/viface.hpp
?
What failed when you tried to build?
The only think I see is using function
is test/catch.hpp
, which is the testing framework https://github.com/catchorg/Catch2 that can be updated by just updating that file.
from libviface.
It's actually /include/viface/viface.hpp sorry, I didn't notice it was a header at first, I'm used to using .h even in c++. I'm bad, I know.
Line 56 of that file specifically failed with the error, ‘function’ in namespace ‘std’ does not name a template type
I believe I have a rather new version of gcc and that's why this happened. If you include functional in that specific header file it compiles. I'm not sure if this is the correct solution but I will get back to you on that as soon as I implement the library here in a second.
from libviface.
When I tried to use the library last night I encountered an error while loading shared library object. So I believe I still have an issue.
from libviface.
Update:
I suppose it would have helped if after I installed the library to my system I had run ldconfig to update the ld.so.cache
Testing now and everything compiles and works properly! So the two changes I mentioned above took care of everything. :)
If you want to replicate my environment, I'm using a Debian Testing based Linux distribution, specifically Kali Linux.
from libviface.
Last update, I promise.
I can confirm that the issue with needing to include functional is only present when using a newer compiler. On my Linux Mint system (using an older compiler) the only issue that needed corrected was the iomanip include.
Here's a detailed list of the compilers included by default in the different Debian distributions
https://packages.debian.org/search?keywords=g%2B%2B
My Kali Linux station is based on Debian Testing which comes with g++ 7.2.0
And here's a detailed list of the compilers included by default in Ubuntu based distributions
https://packages.ubuntu.com/search?keywords=g%2B%2B
My Linux Mint dev station is based on Ubuntu 16.04 which comes with g++ 5.3.1
from libviface.
This was fixed in e918b79 and in #5, sorry to keep this open so much.
from libviface.
from libviface.
Related Issues (5)
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 libviface.