-
Notifications
You must be signed in to change notification settings - Fork 132
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
the trouble with __func__ #361
Comments
I can confirm that __func__ is breaking the VS2013 project. I haven't
investigated in any detail, but the current VS2013 project does compile
in Visual Studio 2017, community edition (free).
It's on my to-do list to update the projects to work with new boost,
which may change this behavior, but I may end up just dropping old
versions of visual studio.
…On 11/18/2018 8:10 AM, David Medine wrote:
I am using the VS2013 project (not CMake) to build LSL and it throws a
'*func* unidentified symbol' error. In common.h:
https://github.com/sccn/labstreaminglayer/blob/master/LSL/liblsl/src/common.h#L13-L27.
However in my VS project, this ifdef isn't activated. I don't know why
since I am using MSVC120 (which is less than 1600) but also, shouldn't
it be #define *func* *FUNCTION* a la the second answer here:
https://stackoverflow.com/questions/2281970/cross-platform-defining-define-for-macros-function-and-func
Replacing *func* with *FUNCTION* does compile and is probably more
meaningful than "Unknown function" which is the current preprocessor
value it gets.
Also, I am again frustrated by CMake because I unistalled the 38 gigs
that is Qt5 on my laptop in order to make room for the notorious
Windows 10 update that destroys computers with less than 45 gigs
storage space free and I can't make CMake generate projects for
building just liblsl without it---which should be a feature. This is a
separate issue, though.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<https://github.com/sccn/labstreaminglayer/issues/361>, or mute the
thread
<https://github.com/notifications/unsubscribe-auth/AFC33cnjMTnFSVm2mboZMO2MGA8z6joAks5uwYaFgaJpZM4YoAq1>.
|
You're right it should be. We should remove any mention of Qt from liblsl. There's a lot of qt-cmake boilerplate code and configuration shared across apps so it should exist somewhere all Apps can access. Moving it to labstreaminglayer/Apps/ should be ok. This isn't too difficult to do but it will require some testing, and some time. |
Strange, according to MSDN MSVC 2013 has |
@cboulay, yeah. I know how complicated that is. |
@tstenner A quick guess is that we wanted out-of-tree builds to have access to both the cmake-qt macros/configs and the liblsl cmake macros/configs, and we didn't want each app to have to include two different "support" cmake files, especially when the second depends on the first and the location of the first is not determined until after some configuration steps. I bet we can find the right incantation of cmake variables and if/else clauses to make this work. |
Does anyone have a reason/not/ to change #define __func__ "Unknown
function" to #define __func__ __FUNCTION__?
…On 18.11.2018 21:54, Chadwick Boulay wrote:
@tstenner <https://github.com/tstenner> A quick guess is that we
wanted out-of-tree builds to have access to both the cmake-qt
macros/configs and the liblsl cmake macros/configs, and we didn't want
each app to have to include two different "support" cmake files,
especially when the second depends on the first and the location of
the first is not determined until after some configuration steps. I
bet we can find the right incantation of cmake variables and if/else
clauses to make this work.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<https://github.com/sccn/labstreaminglayer/issues/361#issuecomment-439724983>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADch7vvSfvEsOzqz8YA7nEMfxQMfYDN-ks5uwckDgaJpZM4YoAq1>.
|
As long as it is embedded in an |
I also decided against it, because right now app developers can download the compiled liblsl package, insert the ~10 lines of boilerplate in their We could check in
I propose Regarding VS2013: should I add a CI job for it?
The simplest approach is to run CMake with the CMakeLists.txt in |
I am working on getting the (non CMAKE) Visual Studio 2013 project working, and I think adding
to lsl_c.h is the way to go. I'm adding this to my commit to tstenner-remove_old_boost pull request. |
I am using the VS2013 project (not CMake) to build LSL and it throws a '__func__ unidentified symbol' error. In common.h: https://github.com/sccn/labstreaminglayer/blob/master/LSL/liblsl/src/common.h#L13-L27.
However in my VS project, this ifdef isn't activated. I don't know why since I am using MSVC120 (which is less than 1600) but also, shouldn't it be #define __func__ __FUNCTION__ a la the second answer here:
https://stackoverflow.com/questions/2281970/cross-platform-defining-define-for-macros-function-and-func
Replacing __func__ with __FUNCTION__ does compile and is probably more meaningful than "Unknown function" which is the current preprocessor value it gets.
Also, I am again frustrated by CMake because I unistalled the 38 gigs that is Qt5 on my laptop in order to make room for the notorious Windows 10 update that destroys computers with less than 45 gigs storage space free and I can't make CMake generate projects for building just liblsl without it---which should be a feature. This is a separate issue, though.
The text was updated successfully, but these errors were encountered: