Comments (20)
Right place ;)
Sadly, I don't have a mac to test this on.
The problem is that the install-sh
command does not exist on your mac.
Could you figure out if you have install
(i.e. do which install
)
Alternatively you can install coreutils
brew install coretutils
that should fix this (hopefully).
from fdict.
Thank you for your reply and I am really sorry for replying back only now.
I found install
as in /usr/bin/install
and also installed coreutils
but the problem persists.
I shall try it on Ubuntu and keep you posted.
Regards,
dT
from fdict.
Thank you for your reply and I am really sorry for replying back only now.
I foundinstall
as in/usr/bin/install
and also installedcoreutils
but the problem persists.
I shall try it on Ubuntu and keep you posted.
Regards,
dT
Ok, could yo uthen do:
make INSTALL=install
I think this would work?
from fdict.
from fdict.
Ok, could you try and apply this patch:
diff --git a/Makefile.project b/Makefile.project
index 29dfb07..0c2b8fa 100644
--- a/Makefile.project
+++ b/Makefile.project
@@ -43,17 +43,18 @@ endif
.NOTPARALLEL: install-mod
smeka-install: install-mod
install-mod: $(F_MODS)
- $(INSTALL) -m $(_OCT_rwrr) -t $(DESTDIR)$(FMOD_DIR) $(F_MODS)
+ $(INSTALL) -m $(_OCT_rwrxrx) -d $(DESTDIR)$(FMOD_DIR)
+ $(INSTALL) -m $(_OCT_rwrr) $(F_MODS) $(DESTDIR)$(FMOD_DIR)
.NOTPARALLEL: install-settings
smeka-install: install-settings
-install-settings: settings.bash
- $(INSTALL) -m $(_OCT_rwrr) -t $(DESTDIR)$(BIN_DIR) settings.bash
+install-settings: settings.bash smeka-install-init-dir
+ $(INSTALL) -m $(_OCT_rwrr) settings.bash $(DESTDIR)$(BIN_DIR)
.NOTPARALLEL: install-header
smeka-install: install-header
-install-header: fdict.inc
- $(INSTALL) -m $(_OCT_rwrr) -t $(DESTDIR)$(INC_DIR) fdict.inc
+install-header: fdict.inc smeka-install-init-dir
+ $(INSTALL) -m $(_OCT_rwrr) fdict.inc $(DESTDIR)$(INC_DIR)
# Force the deletion of both libraries
diff --git a/smeka/Makefile.install b/smeka/Makefile.install
index 997e976..2fbf4c8 100644
--- a/smeka/Makefile.install
+++ b/smeka/Makefile.install
@@ -21,16 +21,14 @@ smeka-install-lib: smeka-install-init-dir
# Note that the x flag is common practice for libraries
# although it may surprise first-time users.
ifneq ($(LIBRARIES),)
- $(INSTALL) -m $(_OCT_rwxrxrx) -t $(DESTDIR)$(LIB_DIR) $(LIBRARIES)
+ $(INSTALL) -m $(_OCT_rwxrxrx) $(LIBRARIES) $(DESTDIR)$(LIB_DIR)
endif
.PHONY: smeka-install-init-dir
.NOTPARALLEL: smeka-install-init-dir
smeka-install-init-dir:
- -$(MKDIR) $(MKDIR_FLAG_PARENT) $(DESTDIR)$(INC_DIR)
- -$(MKDIR) $(MKDIR_FLAG_PARENT) $(DESTDIR)$(LIB_DIR)
- -$(MKDIR) $(MKDIR_FLAG_PARENT) $(DESTDIR)$(BIN_DIR)
+ $(INSTALL) -m $(_OCT_rwxrxrx) -d $(DESTDIR)$(LIB_DIR) $(DESTDIR)$(INC_DIR) $(DESTDIR)$(BIN_DIR)
# Issuing uninstall will forcefully remove the installation directory
Then do make INSTALL=install
?
from fdict.
from fdict.
No worries, good to have somebody with a mac testing ;)
from fdict.
@kyrtle ping, did it work? :)
from fdict.
I'll close assuming it worked out!
from fdict.
+install-settings: settings.bash smeka-install-init-dir + $(INSTALL) -m $(_OCT_rwrr) settings.bash $(DESTDIR)$(BIN_DIR)
Hello, I'm on MacOS Monterey Version: 12.4 (21F79). I'm having the issue with make PREFIX=path/to/fdict install. I get the following error:
install-sh -m 755 -t /Users/sankalp/Desktop/Semester4/MPS/Beleg/collisionV1/supplementary/fdict/lib libfdict.a
make: install-sh: No such file or directory
make: *** [smeka-install-lib] Error 1
I'm not able to figure out where to add the patch. Could you please help?
Thanking you
Best regards,
Sankalp
from fdict.
+install-settings: settings.bash smeka-install-init-dir + $(INSTALL) -m $(_OCT_rwrr) settings.bash $(DESTDIR)$(BIN_DIR)Hello, I'm on MacOS Monterey Version: 12.4 (21F79). I'm having the issue with make PREFIX=path/to/fdict install. I get the following error: install-sh -m 755 -t /Users/sankalp/Desktop/Semester4/MPS/Beleg/collisionV1/supplementary/fdict/lib libfdict.a make: install-sh: No such file or directory make: *** [smeka-install-lib] Error 1
I'm not able to figure out where to add the patch. Could you please help?
Thanking you
Did you try with:
make INSTALL="install -p" ...
or?
Also, try and return the value of which install
and which install-sh
, thanks.
from fdict.
So, this is what I did. From inside the 'fdict' folder, I ran 'make' in the terminal. This is what I get:
sankalp@jenambp fdict % make
VPATH="." ./setup.sh --default
VPATH="." ./src/variable.sh
gfortran -E -P -x c -I./src -I./src -I. ./src/variable_pp.F90 | sed -f ./src/filter.sed > variable.f90
gfortran -c -o variable.o -g variable.f90
VPATH="." ./src/dictionary.sh
gfortran -E -P -x c -I./src -I./src -I. ./src/dictionary_pp.F90 | sed -f ./src/filter.sed > dictionary.f90
gfortran -c -o dictionary.o -g dictionary.f90
ar rv libfdict.a variable.o dictionary.o
ar: creating archive libfdict.a
a - variable.o
a - dictionary.o
ranlib libfdict.a
Then, with your suggestion. I get the following:
sankalp@jenambp fdict % make INSTALL="install -p"
make: Nothing to be done for default'. (data_sc_env) sankalp@jenambp fdict % make INSTALL="install -p" ... make: *** No rule to make target
...'. Stop.
Here are the return values you asked for:
(data_sc_env) sankalp@jenambp fdict % which install
/usr/bin/install
(data_sc_env) sankalp@jenambp fdict % which install-sh
install-sh not found
from fdict.
So, this is what I did. From inside the 'fdict' folder, I ran 'make' in the terminal. This is what I get: sankalp@jenambp fdict % make VPATH="." ./setup.sh --default VPATH="." ./src/variable.sh gfortran -E -P -x c -I./src -I./src -I. ./src/variable_pp.F90 | sed -f ./src/filter.sed > variable.f90 gfortran -c -o variable.o -g variable.f90 VPATH="." ./src/dictionary.sh gfortran -E -P -x c -I./src -I./src -I. ./src/dictionary_pp.F90 | sed -f ./src/filter.sed > dictionary.f90 gfortran -c -o dictionary.o -g dictionary.f90 ar rv libfdict.a variable.o dictionary.o ar: creating archive libfdict.a a - variable.o a - dictionary.o ranlib libfdict.a
Then, with your suggestion. I get the following: sankalp@jenambp fdict % make INSTALL="install -p" make: Nothing to be done for
default'. (data_sc_env) sankalp@jenambp fdict % make INSTALL="install -p" ... make: *** No rule to make target
...'. Stop.Here are the return values you asked for: (data_sc_env) sankalp@jenambp fdict % which install /usr/bin/install (data_sc_env) sankalp@jenambp fdict % which install-sh install-sh not found
My gfortran version:
sankalp@jenambp fdict % gfortran --version
GNU Fortran (Homebrew GCC 11.3.0_1) 11.3.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
from fdict.
Sorry, I should have been more clear. When just doing make INSTALL="..."
it will only try to build fdict
, not install it.
So it should be:
make INSTALL="install -p" PREFIX=... install
from fdict.
I tried this and I got the error install: illegal option -- t
Here's, what I did:
(data_sc_env) sankalp@jenambp fdict % make
VPATH="." ./setup.sh --default
VPATH="." ./src/variable.sh
gfortran -E -P -x c -I./src -I./src -I. ./src/variable_pp.F90 | sed -f ./src/filter.sed > variable.f90
gfortran -c -o variable.o -g variable.f90
VPATH="." ./src/dictionary.sh
gfortran -E -P -x c -I./src -I./src -I. ./src/dictionary_pp.F90 | sed -f ./src/filter.sed > dictionary.f90
gfortran -c -o dictionary.o -g dictionary.f90
ar rv libfdict.a variable.o dictionary.o
ar: creating archive libfdict.a
a - variable.o
a - dictionary.o
ranlib libfdict.a
(data_sc_env) sankalp@jenambp fdict % make INSTALL="install -p" PREFIX=... install
mkdir -p .../include
mkdir -p .../lib
mkdir -p .../bin
install -p -m 755 -t .../lib libfdict.a
install: illegal option -- t
usage: install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
[-o owner] file1 file2
install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
[-o owner] file1 ... fileN directory
install -d [-v] [-g group] [-m mode] [-o owner] directory ...
make: *** [smeka-install-lib] Error 64
from fdict.
Could you try the patch in #24 (comment)
I.e. copy it to a file, then do:
cd <root-dir of fdict>
patch -p 1 < file
from fdict.
I think the patch worked.
% make INSTALL="install -p" PREFIX=parent install
install -p -m 755 -d parent/lib parent/include parent/bin
install: the -d and -C options may not be specified together
install -p -m 755 libfdict.a parent/lib
install -p -m 755 -d parent/include
install: the -d and -C options may not be specified together
install -p -m 644 variable.mod dictionary.mod parent/include
install -p -m 644 settings.bash parent/bin
install -p -m 644 fdict.inc parent/include
mkdir -p parent/lib/pkgconfig
sed "s:@PREFIX@:parent:g;\
s:@PROJECT_NAME@:fdict:g;\
s:@PROJECT_VERSION@:0.8.1:g;\
s:@INC_DIR@:parent/include:g;\
s:@LIB_DIR@:parent/lib:g;\
s:@BIN_DIR@:parent/bin:g" \
./fdict.pc.in > parent/lib/pkgconfig/fdict.pc
Now, I need to add the path to the folder parent
to my program's Makefile, right?
from fdict.
Great! Yes, you need your own program that uses fdict to be able to locate the library and the module files, just like ordinary fortran modules/libraries.
The exact method depends on how you have created your makefile. :)
from fdict.
Great! Yes, you need your own program that uses fdict to be able to locate the library and the module files, just like ordinary fortran modules/libraries.
The exact method depends on how you have created your makefile. :)
Thank you very much for the support!
from fdict.
The patch has been incorporated and should work. I'll close this, thanks!
from fdict.
Related Issues (20)
- Can't get it to work HOT 3
- How to implement in an example HOT 4
- Error linking the library to another project HOT 9
- Creating the dictionary from a read file HOT 5
- Add c_ptr, c_funptr to variable and dictionary HOT 1
- please provide a pkgconfig HOT 2
- Memory leak when overwriting entries from concat
- README.md clarification/enhancement HOT 4
- Compilation error with CRAY compiler HOT 3
- interface which to query contained type field HOT 1
- document cmake building instructions HOT 1
- Fails to build with `ninja-build` HOT 2
- Make project compatible with `FetchContent` HOT 6
- Clarify the api HOT 2
- Using plain C preprocessor instead of fypp? HOT 7
- CI tools HOT 4
- Strongly typed dictionaries HOT 7
- having error in compiling siesta-master HOT 3
- CMake install HOT 10
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fdict.