wxWindows 2.4.2 configuration failed saying checking for toolkit... configure: error: Please specify at most one toolkit - c++

I am new to Linux environment, we have task to migrate a Windows wxWidgets(version 2.4.2) GUI application to Linux platform(RHEL8 or 8.3).The application is successful on Visual studio 2017&2019(Compiler MSVC++ 14.1 and 14.2) using the wxWindows-2.4.2(very old one). But when i try to build wxWindows2.4.2 on Linux( g++ (GCC) 8.3.1 20191121 (Red Hat 8.3.1-5))
../configure --with-gtk=2
at configuration stage process stopped saying
checking for toolkit... configure: error: Please specify at most one
toolkit (maybe some are cached in configarg.cache?)
I tried by installing "Development Tool" on Linux but getting same thing.
Source: https://github.com/wxWidgets/wxWidgets/archive/refs/tags/v2.4.2.zip

You can successfully run the configure phase by first performing dnf install gtk2-devel, and then configuring with ./configure --enable-gtk2.
However, (not surprisingly), wx 2.4.2 will not successfully build on RHEL8 (I tried); there will be a bunch of compilation errors. Those are not impossible to fix, but I wonder if that's worth the trouble – there probably would be runtime errors and/or misbehaving GUI components at the next stage.
While I understand your strategy of choosing the old wx version that the application is known to work with on Windows, it seems to be the hard way in this case.

Related

Build gcc on Windows with another gcc version

How to compile the newest gcc release under Windows 10? I have the latest mingw-w64available here which isn't fully c++17 compliant (I cannot use the filesystem library). A build called winlibs is also available but it is built on mingw-w64 8.0.0, so newer standards aren't fully supported. I downloaded the compressed file gcc-10.3.0.tar.gz.
What are the steps needed to do build any new (or old) gcc release on Windows natively without resorting to cygwin or msys or wsl?
Building GCC isn't trivial. It involves multiple steps, starting with having all the dependancies available.
You already had an older winlibs release, who don't you just get the latest winlibs build from http://winlibs.com/ ?
I do not understand what problem you are having with std::filesystem. Perhaps you are using a different mingw. Here is how I get mingw64
Download and install the latest g++ 64 bit compiler from
http://www.msys2.org/ Follow installation instructions on that page.
Note that you will have to stop and restart the MSYS2 command line
tool several times. To do this, close the window and then run
C:\msys64\msys2_shell. When pacman ( packet manager ) reports "there
is nothing to do" run it once more with the command pacman -S
mingw-w64-x86_64-toolchain

How to compile node.js for CentOS 6.10 (library issues)

I'm trying to get the newest version of node (12.1.0, at present) running on a CentOS 6.10 box. This is a problem because the standard CentOS binaries are out of date; e.g.:
./node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by ./node)
(a number of other references like this also appear)
when I try to install and run the binaries, and the g++ / c++ tools are out of date. But I've decided to try to compile from source, if I can get the tools properly aligned.
I've gotten an updated version of the compiler tools from the CERN devtools (http://linux.web.cern.ch/linux/devtoolset), and seemingly have them installed properly. What I've gotten from various places around the web is that I need to export pointers to these new libraries before doing the configure, like:
export CC=/opt/rh/devtoolset-2/root/usr/bin/gcc
export CPP=/opt/rh/devtoolset-2/root/usr/bin/cpp
export CXX=/opt/rh/devtoolset-2/root/usr/bin/c++
These do have the updated and sufficiently modern versions, e.g.,
/opt/rh/devtoolset-2/root/usr/bin/c++ --version
c++ (GCC) 4.8.2 20140120 (Red Hat 4.8.2-15)
But they don't seem to be getting into the configuration process:
[root#linux2 node-v12.1.0]# ./configure --prefix=/opt/node-12.1.0
WARNING: C++ compiler too old, need g++ 6.3.0 or clang++ 8.0.0 (CXX=/opt/rh/devtoolset-2/root/usr/bin/c++)
INFO: Using floating patch "tools/icu/patches/64/source/common/putil.cpp" from "tools/icu"
INFO: Using floating patch "tools/icu/patches/64/source/i18n/dtptngen.cpp" from "tools/icu"
WARNING: warnings were emitted in the configure phase
INFO: configure completed successfully
When I cross my fingers and try to make anyway, I get a whole bunch of compilation results and then a bunch of errors, omitted here (for now) for brevity.
Anyway: it's just not working. Can anyone see what's going on here, and how I can get things right? Thanks!
You need a newer devtoolset, 6 or 7 instead of 2. This link should help. And use scl like it suggests instead of setting env vars yourself.

Alignment trap , not handling instruction error when trying to build c++ library with arm processor

I'm trying to build the AWS SDK for C++ library on a cubietruck board.
My current software configuration is the following:
gcc 4.9.2
cmake 3.8.2
OS: Armbian_5.20_Cubietruck_Debian_jessie_3.4.112
kernel 3.4.112.sun7i
curl : 7.38
aws cpp SDK version :(1.1.46)
I tried to build the above c++ library by giving :
cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_ONLY="config;core;kinesis"
However the build fails and I receive the following error messages:
alignment trap: not handling instruction e8de677f at []
Unhandled fault :alignment exception (0x001) at 0x00bb674c
Bus error
I also tried the following:
1) I tried to build different versions of the library
2) I updated the curl from 7.38 to 7.51
3) I upgraded the os with sudo apt-get update, sudo apt-get upgrade
But the problem persisted. It seems to be a memory issue either leak or a bad dereferencing but could not find any useful info.
I checked the in /var/log/syslog but didn't get any new info.
Has anyone come across a similar issue. Since it'a library what can I do to get more info regarding the problem?

jenkins: gcc multiple versions for different projects on same system

In my Continuous Integration set-up in Jenkins, I have two Cpp projects. One project requires the latest G++ 4.8.2 (already installed in /usr/bin) but the other project requires an older version of G++ 4.6.3 (not yet installed). I am using make file for the build process. The OS running on the server is Linux Mint 17 Qiana.
Please advise a suitable method. Any help is appreciated.

Qt + VTK + MAC version based compilation and execution

I have successfully Built and compiled VTK with Qt on Mac osx 10.6.7. Then according to the requirements I changed configuration in CMAKE so that the target version is 10.5. I compiled VTK with Qt again and it was successful, with cones tutorials examples running. But whenever i compile my own application which is built using QVTK Widget i got this error
"Check with the developer to make sure
Application works with this version of MacOS
X. You may need to reinstall the
application ..."
Following is my CMAKE Configuration
BUILD_EXAMPLES checked
BUILD_SHARED_LIBS checked
CMAKE_OSX_ARCHITECTURES x86_64
CMAKE_OSX_DEPLOYMENT_TARGET 10.5
CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.5.sdk
VTK_USE_COCOA checked
VTK_USE_CARBON unchecked
VTK_USE_QT checked
VTK_USE_QVT_QTOPENGL checked
I have also ran following command on the terminal
export MACOSX_DEPLOYMENT_TARGET=10.5
Every thing in my application compiles with both QtCreator and XCode but does not execute by giving the error as mentioned above.
In the above if i change everything from 10.5 to 10.6 everything start working. But according to requirement i need to have it compatible with 10.5.
Can someone please let me know is there anything else i need to do? Am i missing something here?
Regards,
Rashid