Is it possible to use Kotlin Native on macOS 10.12? - opengl

I'm trying to port a simple Go macOS application over to Kotlin Native. After struggling with various errors I decided to take a step back, and have a look at the official examples provided with Kotlin Native.
I found a basic OpenGL example here:
https://github.com/JetBrains/kotlin-native/tree/master/samples/opengl
But so far I haven't been able to get this to compile.
I tried downloading the complete sources for Kotlin, but that wont build. I followed a few suggestions generated at build time, including the change to 'ignoreXcodeVersionCheck' and downloading prebuilt binaries for the compiler, but at this point I'm wondering if this just isn't supported by my environment? I do understand that this is all experimental.
I've attached a sample of errors below, but I'm not sure whats relevant.
Question: Does anyone else have this setup / environment working please? can I expect to get it working?
macos 10.12.4, kotlin 1.3.11, xcode 8.2.1
.konan/dependencies/clang-llvm-6.0.1-darwin-macos/include/c++/v1/cmath:551:28: error: expected a qualified name after 'typename'
_LIBCPP_CONSTEXPR typename enable_if<is_floating_point<_A1>::value, bool>::type
.konan/dependencies/clang-llvm-6.0.1-darwin-macos/include/c++/v1/cstddef:44:15: fatal error: 'stddef.h' file not found
#include_next <stddef.h>
A problem occurred evaluating root project 'kotlin-native-master'.
expected Xcode version 10.1, got 8.2.1, consider updating Xcode or use "ignoreXcodeVersionCheck" variable in konan.properties
kotlin-native-master/runtime/src/main/cpp/ObjCExportErrors.mm:73:23: error: no type or protocol named 'NSErrorUserInfoKey'
NSMutableDictionary<NSErrorUserInfoKey, id>* userInfo = [[NSMutableDictionary new] autorelease];
.konan/dependencies/clang-llvm-6.0.1-darwin-macos/include/c++/v1/cmath:313:9: error: no member named 'signbit' in the global namespace
using ::signbit;

I did manage to get a "hello world" working under the above environment, but I have given up with the OpenGL stuff. I cant update my environment currently, and I guess this issue doesn't affect many people. So I'm going to close it with this 'answer'.

Related

Error CS1061 'DeviceClient' does not contain a definition for 'SetInputMessageHandlerAsync'

I try to build IoT Edge module termo sensor from the Microsoft sources. When I build project, I got the error:
"Error CS1061 'DeviceClient' does not contain a definition for
'SetInputMessageHandlerAsync' and no accessible extension method
'SetInputMessageHandlerAsync' accepting a first argument of type
'DeviceClient' could be found (are you missing a using directive or an
assembly reference?)"
Then I created IoT Edge module from the scratch, compare assembly version and start building the module and everything was built ok.
I follow to the DeviceClient class from the VS 2017 IDE for the app which is built ok.
But when I follow to the DeviceClient class in the application with building problem - I saw, that there is no such method.
I compare assembly version - it's equal.
I found the problem. In the module from the scratch is used ModuleClient instead of DeviceClient in the Microsoft Sources. :-)

Where is "nvinfer.h" from tensorrt located?

I have been trying to compile a basic tensorRT project on a desktop host -for now the source is literally just the following:
#include <nvinfer.h>
class Logger : nvinfer1::public ILogger
{
} glogger;
Upon running make, though, I receive the following message:
fatal error: nvinfer.h: No such file or directory #include <nvinfer.h>
The error is correct, too - I used locate to try to find it, but there's nothing on my machine that matches. I followed the install instructions for desktop installation of TensorRT 2.1 as described here: https://developer.nvidia.com/nvidia-tensorrt-download
So my question is, does anyone know where nvinfer.h is supposed to be? In other words, am I missing a needed package that contains it, or did I miss something else that's essential?
Small addendum: one thing I noticed is that libgie1 is not installed, and it was not included as a debian with the provided TensorRT download like the other packages such as gie-dev were.
Before using locate, if you recently added new files is a good practice to run sudo updatedb, if the file is on the pc you should see it after.
Anyway googling a bit it looks like the header your looking for is NvInfer.h, caps matters.

Compiling boost 1.62/1.63 with zlib on windows

I know this probably looks like a duplicate, but it is actually a new issue I encountered. A ticket is opened on boost side, but no one is answering... (https://svn.boost.org/trac/boost/ticket/12505#comment:12)
My issue is simple: I am following the same steps as with any other boost version (by setting ZLIB_INCLUDE AND ZLIB_LIBPATH) but since 1.62 I get a strange error:
Name clash for '<pbin.v2\standalone\ac\msvc-14.0\debug\address-model-64\link-static\threading-multi>main.obj'
...
error: Tried to build the target twice, with property sets having
error: these incompatible properties:
error:
error: - <dll-path>... <library-path>... <xdll-path>...
I also tried to do it by configuring a custom user-config.jam but end up with the same error message.
For those who are interested, if you apply this diff (which will come along boost 1.64) then everything works fine: https://github.com/boostorg/build/commit/373fb6f76962caca9da109d4fe1e820af996326d?diff=unified.

Error cross-compiling qt5 project with mxe using function introduce in Qt5

I've tried to cross-compile a Qt5 project using mxe, which seems to work as long as I'm not using any functions introduced with the Qt5.
I'm using Ubuntu, the following steps lead to my problem:
1.
I followed the mxe-tutorial found here: http://mxe.cc/#tutorial to build qt5.
2.
I cross-compiled a small test project, which worked excellent up to the point where I used the function QTime:: int msecsSinceStartOfDay() const
I get the following error when running the make command:
main.cpp:10:57: error: 'class QTime' has no member named 'msecsSinceStartOfDay' QString msSinceStartOfDay = QString ("%1").arg(time.msecsSinceStartOfDay())
I can't figure out the problem, I think using a function introduced in Qt5 should work, because I'm using the qmake of Qt5.
Any help would be much appreciated.
Thank you for your time David

Can't compile mongodb c++ driver Linux Centos 5.6

After installing the MongoDB, on the server-side, I attempted to configure my client which, resides on a CentOS 5.6 OS using the C++ driver code, from the link below:
http://dl.mongodb.org/dl/cxx-driver/
The install went well ! I worked through the tutorials with no problems but, at this point, I need to build this in with my group's build process. When I attempt to compile, I receive the following error:
/usr/local/include/mongo/base/error_codes.h:36: error: expected identifier before numeric constant
/usr/local/include/mongo/base/error_codes.h:36: error: expected '}' before numeric constant
....
At this point, I said to myself there must be another #define that is colliding with this code. So, I ran the g++ ... -E command and found that, in /usr/include/X11/X.h, there is a #define BadValue.
This seems weird to me because I would not expect this to happen if the code was enclosed in some namespace which error_codes.h is enclosed in the mongo namespace. So, I searched my entire filesystem looking for something like using namespace mongo thinking that the global namespace was polluted but, this is not the case. I do not see any instances of this occurring and I am wondering - because both of these are third-party - how to resolve.
Thoughts?