I am starting off learning Prolog. I am on Ubuntu 9.10, can someone suggest an IDE to me ? Unfortunately SCITE doesn't support Prolog and I am trying to avoid Eclipse and NetBean.
I'm not an IDE user myself, but SWI-Prolog features one called XPCE and PCE Emacs. Install with sudo apt-get install swi-prolog-xpce, start by issuing xpce in a terminal window, then emacs. (with period) to get into the editor. Documentation at the SWI-Prolog website.
Prolog support for GNU Emacs is in the prolog-el package (no experience with that).
You might want to have a look at these Emacs modes:
Prolog Mode for Emacs Works well in Emacs24 (haven't tested with earlier versions)
The Ciao System Ciao offers a complete Prolog system, supporting ISO-Prolog, but its novel modular design allows both restricting and extending the language. Supports an Emacs mode as well.
And just for the records, if people looking for a Prolog editor or IDE running in Linux end up here: Three Eclipse Prolog plugins.
Prolog Development Tool (PDT)
Prolog Development Tools (ProDT)
SICStus Prolog IDE (SPIDER)
I've used PDT on Linux, but only for learning the basics of Prolog, and it worked quite well.
A while ago I was a happy user of SWI Prolog (sudo apt-get install swi-prolog).
Related
How do I avoid installing same programming languages both in WSL and Windows10?
I am thinking about using WSL as a dev workspace. However, I realized I will need to install Node.js, Python, create-react-app, and so on in WSL even though my windows 10 already have them installed.
It would be helpful if you could spare me some advice.
Thanks.
To some degree, it depends on what type of development you are doing. Given your example languages/tools, I'm going to assume that most of your development is platform agnostic, web-development, etc.
My recommendation is to go all-in on WSL and install the Linux versions of the tools you use (with some notable exceptions covered below).
Uninstalling the Windows versions is recommended, but not strictly necessary. I recommend uninstalling because I continue to see a number of questions across the Stack sites where it becomes apparent that the Windows version of Node or Python is getting called from inside WSL. It's likely that some tool, such as nvm or equivalent, attempted to prepend the Windows Node or Python location to the Linux path.
This causes problems, as the Windows versions Node and Python understand Windows paths and processes. When you call them from the Linux shell in WSL, the shell/OS uses, of course, the Linux versions. And Windows Python just won't understand something like /mnt/c/Projects. It needs C:\Projects. You can work around this with utilities such as wslpath (automatically installed in some WSL distributions, installable in all others), or you could just manually adjust the path. But ... why go through the hassle if you don't need to.
Just use the Linux versions, with the corresponding Linux paths and instructions. Most development tools, tutorials, instructions, etc. are going to "default" to the Linux doc. It will typically be more complete, more up-to-date, etc.
And, of course, the Linux command-line experience is (subjectively, sure) far-and-above better than PowerShell. Don't get me wrong, I like PowerShell, but I like PowerShell even better when I call it through WSL (powershell.exe or pwsh.exe), since I can take advantage of Linux niceties like less (or bat), jq, and many others.
Not to say there aren't WSL caveats that you have to get used to. Be prepared to run into a few snags here and there (lack of Systemd support, permissions, filesystems, inotify), but most everything has a workaround that you'll typically find here on Stack (Stack Overflow, Ask Ubuntu, Unix & Linux, and/or Super User) if you search.
And for those "notable exceptions" I mentioned, I recommend installing:
Windows Terminal (available in the Microsoft Store), which will provide an upgraded terminal experience for WSL.
The Windows version of Visual Studio Code -- I've seen a question from someone here who tried to install the Linux version. It's just not necessary. Microsoft has done a great job of integrating the Windows version of VSCode with WSL. Just install the "Remote Development" extension pack, which includes the "Remote - WSL" extension.
I'm trying to deploy OpenBTS with USRP B100 using UHD. When I installed GNU Radio by apt-get it installed UHD as well, but when I tried to use uhd_usrp_probe to find my usrp it didn't work. Then I uninstalled uhd with the command: "apt-get purge uhd uhd*" and GNU Radio got removed too. After this I installed uhd by the command:
apt-get install -t 'lsb release-cs' uhd from the Ettus repositories and so UHD started to work properly. So I'm in doubt if I can go on the deploy without GNU Radio. So does OpenBTS needs GNU Radio to work?
So to answer the question you ask in the last sentence: "does OpenBTS need GNURadio to work" - the answer is no. Modern OpenBTS can use UHD directly to talk to various USRP's (including the B100), and does not require GNURadio.
To provide some historical context here: OpenBTS was never built to use GNURadio for any of the signal processing portions of its internals, however, back in the day OpenBTS relied on the libusrp1/libusrp2 libraries that were present within the GNURadio repository to talk to USRP1's and USRP2's respectively. I believe this mechanism is still supported within OpenBTS, however libusrp1/libusrp2 no longer exist in modern releases of GNURadio. In addition, they can not be used to control a B100 (libusrp1 only supports the USRP1, and libusrp2 only supports the USRP2, both products that are considered rather old at this point, and the USRP2 in particular is no longer sold). Point being, the only way OpenBTS can use GNURadio is with a very old release of GNURadio (i.e. one unlikely to be installed in any modern distribution). And more to the point, it would not use GNURadio to talk to a B100.
OpenBTS comes with a very complex build and installation system, which will install most of the components it needs itself.
Your Distro's GNU Radio will not be required. Also, now that you use the correct (new) version of UHD, GNU Radio would have to be built and linked against exactly that version of UHD (and not the one that the Distro was using when it built GNU Radio).
My laptop is working in windows 7 OS. I want to start working with Python, But i don't have Linux in my system. Can you suggest any IDE which will help me to start my Python scripting under windows OS???
You can download the Anaconda Python packages and run them with Komodo Edit IDE. Other option is to use eclipse, which is quite bulky. A comprehensive summary is available at Choosing Python IDE
I tried to install mono and monodevelop on centOS 6.3.
After many hours I was able to install mono but failed with monodevelop.
I'm really astonished how difficult and time consuming it is, to get a recent mono/monodevelop version on linux installed.
Is there nobody willing to write and maintain an install/compile tutorial to get the most recent mono/monodevelop/monodata/ASP.NET MVC/... version on the major linux distributions (Centos, Ubuntu, Suse, Debian) installed?
I think many people developing on Windows (with limited linux knowledge) would like to start using mono, if the boarding hurdle would be somehow lower.
It may be the most important to make Mono more used and more visible.
Please, write a tested tutorial (script) for compiling mono/monodevelop.
Thank you!
I have created a project on Open Build Service, which produces builds of the latest MonoDevelop 4.0.10 for Debian, Ubuntu, CentOS, and Fedora.
see https://build.opensuse.org/project/show/home:tpokorra:mono
For installation instructions with apt-get or yum, see:
http://software.opensuse.org/download/package?project=home:tpokorra:mono&package=monodevelop-opt
I hope this will increase the usage of MonoDevelop on Linux Desktop environments.
Monodevelop 4.
If you use any *buntu. Check this.
"You can open up the terminal and install it via the following:
1. sudo add-apt-repository ppa:keks9n/monodevelop-latest
2. sudo apt-get update
3. sudo apt-get install monodevelop-latest"
http://mono-d.alexanderbothe.com/?p=101
Xamarin should be doing a better job at publishing the linux packages in a one-click manner. I don't care what linux distro (SuSE, RHEL, CentOS, Ubuntu etc) - just pick any one as the supported one and publish for it. It seemed that it used to be SuSE but even that has old packages as seen within Zypper/YaST.
Update Mono framework
Having said that, to update the Mono framework itself, without letting go of the package managers try this. This will work as long as the project dutifully publishes the RPMs. You don't want to build from source since it's a more fickle process and the setup distracts from your real objective (i.e. develop).
Obviously, please replace the URL below to what will be latest by the time you're reading this.
mkdir mono-rpms
cd mono-rpms
wget --reject "index.html*" -nd -r -e robots=off --no-parent http://download.mono-project.com/archive/3.2.3/linux/x64/
sudo zypper install *rpm
Update MonoDevelop (the IDE)
Timotheus Pokorra's answer indicates he's filling in some of the usability void left by Xamarin (Thanks Timotheus!!). You can install MonoDevelop via
http://software.opensuse.org/download/package?project=home:tpokorra:mono&package=monodevelop-opt
Note that on SuSE I get the error
Problem: nothing provides liberation-mono-fonts needed by mono-libgdiplus-opt-3.0.12-7.1.x86_64
Solution 1: do not install monodevelop-opt-4.0.12-5.2.x86_64
Solution 2: break mono-libgdiplus-opt-3.0.12-7.1.x86_64 by ignoring some of its dependencies
I (very reluctantly) selected to break the dependency. Note that I already had liberation-fonts (via sudo zypper install liberation-fonts). I don't know if its the same/different as liberation-mono-fonts. Anyway, hope Timotheus fixes it when he has a moment.
I'm not sure if you've already seen this, but this may help:
http://www.mono-project.com/Parallel_Mono_Environments
The most common problem that new developers have when coming to Linux from systems like Windows is not properly setting up their environment variables and so when they do the standard ./configure && make && make install routine, when it involves a number of source packages (like Mono does), any package that depends on the core package won't pick up the correct location for that base package.
Your question really doesn't explain what parts you found confusing or difficult so it's hard to address those issues.
For people unfamiliar with setting up Linux systems, it may be easier if you just go with a system like Ubuntu which has fairly recent pre-built packages (although not the latest - I don't think any Linux system keeps up with Mono releases) rather than wrestling with the learning curve of how to build everything yourself.
It is confirmed that in the near future Xamarin will support Linux and provide binaries (mono and mainline applications) for Debian and Centos derivatives, and their are already packages for Debian and Centos derivatives for technical preview. So cheers and no more pain of compiling and even parallel mono installaions.It can not get more easy than this. Check here
Has anyone gotten VisualWorks running under OpenBSD? It's not an officially supported platform, but one of the Cincom guys was telling me that it should be able to run under a linux compatibility mode. How did you set it up?
I already have Squeak running without a problem, so I'm not looking for an alternative. I specifically need to run VisualWorks's Web Velocity for a project.
Thanks,
if you're wondering about setting up linux compatibility mode and you're running the GENERIC kernel:
# sysctl kern.emul.linux=1
to enable at boot uncomment the kern.emul.linux=1 line in /etc/sysctl.conf
See the OpenBSD FAQ, specifically section 9.4 - Running Linux Binaries on OpenBSD.
Typically there are more steps needed then just kern.emul.linux=1 unless you have statically linked (i.e. completely stand-alone) binaries. The good news is that packages exist that contain Linux libs, and they are easy to install. This is all detailed in the above link.