Undefined Symbols for Architecture when Installing QT Statically - c++

I'm trying to deploy a C++ QT application currently for Mac, and will move onto Windows soon, but I'm currently having problems.
I've downloaded the QT source to compile statically. I first cd to the downloaded source directory, then run ./configure -static, which runs fine, but does say WARNING: Unable to find file .device.vars, not sure if that's a problem or not. Then I try to run make sub-src, but it says No rule to make target 'sub-src'. Stop., so I try plain old make instead, which runs for a while, then gives me the error:
Undefined symbols for architecture x86_64:
"std::bad_alloc::bad_alloc()", referenced from:
qBadAlloc() in libQt5Core_debug.a(qglobal.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [qmleasing] Error 1
make[2]: *** [sub-qmleasing-make_first] Error 2
make[1]: *** [sub-tools-make_first] Error 2
make: *** [module-qtdeclarative-make_first] Error 2
Googling yields no results (from what I can see) :( How can I successfully statically build QT so I can deploy my application, or if statically building is no longer an option, how else can I deploy my app?
Thanks for any help in advance!
EDIT: Probably should add that I'm running OSX 10.8.3, 64 bit, QT dynamically installed under /Applications/QT, attempting to build this in a folder on my desktop.

Related

I cannot build the library for feature engineering written by c++

I tried to build this library, but couldn't make it.
This documentation for the library tells us how to install it.
After I run ./configure file, I run ./install file and got the following error.
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
make[2]: *** [libfeat_lib.dylib] Error 1
make[1]: *** [CMakeFiles/feat_lib.dir/all] Error 2
make: *** [all] Error 2
I made a new issue(there is more info for this error), but I cast this question also here to get some solutions.
How should I do to fix this?
Or, could you build this library?
My environment is here:
Mojave 10.14.6
Using Anaconda
Python 3.6.8
cmake version 3.15.5
GNU Make 3.81
Eigen 3.3.4
Shogun installed by homebrew
Thank you.

Vulkan SDK Version 1.1.85.0 linking on Kubuntu 18.10

I'm currently working on a game engine with vulkan.
I just wanted to try whether it compiles on linux, but I don't know how to link my Vulkan SDK libraries. I downloaded the "vulkansdk-linux-x86_64-1.1.85.0.tar.gz" from the LunarG homepage, but now I dont know what I should link under "target_link_libraries".
I tried to link the "libvulkan.so" from the lib folder, but it does not work.
Some help from you would be great, because I never worked with CMAKE on linux.
/usr/bin/ld: cannot find -lvulkan
collect2: error: ld returned 1 exit status
make[3]: *** [CMakeFiles/Untitled.dir/build.make:669: ../output_linux /Untitled] Error 1
make[2]: *** [CMakeFiles/Makefile2:73: CMakeFiles/Untitled.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:85: CMakeFiles/Untitled.dir/rule] Error 2
make: *** [Makefile:118: Untitled] Error 2
Thanks for help,
Marlon
The SDK's Linux Getting Started Guide found in your SDK tarball and at this link explains much of this. In fact, there's even a section called "Using Vulkan in CMake Projects" that shows how to use the FindVulkan CMake module. The SDK also contains numerous example programs, also built with CMake.

ld: library not found for -lrt

I am trying to run a project that was made and works for Ubuntu but on Mac OS. And when I am doing the make I got the following error:
ld: library not found for -lrt
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [consumer] Error 1
make[1]: *** [CMakeFiles/consumer.dir/all] Error 2
make: *** [all] Error 2
I can't see any library with that name at thole project.
Can anyone explain what it is and how to solve it?
On old Linux systems, several functions, such as clock_gettime, are documented to need -lrt for old versions of GNU libc. This is no more the case on recent glibc (after 2.17 from 2013).
So you can remove -lrt from your Makefile (and remove the thing from your cmake configuration thing generating it).
BTW, removing -lrt should also fit for recent Linux distributions.
PS. If you are paying support for your Linux system, you should ask your support for advice.

Porting Eigen3 library for Chrome's Portable Native Client (PNaCl) build error

So I have an AWS instance (the free tier one) running with Ubuntu 16.04. There I have installed nacl_sdk (which is working and has allowed me to access their sample sites with success) and naclports which I used to port opencv with which I had trouble with at first due to errors with zlib but got it working after I added i386 architecture and did sudo apt-get update on the system and installed necessary i386 programs.
Note I have depot_tools installed as well.
Now I am trying to install the eigen3 library for pnacl as well but I am getting an error and I am not sure how to understand it nor how exactly it gets built to fix it.
The command that I ported opencv with was
$ NACL_ARCH=pnacl make opencv
And I tried these two commands for building eigen3 with the same results (shown below)
$ NACL_ARCH=pnacl make eigen3
$ bin/webports install eigen3
This is the very end of terminal output (the entire message is very long):
######################################################################
Building eigen3
######################################################################
chdir /home/ubuntu/Work/ExternCode/naclports/src/out/build/eigen3/build_pnacl
make -j1 basicstuff cholesky determinant geo_transformations inverse
Scanning dependencies of target basicstuff
Building CXX object test/CMakeFiles/basicstuff.dir/basicstuff.cpp.o
Linking CXX executable basicstuff
Built target basicstuff
Scanning dependencies of target cholesky
[100%] Building CXX object test/CMakeFiles/cholesky.dir/cholesky.cpp.o
clang: error: unable to execute command: Killed
clang: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 3.7.0 (https://chromium.googlesource.com/a/native_client/pnacl-clang.git cf0dc7f6e6123dfa9b8834b56743315300b34e6c) (https://chromium.googlesource.com/a/native_client/pnacl-llvm.git baa63524b6b493ec2a6aa2c5193d9f25c0c33191)
Target: le32-unknown-nacl
Thread model: posix
clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
clang: note: diagnostic msg:
test/CMakeFiles/cholesky.dir/build.make:62: recipe for target 'test/CMakeFiles/cholesky.dir/cholesky.cpp.o' failed
make[3]: *** [test/CMakeFiles/cholesky.dir/cholesky.cpp.o] Error 254
CMakeFiles/Makefile2:14386: recipe for target 'test/CMakeFiles/cholesky.dir/all' failed
make[2]: *** [test/CMakeFiles/cholesky.dir/all] Error 2
CMakeFiles/Makefile2:14393: recipe for target 'test/CMakeFiles/cholesky.dir/rule' failed
make[1]: *** [test/CMakeFiles/cholesky.dir/rule] Error 2
Makefile:5128: recipe for target 'cholesky' failed
make: *** [cholesky] Error 2
webports: Build failed: 'eigen3' [pnacl/release]
clang: error: unable to execute command: Killed
It looks like your AWS instance killed clang, so perhaps it ran out of memory. The free tier gives 1 MiB of RAM and that might not be enough for what you're trying to do.

Compile OpenCV with Qt

Try compile. Get error. What his need?
[ 62%] Linking CXX shared library ....\bin\libopencv_superres310d.dll
Info: resolving vtable for cv::ParallelLoopBody by linking to __imp___ZTVN2cv16P
arallelLoopBodyE (auto-import)
Info: resolving vtable for cv::VideoCapture by linking to __imp___ZTVN2cv12Video
CaptureE (auto-import)
Creating library file: ....\lib\libopencv_superres310d.dll.a
c:/qt/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../mingw32/bin/ld.e
xe: warning: auto-importing has been activated without --enable-auto-import spec
ified on the command line.
This should work unless it involves constant data structures referencing symbols
from auto-imported DLLs.
Cannot export _ZN2cv3Mat3ptrIN12_GLOBAL__N_18_Point4fEEEPT_i: symbol not found
collect2: ld returned 1 exit status
mingw32-make[2]: * [bin/libopencv_superres310d.dll] Error 1
mingw32-make[1]: * [modules/superres/CMakeFiles/opencv_superres.dir/all] Error
2
mingw32-make: *** [all] Error 2
the first problem is your function with computer when you use opencv3. 1, opencv3. 1 Newest operating systems are supported: Windows 10 and OSX 10.11 (Visual Studio 2015 and XCode 7.1.1), the function can't use old computer try with old version opencv