How to install spark on windows - sbt

I downloaded spark 1.0.2 and run on Cygwin
sbt/sbt assembly
but I got the error message:
Attempting to fetch sbt
You do not have curl or wget installed, please install sbt manually from http://www.scala-sbt.org/
But I already downloaded & installed sbt-0.13.5.msi from the given download-page. So what am I doing wrong?

sbt must use wget or curl to download additional dependencies, so you need to install these. On every single operating system other than windows these utilities usually come pre installed. Trying to get these to work on windows cygwin will be a pain, as with absalutely everything that isnt something to do with a monolithic GUI that costs a fortune.
I suggest if you wish to be at all productive in your future life you pick an operating system that works well for serious work. Windows only really works well for C# and MS office, serious computing? Big data? Hahahahaha, No!

Related

How to use QTermWidget with PyQt5?

I am trying to install https://github.com/lxqt/qtermwidget so that I can have a terminal widget to use with PyQt5. However, it does not seem to be possible to install without building myself, and when I try follow the instructions to build it myself, I get errors.
After doing cmake, I followed the instruction on qtermwidget's GitHub page to run sip-wheel inside the "pyqt" directory, but I get the error:
Querying qmake about your Qt installation...
sip-wheel: '12.11' is not a supported ABI version
What is the proper way to make "import QTermWidget" work inside python?
I got the same error when I used the sip-wheel to get qtermwidget Python binding. The problem is having different versions of PyQt and sip tools on the computer. I tested in a virtual machine with a clean version of Ubuntu, and I could build without problems. On my laptop, the solution was to create a virtual Python environment, install pyqt5, and sip tools again.

Installing ada libraries from github -- to keep getting file not found error

This is such a noddy question, but I'm struggling to particularly install libadalang which (to avoid X-Y problem) came from me having a working Gnatstudio, installing ada webserver, then I couldn't start Gnatstudio as it required libadalang.so. So I tried to install libadalang and
am currently getting failures of the form
libadalang-iterators-extensions.ads:29:29: file "langkit_support-symbols-precomputed.ads" not found
So I've spammed my /opt/GNAT/2020 with installing langkit everywhere that looks likely.
./lib/langkit_support
./lib/lib/langkit_support
./lib/include/langkit_support
./include/langkit_support
And still the installer for libadalang doesn't work.
Clearly something going on with paths here that I'm not getting. Can anyone provide any information on how paths are supposed to work as I need to install a number of other ada and SPARK-ada libraries from github and I want to do it correctly.
I think, the simplest way to restore GNAT Studio is to delete everything and reinstall. The GNAT Studio has its-own copy of libadalang/langkit. Look for
<install-path>/lib/gnatstudio/libadalang.so
<install-path>/lib/gnatstudio/liblangkit_support.so
When you install a developer version of libadalang you will get another copy of these files. They could have a different version.
I would suggest you to install GNAT Studio into a dedicated directory and make sure you launch it with a shell script from the bin (bin/gnatstudio). This way it shouldn't be affected by any other installed libraries.
Installing AWS shouldn't break GNAT Studio installation. If you know how to reproduce, please report to AdaCore.

Install net-snmp on RHEL without yum (or any other package managing software)

Currently I'm working on installing the net-snmp package on bunch of RHEL servers (versions vary from 5.x ~ 6.x).
To be specific, I need net-snmp.x86_64 and net-snmp-utils.x86_64 to create /etc/snmp/snmpd.conf file.
In normal cases, I'd just use yum to simply install them but the servers I'm working on has a firewall blocking all connections except the ones specified in the firewall.
I'm also not allowed to configure the firewall to enable yum to download the packages online due to security reasons (not sure why, though).
So I downloaded the net-snmp-5.8.tar.gz file to my PC and SCP'd it to the servers and tried to manually install it there.
But since I'm no expert on this, I just couldn't get them installed with the information online.
The files seem to be running but it doesn't create the snmpd.conf file that I need, or any other SNMP configs.
Is there a guide to installing these packages properly using the tar.gz file? Or is there something wrong here?
Thanks in advance :)
Have you run the snmpconf script? If I remember correctly it should have been installed along with net-snmp and it will generate an snmpd.conf file that is at least a good starting point if not the final one you'll want.

Deployment of statically linked Qt application backward compatibility

This is my first attempt at making a Qt Application work on different systems.
I have opted for static linking method.I have already compiled the sources of Qt 5.5 and compiled my application with the static Qt. The executable is working fine on my computer.
My operating system is Ubuntu 15.04. But when I tried to run the same executable on Ubuntu 14.04 then I ran into trouble. The key details of the error message are given below.
libstdc++.so.6 cxxabi_1.3.8 not found
I did a standard Google search and realised it was because I had a newer version of it on my machine, the machine where I had created the executable. There were so many different approaches to handle this problem. One of the solutions I saw involved shipping your own copy of libstdc++.so with the executable. But when I tried to copy the .so file to a pen drive, there was a warning saying that the file system does not support such files.
My question is , what am I doing wrong ? Also if I wanted to make the executable target Ubuntu 10.04, what would be the correct procedure handling the backward compatibility issues. I know that one method would be to install the same OS on my machine and then create the executable , is there any other way?
libstd++ is backward compatible but not forward compatible, which means you can run a program with a newer version of libstdc++ than the one you compiled it with but not vice-versa. This is what you experienced.
One way to deal with this issue is using older OS versions as the build machine. When you for example use Ubuntu 14.04 LTS, you'll get this list of compatible target systems.
The build system you're using will probably limit available compilers. On Ubuntu 14.04 you get GCC 4.8, which is good for most C++11 and packages for clang 3.6 are available, which will give you full C++14 support.
Targeting Ubuntu 10.04 will be challenging if you do not want to use a stone age compiler.
The idea of shipping libstdc++ will not help you much because you'll run into the same problem with libc.

qwt 6.1.0 on mac os 10.9 causes : Library not loaded: qwt.framework/Versions/6/qwt

I use qt-creator 5.2 and install qwt6.1.0 on the mac os 10.9. I follow the guide,and install the qwt6.1.0 success.
I use these cmd:
cd $QwtDir
qmake -spec macx-g++
make
sudo make install
sudo ln -s /usr/local/qwt-6.1.0/lib/qwt.framework/qwt /usr/lib/qwt
But when I compile the program, It occurs this problem:
dyld: Library not loaded: qwt.framework/Versions/6/qwt
what should I do?
I finally found the Solution: Just copy the qwt.framework to the Libary/Frameworks Folder and everything should work from now. I was looking for like 3 Hours for finding the right solution after reinstalling everything etc. Hope this helps.
From the Mac Developer Library:
Third-party frameworks can go in a number of different file-system locations, depending on certain factors.
Most public frameworks should be installed at the local level in /Library/Frameworks.
If your framework should only be used by a single user, you can install it in the ~/Library/Frameworks subdirectory of the current user; however, this option should be avoided if possible.
If they are to be used across a local area network, they can be installed in /Network/Library/Frameworks; however, this option should be avoided if possible.
For nearly all cases, installing your frameworks in /Library/Frameworks is the best choice. Frameworks in this location are discovered automatically by the compiler at compile time and the dynamic linker at runtime. Applications that link to frameworks in other directories, such as ~/Library/Frameworks or /Network/Library/Frameworks, must specify the exact path to the framework at build time so that the dynamic linker can find it. If the path changes (as it might for a user home directory), the dynamic linker may be unable to find the framework.

Resources