I have a makefile which makes either executables or a shared library.
i.e. make -f unix.mak will create the executables and
make -f unix.mak libolsv will create the shared library.
Since these have to be made i.e both executable and the shared library, I need to make the executables and then a clean ( make -f unix.mak cleanobj) and then make the shared library.
But I want to avoid the intermediate step of make -f unix.mak clean; i.e. the user should not do it explicitly. Is there any way I can include it in the rule for the shared library.
This is what I have.
This is what I have tried:
and also this
and I get the following error in both the cases:
gcc: OdbcSvApp.o: No such file or directory
gcc: SvSocket.o: No such file or directory
gcc: SvStmt.o: No such file or directory
gcc: SvOdbcWrapper.o: No such file or directory
gcc: OdbcCallReader.o: No such file or directory
gcc: MgrCalls.o: No such file or directory
gcc: OdbcSvProxy.o: No such file or directory
make: *** [libolsv20.so] Error 1
So how do I get around this. I want to include the clean rule in $(DAEMON_SO)
Your "$(DAEMON_SO): OdbcSvApp.o $(SO) *.h" demands the presense of some .o file as a prerequisite. So "make" goes off and figures out how to make them. Once they exist, "make" runs the steps in this rule. Your first step is "-$(RM) *.o" (or equivalent). Then your second step barfs because there are no .o files.
I am new to Solaris and compilation using make files.
I have a code base which is organized into different folders. At the root folder is a master make file and in the sub directories, there are make files for that particular folder.
In the make files present in subdirectories, I am seeing... (2 Replies)
Hi all,
I want to know the entry point (default rule to be executed) in a makefile once all defined variables are evaluated. I do not have all: in my makefile and I give
"make" without any parameter in command line.
thanks........ (3 Replies)
I am trying to create a makefile to build a program and am getting the following error:
make -f tsimplex.mk
make: *** No rule to make target `/main/tsimplex_main.cpp', needed by `tsimplex_main.o'. Stop.
OPSYS = $(shell uname -s )
TARGET = tsimplex
ROOTDIR = ../../..
GTSDIR =... (1 Reply)
Hi everybody,
I have a Makefile where a single suffix rule is defined:
.SUFFIXES: .cpp
.cpp.o:
${CXX} ${CXXFLAGS} -c -o $@ $<
And I'd like to create another where an additional flag is added to compile in SMP. Right now, I have to do it like this:
interface-smp.o:... (2 Replies)
I have been trying to split up my src directory to clear out files that are not re-compiled very often. Now I have the following setup in my trunk,
trunk/bld
trunk/src/
trunk/src/src_server
trunk/makefile.linux
In the make file, I have compile rules
SOURCELOC = src
# compile src c++... (4 Replies)
Hello everybody,
Currently I'm learning how to build projects (C programming) with GNU make. I have a problem with one Makefile and I would appreciate if you could kindly give me a hand. Here is the environment:
OS: Redhat linux 5
compiler: gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-44)... (2 Replies)
I can't seem to get a rule in my Makefile to ever run... even if I change the rule to force make to re-enter the rule, or if I change the dependent files the rule depends on. Any ideas why the second rule is being ignored here?
#MAKEFILES = $(DIRS:%=$(ROOT)/%/Makefile)
#$(MAKEFILES):... (0 Replies)
I am hoping to find out if it is possible to use some sort of UNIX programming/scripting tools to solve a problem I have with reformatting email messages that are sent out of my IBM UNIX (AIX) system. I'm thinking some advanced awk/sed may work
I do not have the time or the ability to do this... (6 Replies)
What one finds challenging another finds simple...
(HPUX B.11.11)
I have a text file named something like 12345.dst that could look like this:
DOG
CAT
NONE
TEST
CAT
What I want to end up with is 12345.dst looking like this:
CAT
DOG
TEST
removing "NONE" should it be there and... (1 Reply)