This maybe a dumb question but can someone explain how to install Berkeley for SICstus on Windows? This is my last resort
The entire Oracle site for Berkeley DB seems broken, with many broken links. Also, there are no longer any installers, and only the latest version of the source code. Their site has been that way for over a year. I do not know what happened.
In the mean time, I was able to download the Windows installers by first creating a free Oracle Account, logging in, and then using the links https://download.oracle.com/otn/berkeley-db/db-6.2.38_64.msi and https://download.oracle.com/otn/berkeley-db/db-6.2.38_86.msi (found via the Wayback Machine). These versions should be compatible with SICStus Prolog 4.6 on Windows.
Related
The repository 'https://packagecloud.io/realm/realm/linuxmint serena Release' does not have a Release file.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.
We don't support Linux Mint at this time.
Edit regarding the comment:
We support Linux. It's the only platform we support in production.
We support Ubuntu 16.04, CentOS 6 & 7 (as indicated on the website). You can trivially create a docker container or VM using one of these base images on Linux Mint. We have a number of issues requesting Debian support, Fedora support, native Docker image, but none formally requesting Linux Mint support.
We obviously want to make the experience as painless as possible for everyone, but we also have to be very strategic when deciding to add a new platform as officially supported. Our CI has to build and test every single change on this new platform. We have to be able to support our users, etc. For example, we already have some bugs that only appear on CentOS 6, but not on 7 nor Ubuntu, so we want to make sure we stabilise things before moving ahead.
Feel free to submit a feature request to support Linux Mint. That way you will have a place where you can ask us directly about progress.
I want to create native C extensions to PostgreSQL 9.5 64bit on Windows.
I would love to build them with MinGW-w64 if that's possible, to get my build chain as clean as possible. But I am using the EnterpriseDB build of PostgreSQL, and MinGW build crashes it.
It would also be okay if there is another free compiler that I can use in this commercial project.
I know how to get this to work with Visual Studio 2003 Express but that doesn't seem to be a solution because of License issues.
Addition to the Main Answer
In the article linked below, you can read that it is possible to write C modules using Mingw or Cygwin, and some guidelines regarding the same. However I highly discourage doing so, mostly because of the reasons listed below, and also because that page mentions that those Windows configurations have special needs and receive lighter testing than most; expect a greater incidence of build problems
Here is the full excerpt on Unix-like Platform:
Unix-like Platforms
PGXS originated on Unix-like systems, and it is easy to use there. Unpack the extension module archive and run these commands in the resulting directory:
make PG_CONFIG=path_to_postgresql_installation/bin/pg_config
make PG_CONFIG=path_to_postgresql_installation/bin/pg_config install
You may omit the PG_CONFIG overrides if running type pg_config in your shell locates the correct PostgreSQL installation. Subject to the ownership of the existing PostgreSQL installation directories, the second command will often require root privileges. These instructions also apply when building for Windows using the MinGW or Cygwin compilers. However, those Windows configurations have special needs and receive lighter testing than most; expect a greater incidence of build problems.
A common mistake is to specify the PG_CONFIG=... on the command line before the 'make', which does not work as the value is then overridden by the inner workings of makefiles.
It's important to know that different compilers are not compatible with each other. Each of them have different runtime libraries. So it is very risky to compile extensions with a different compiler other than the one used to build the software you are using.
Postgresql's Windows build uses Visual Studio, same with EnterpriseDB (as far as I know). You will need to use the same compiler to build your extensions.
(For more information please refer: Building and Installing PostgreSQL Extension Modules and Postgres Enterprise Manager Installation Guide - EnterpriseDB (PDF))
This should explain why your extensions compiled with Mingw-w64 crash.
Luckily, there are two solutions you could choose:
Use Microsoft Visual Studio Community. It is completely free for individual developers, however there are restrictions for businesses. It should compile proper modules for your Postgresql build.
Rebuild the compleat Postgresql binary with Mingw-w64 or any other compiler of your choice (LLVM/Clang maybe), and then compile extensions with the same.
Doing either of these should help you. And this applies to all platforms, languages, and other softwares too. If you want to build extensions for a software, you need the same compiler, on the same platform used to build the software being used.
So, if you want to build extensions for Postgresql on Linux, you need the same compiler (probably GCC) to build extensions.
Happy coding =)
#Swith give you link to docs how to build PostgreSQL Extension Modules with Visual Studio and as you can read:
These instructions also apply when building for Windows using the MinGW or Cygwin compilers. However, those Windows configurations have special needs and receive lighter testing than most; expect a greater incidence of build problems.
A common mistake is to specify the PG_CONFIG=... on the command line before the 'make', which does not work as the value is then overridden by the inner workings of makefiles.
Did you check this ?
Also you can read other docs Building PostgreSQL With MinGW - maybe this help you more.
It would also be okay if there is another free compiler that I can use in this commercial project.
Did you check C compliers list on wiki - in particular, you can check Cygwin compiler - it's mentioned in docs above and it's free.
I know how to get this to work with Visual Studio 2003 Express but that doesn't seem to be a solution because of License issues.
What kind of issues do you see ?
Maybe check Visual Studio 2015 Community Edition (not Express) like #Simon Mourier suggest.
There is quite different licencing between Express and Community editions - I'm not sure about details, but as far I know Community Edition is more flexible for using in commercial projects:
For organizations:
An unlimited number of users within an organization can use Visual Studio Community for the following scenarios: in a classroom learning environment, for academic research, or for contributing to open source projects.
For all other usage scenarios:
In non-enterprise organizations, up to five users can use Visual Studio Community. In enterprise organizations (meaning those with >250 PCs or >$1 Million US Dollars in annual revenue), no use is permitted beyond the open source, academic research, and classroom learning environment scenarios described above.
For more information, see the Visual Studio Community license terms.
I have Developed an Windows Application in visual Studio 2010 by integrating Sql Server Express using prerequisites that works fine in all windows Operating System.But my application should also work other than Windows Operating Systems like MAC,LINUX . We didn't tested other than Windows Operating system.so we have an doubt weather MAC and LINUX Supports Windows Application with Sql Express.
Anything that depends on windows GUI will nor work under Mac or Linux without a lot of advance preparation. If cross platform use is your goal, you're probably starting with the wrong set of tools.
You do not. YOu goto a mirror and ask the person on the other side why he did not bother to check system requirements before choosing technologies.
.NET will in 2015 run on Mac and Linux (outside Mono, MS puts the whole stack offically on those platforms). But SQL Server - no. Sorry. Whoever choose that should learn to read system requirements. I you drop SQL Server (and allow alternatives) and can wait for .NET 5.0 - then yes, that is doable.
At the moment your only rel way to do that is via virtualization. WINE may work - not sure, but definitely not something I would support. Full windows virtualization will work but is similar to installing another OS.
If that was a professional development, someone obviously did not consider "knowing what I do" to be part of the job requirements. Always funny.
1) Linux, Rewrite in C++, using KDE or GNOME for front-end, use something like MySQL for back-end
2) OSx, Rewrite in objective C, using MySQL for back end
3) Windows, Keep front-end but change back-end to MySQL
note MySQL used on all SQL servers to keep some of the development the same.
you could rewrite front end using something like Java so it will work on all platforms but i'm not a java developer so i'm not sure what is involved.
My best recommendation is that you find a different line of work as you don't seem to understand the first thing about development...
It is my first time I develop on Mac OS.
Can anyone suggest a client side DB on Mac OS?
A Database that works the same on both Windows and MAC would be great...
I'm not a MAC developer, but will your requirement fit SQLite? Here's a tutorial on Getting Started.
I suggest mysql or postgresql.
I have came across a DB SQLite which seems to be a gud solution, am working on it :-
http://www.javaworkspace.com/connectdatabase/connectSQLite.do
With the Mac, you are entering a different universe. It is not possible to get something tha works the same in two different Universes. If you go with that requirement, then you are basically limited to what is available in the Windoze/Linux market (which is light years behind the Mac).
FileMaker is the best by far. Forget about writing code, in SQL or anything else. Everything, all functions, via a very mature GUI. The application is also Full GUI.
PostgreSQL is an abomination. Check SO yourself for problem posts. It is the latest incarnation of Ingres, which was horrible.
MySQL is not a server architecture, really.
I have to develop a patch for the linux kernel (2.6) for an university course I'm attending. I have to develop this patch with a friend of mine and we need to edit the same files on our computers (2-3 PCs). So, we want to use something like a collaborative editor and/or a version control system. The problem is that we never used something like that and that we cannot release our software as open source till we take the exam. Obviously, we're using linux. I'm here to ask you suggestions in order to manage our work in the best way.
Thank you
You'll definitely want to use a version control system.
Linux kernel itself is developed with Git version control system. You'll probably find tons of resources for how to use Git in kernel development.
If you are looking for more traditional version control software, the Subversion is a safe bet.
With both system you can host git or subversion on your computers, and nobody else could access it. This way you do not need to publish to code before you are ready.
There are also hosting services (for example Github) that provide hosting for vcs repositories. However, in case of github, if you want a private repository, then you need pay for it.
Ask your professor or university IT department what version control systems are installed on the computers. Use whatever they have installed, they're all pretty much serve the same purpose.
When I was in school the computers had CVS installed, so I set a repository for myself and team members in my home directory.
As Juha said, if you want to stay linux-y use the distributed version control system Git. I think you'll be able to use git without a central "head" repository server by pulling patches.
git does not require a git server. Simply having a shared network file folder is sufficient.
I personally use Subversion, I pay for a host (http://versionshelf.com) which gives me the option of creating and managing Subversion or Mercurial repositories through a web interface with ease.
I've not looked into Mercurial much but it seems to be very well supported and has lots of IDE integration and GUI clients (https://www.mercurial-scm.org/wiki/OtherTools).