GNUStep make problems - objective-c

I have installed the GNUStep gnustep-msys-system-0.29.0-setup.exe and gnustep-core-0.29.1-setup.exe on my WinXp Machine
I am able to compile problems. The documentation says that gnustep-core comes with the make utility but I am unable to locate it or use it !!

Assuming everything is installed correctly, jacekmigacz's answer may work.
However, an easier path might be to simply install Linux. That will give you the ability to trivially install GNUStep and LLVM.
Alternatively, grab the GNUStep Live CD (http://wiki.gnustep.org/index.php/GNUstep_Live_CD).

cd gnustep/core/make
./configure
make
make install

Related

GNUstep - fatal error: 'objc/objc.h' file not found on Ubuntu 20.04

I have the following problem:
I am on Ubuntu 20.04 and I am trying to set up GNUstep which is required for certain source binaries I want to build
(for the sake of completion, the program I want to build is called Advanced Rendering Toollḱit, information can be found here: https://cgg.mff.cuni.cz/ART/).
When building with the clang-9 compiler, after invoking the make command, I receive this error message:
fatal error: 'objc/objc.h' file not found
I should mention that I am still fairly new to Linux in general. What I did was installing GNUstep via
sudo apt-get install gnustep gnustep-devel
as advised on the website (http://wiki.gnustep.org/index.php/GNUstep_under_Ubuntu_Linux). It resulted in receiving the mentioned error.
/usr/include/GNUstep/Foundation/Foundation.h:31:9: fatal error: 'objc/objc.h' file not found
The next thing I tried was to download the provided configuration scripts from the same webpage and execute them. When I did, I received the following feedback:
checking whether objc really works... no. I don't seem to be able to use your Objective-C compiler to produce
working binaries! Please check your Objective-C compiler installation.
If you are using gcc-3.x make sure that your compiler's libgcc_s and libobjc
can be found by the dynamic linker - usually that requires you to play
with LD_LIBRARY_PATH or /etc/ld.so.conf.
Please refer to your compiler installation instructions for more help.
configure: error: The Objective-C compiler does not work or is not installed properly.
Maybe I am getting something wrong, however, my whole intention of installing GNUstep is to make Objective-C programming possible on a non-Apple machine. Therefore I do not understand why it is complaining about a non-working Objective-C compiler (by the way, I end up with the same result when using gcc and g++ as compilers).
I did do some research and I came across some StackOverflow posts, suggesting me to install libobjc2, but I suspect this to be depreciated with Ubuntu 20.04.
I honestly don't know what's wrong and I highly appreciate a little push in the right direction! Many thanks in advance for helping me!
Although I cannot tell what exactly the bug was in my case, I got some external help and together we came up with a solution that worked for me.
For debugging purposes, we created a test user account in my Ubuntu environment and repeated the whole process. It worked flawlessly.
We concluded that something must have been wrong locally with regard to my user account. I am sure there was something wrong with my environment variables, although I failed to clearly identify the bug (I am a Linux beginner). I chose the easy way out, backed up important files, deleted and re-created my root user account and then it worked. I hope, this may help any other who has the same problem.
#skaak, thank you for your help and suggestions!
As people are pointing, if you want to use clang to compile objective C programs in Ubuntu you have to install libobjc2 (mainstream project here) but it's currently not packaged in Ubuntu. It's possible that there was a package with the same or similar name, as you found out, but that was a different thing. This manual installation worked for me:
wget https://github.com/gnustep/libobjc2/archive/v2.0.tar.gz
tar xvzf v2.0.tar.gz
cd libobjc2-2.0
mkdir build
cd build
export CC=`which clang`
export CXX=`which clang++`
cmake ..
make
sudo make install

Why is which `executable software` and `software -v` refer to different things?

I was installing GNU make in an HPC cluster. There is pre-installed lower version make there.
And after I successfully configure and make the GNU make, I realized that another program is looking for gmake. So I just soft-link gmake to make. And add them to the $PATH.
The weird thing is, even if which gmake refers to the newly installed location, gmake -v showed the old version. I'd like to know how to fix it and in what order the system looks up the software.
Thank you.

How to configure cmake for msys2

I'm using external cmake with msys2, since cmake-gui provided by msys2 won't run (invalid win32 application). Now the problem is there's only so much I can configure using cmake-gui. I downloaded OpenALSoft today and when I ran make install it installed to C:\Program Files (x86)\. How do I configure external cmake to install into mingw32 or mingw64 depending on what's running? On top of that, I'm having a problem differentiating between PATH RPATH and PREFIX (and how those correspond to msys2 install structure), so if you could, please, clarify those too, I'd really appreciate that.
I always use this invocation to make sure the install directory is set to /mingw32 or /mingw64:
MSYS2_ARG_CONV_EXCL=- cmake . -G"MSYS Makefiles" -DCMAKE_INSTALL_PREFIX=$MINGW_PREFIX
And then when you want to install the built project, you must do this:
make install DESTDIR=/
All of this trickiness is due to the fact that CMake is a native Windows program that does not understand MSYS2-style paths like /, and MSYS2 has some automatic conversions of paths that happen when it detects you are running a native Windows program like CMake.
By the way, MSYS2's cmake-gui works for me, so maybe you should try reinstalling the CMake package in MSYS2 or something. However, I expect my answer to work for both the external CMake and the one in MSYS2.

How to install g++ in Cygwin?

I'm trying to compile a piece of MATLAB code containing a makefile. For the reason that I'm using Windows, I need to use Cygwin.
I have downloaded and installed Cygwin. When I tried to compile the code using make, there was an error that g++ is not found.
I searched for Cygwin package manager on the net and I installed apt-cyg but when I search for g++ using apt-cyg search g++, there is no result there!
I have updated package list (apt-cyg update) but finally I could not find c++ compiler for Cygwin!
How can I do it by apt-cyg package manager or any other way?
Try installing the package cygport. It will take care of many of the dependencies you need, including g++.
Finally I could find the answer in this link.
If one uses the MinGW installation file again, one can add some other packages.
I installed all Devel packages for MinGW and followed this tutorial which helped me to solve the problem.
If using apt-cyg and looking for g++ I would suggest to look up for the name gcc-g++ instead of just g++.
In this case the command would look like:
apt-cyg search gcc-g++ - for searching the package
or
apt-cyg install gcc-g++ - for installing the package
Hint:
Names of packages can be checked on the "Select Packages" page of the Cygwin installation program. There is no need to install, sometimes it is easier just to check the name of a package and cancel the installation.

How to install Nemerle on Mono

I can't find the solution
How to install Nemerle on Mono
I've got Nemerle Studio , But I want to try mono with it.
Maybe I will make something for Linux later, now I want to try it on windows.
I hear the latest builds don't work with Mono, due to some System.Reflection.Emit issues there.
You just need to get Nemerle binaries, they work fine on Mono, just don't compile.
Soon there will be official binary downloads on google code page.
Mono is able to compile Nemerle compiler.
You just need the latest Mono from master.
2.8.1 is a suitable version.