You are not logged in.
gcc: error: cmdline.c: No such file or directory
I face this cmdline.c issue when I try to install openems-project-git
However, when I google around, I found that cmdline.c is part of linux kernel. This makes the problem stranger since cmdline.c is not found in my arch linux system.
Why this error ? Anyone faced the same issue previously ?
[phung@archlinux ]$ yaourt -S openems-project-git
==> Downloading openems-project-git PKGBUILD from AUR...
x .SRCINFO
x PKGBUILD
openems-project-git 0.0.35-1 (2018-09-02 22:07)
( Unsupported package: Potentially dangerous ! )
==> Edit PKGBUILD ? [Y/n] ("A" to abort)
==> ------------------------------------
==> y
Please add $VISUAL to your environment variables
for example:
export VISUAL="vim" (in ~/.bashrc)
(replace vim with your favorite editor)
==> Edit PKGBUILD with: nano
==> openems-project-git dependencies:
- cmake (already installed)
- qt5-base (already installed)
- tinyxml (already installed)
- hdf5 (already installed)
- boost (already installed)
- vtk (already installed)
- cgal (already installed)
- openmpi (already installed)
- git (already installed) [makedepend]
- unixodbc (package found)
==> Edit PKGBUILD ? [Y/n] ("A" to abort)
==> ------------------------------------
==> y
==> openems-project-git dependencies:
- cmake (already installed)
- qt5-base (already installed)
- tinyxml (already installed)
- hdf5 (already installed)
- boost (already installed)
- vtk (already installed)
- cgal (already installed)
- openmpi (already installed)
- git (already installed) [makedepend]
- unixodbc (package found)
==> Continue building openems-project-git ? [Y/n]
==> ---------------------------------------------
==> y
==> Building and installing package
==> Install or build missing dependencies for openems-project-git:
[sudo] password for phung:
resolving dependencies...
looking for conflicting packages...
Packages (1) unixodbc-2.3.7-2
Total Download Size: 0.22 MiB
Total Installed Size: 0.88 MiB
:: Proceed with installation? [Y/n] y
:: Retrieving packages...
unixodbc-2.3.7-2-x86_64 225.0 KiB 145K/s 00:02 [###########################] 100%
(1/1) checking keys in keyring [###########################] 100%
(1/1) checking package integrity [###########################] 100%
(1/1) loading package files [###########################] 100%
(1/1) checking for file conflicts [###########################] 100%
(1/1) checking available disk space [###########################] 100%
:: Processing package changes...
(1/1) installing unixodbc [###########################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
==> Making package: openems-project-git 0.0.35-1 (Sun 07 Apr 2019 01:52:37 PM +08)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
==> Extracting sources...
==> Starting build()...
==> Connecting to GIT server....
Cloning into 'openEMS-Project'...
remote: Enumerating objects: 14, done.
remote: Counting objects: 100% (14/14), done.
remote: Compressing objects: 100% (10/10), done.
remote: Total 325 (delta 6), reused 12 (delta 4), pack-reused 311
Receiving objects: 100% (325/325), 67.68 KiB | 206.00 KiB/s, done.
Resolving deltas: 100% (164/164), done.
Submodule 'AppCSXCAD' (https://github.com/thliebig/AppCSXCAD.git) registered for path 'AppCSXCAD'
Submodule 'CSXCAD' (https://github.com/thliebig/CSXCAD.git) registered for path 'CSXCAD'
Submodule 'CTB' (https://github.com/thliebig/CTB.git) registered for path 'CTB'
Submodule 'QCSXCAD' (https://github.com/thliebig/QCSXCAD.git) registered for path 'QCSXCAD'
Submodule 'fparser' (https://github.com/thliebig/fparser.git) registered for path 'fparser'
Submodule 'hyp2mat' (https://github.com/koendv/hyp2mat.git) registered for path 'hyp2mat'
Submodule 'openEMS' (https://github.com/thliebig/openEMS.git) registered for path 'openEMS'
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project/AppCSXCAD'...
remote: Enumerating objects: 13, done.
remote: Counting objects: 100% (13/13), done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 241 (delta 5), reused 8 (delta 2), pack-reused 228
Receiving objects: 100% (241/241), 50.43 KiB | 233.00 KiB/s, done.
Resolving deltas: 100% (140/140), done.
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project/CSXCAD'...
remote: Enumerating objects: 2924, done.
remote: Total 2924 (delta 0), reused 0 (delta 0), pack-reused 2924
Receiving objects: 100% (2924/2924), 964.33 KiB | 170.00 KiB/s, done.
Resolving deltas: 100% (1867/1867), done.
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project/CTB'...
remote: Enumerating objects: 47, done.
remote: Total 47 (delta 0), reused 0 (delta 0), pack-reused 47
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project/QCSXCAD'...
remote: Enumerating objects: 8, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 783 (delta 3), reused 8 (delta 3), pack-reused 775
Receiving objects: 100% (783/783), 779.43 KiB | 696.00 KiB/s, done.
Resolving deltas: 100% (513/513), done.
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project/fparser'...
remote: Enumerating objects: 89, done.
remote: Total 89 (delta 0), reused 0 (delta 0), pack-reused 89
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project/hyp2mat'...
remote: Enumerating objects: 1763, done.
remote: Total 1763 (delta 0), reused 0 (delta 0), pack-reused 1763
Receiving objects: 100% (1763/1763), 3.55 MiB | 1.11 MiB/s, done.
Resolving deltas: 100% (1124/1124), done.
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project/openEMS'...
remote: Enumerating objects: 19, done.
remote: Counting objects: 100% (19/19), done.
remote: Compressing objects: 100% (13/13), done.
remote: Total 7161 (delta 6), reused 19 (delta 6), pack-reused 7142
Receiving objects: 100% (7161/7161), 4.54 MiB | 984.00 KiB/s, done.
Resolving deltas: 100% (4108/4108), done.
Submodule path 'AppCSXCAD': checked out '6cab5a384c17f355f39fba5c90e390ffa7002960'
Submodule path 'CSXCAD': checked out '55899d0fc3dbfc2eb3ec60af9783925926e661a9'
Submodule path 'CTB': checked out '5ac29367ebb7e30e78dd3db13a21464756855599'
Submodule path 'QCSXCAD': checked out '3d301074593bde36ed43044e87864f6796aedb24'
Submodule path 'fparser': checked out 'a59e1f51e32096bfe2a0a2640d5dffc7ae6ba37b'
Submodule path 'hyp2mat': checked out '7b68b88b95ecd573f98032e71a7b69ebf3461628'
Submodule path 'openEMS': checked out 'de2317278ba7ccaf708b7df6c360be2f64e48ec3'
==> GIT checkout done or server timeout
==> Starting build...
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build'...
done.
Submodule 'AppCSXCAD' (https://github.com/thliebig/AppCSXCAD.git) registered for path 'AppCSXCAD'
Submodule 'CSXCAD' (https://github.com/thliebig/CSXCAD.git) registered for path 'CSXCAD'
Submodule 'CTB' (https://github.com/thliebig/CTB.git) registered for path 'CTB'
Submodule 'QCSXCAD' (https://github.com/thliebig/QCSXCAD.git) registered for path 'QCSXCAD'
Submodule 'fparser' (https://github.com/thliebig/fparser.git) registered for path 'fparser'
Submodule 'hyp2mat' (https://github.com/koendv/hyp2mat.git) registered for path 'hyp2mat'
Submodule 'openEMS' (https://github.com/thliebig/openEMS.git) registered for path 'openEMS'
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build/AppCSXCAD'...
remote: Enumerating objects: 13, done.
remote: Counting objects: 100% (13/13), done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 241 (delta 5), reused 8 (delta 2), pack-reused 228
Receiving objects: 100% (241/241), 50.43 KiB | 237.00 KiB/s, done.
Resolving deltas: 100% (140/140), done.
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build/CSXCAD'...
remote: Enumerating objects: 2924, done.
remote: Total 2924 (delta 0), reused 0 (delta 0), pack-reused 2924
Receiving objects: 100% (2924/2924), 964.33 KiB | 765.00 KiB/s, done.
Resolving deltas: 100% (1867/1867), done.
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build/CTB'...
remote: Enumerating objects: 47, done.
remote: Total 47 (delta 0), reused 0 (delta 0), pack-reused 47
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build/QCSXCAD'...
remote: Enumerating objects: 8, done.
remote: Counting objects: 100% (8/8), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 783 (delta 3), reused 8 (delta 3), pack-reused 775
Receiving objects: 100% (783/783), 779.43 KiB | 629.00 KiB/s, done.
Resolving deltas: 100% (513/513), done.
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build/fparser'...
remote: Enumerating objects: 89, done.
remote: Total 89 (delta 0), reused 0 (delta 0), pack-reused 89
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build/hyp2mat'...
remote: Enumerating objects: 1763, done.
remote: Total 1763 (delta 0), reused 0 (delta 0), pack-reused 1763
Receiving objects: 100% (1763/1763), 3.55 MiB | 449.00 KiB/s, done.
Resolving deltas: 100% (1124/1124), done.
Cloning into '/home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build/openEMS'...
remote: Enumerating objects: 19, done.
remote: Counting objects: 100% (19/19), done.
remote: Compressing objects: 100% (13/13), done.
remote: Total 7161 (delta 6), reused 19 (delta 6), pack-reused 7142
Receiving objects: 100% (7161/7161), 4.54 MiB | 1.13 MiB/s, done.
Resolving deltas: 100% (4108/4108), done.
Submodule path 'AppCSXCAD': checked out '6cab5a384c17f355f39fba5c90e390ffa7002960'
Submodule path 'CSXCAD': checked out '55899d0fc3dbfc2eb3ec60af9783925926e661a9'
Submodule path 'CTB': checked out '5ac29367ebb7e30e78dd3db13a21464756855599'
Submodule path 'QCSXCAD': checked out '3d301074593bde36ed43044e87864f6796aedb24'
Submodule path 'fparser': checked out 'a59e1f51e32096bfe2a0a2640d5dffc7ae6ba37b'
Submodule path 'hyp2mat': checked out '7b68b88b95ecd573f98032e71a7b69ebf3461628'
Submodule path 'openEMS': checked out 'de2317278ba7ccaf708b7df6c360be2f64e48ec3'
enabling MPI
enabling hyp2mat build
enabling CTB build
setting install path to: /home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build/openems_path
logging build output to: /home/phung/tmp/yaourt-tmp-phung/aur-openems-project-git/src/openEMS-Project-build/build_20190407_135341.log
running cmake in tmp dir: /tmp/tmp.WPSXRxUr3r
build openEMS and dependencies ... please wait
build successful, cleaning up tmp dir ...
bootstrapping hyp2mat ... please wait
configure.ac:33: installing 'config/compile'
configure.ac:36: installing 'config/config.guess'
configure.ac:36: installing 'config/config.sub'
configure.ac:8: installing 'config/install-sh'
configure.ac:8: installing 'config/missing'
lib/Makefile.am: installing 'config/depcomp'
configure.ac: installing 'config/ylwrap'
configuring hyp2mat ... please wait
compiling hyp2mat ... please wait
parse.yyparse.yy:21.1-5: :21warning: .1POSIX Yacc does not support %code-5 [-Wyacc]:
warning: POSIX Yacc does not support %code [-Wyacc]
%code r%ecqoudier erse q{u
i r^e~s~ ~{~
^~~~~
parse.yy:26.1-14: warning: POSIX Yacc does not support %error-verbose [-Wyacc]parse.yy
:26 .1%-14e: rwarning: rPOSIX Yacc does not support %error-verboseo [-Wyacc]r
- %veerrrboors-ev
e^r~b~o~s~e~
~~ ~^~~~~~~~~~~
~~~~~~~~
parse.yy:26.1-14: parse.yywarning: :26deprecated directive, use ‘%define parse.error verbose’.1-14 [-Wdeprecated]:
warning: deprecated directive, use ‘%define parse.error verbose’% [-Wdeprecated]e
rr o%re-rvreorrb-ovseer
b o^s~e~
~ ~^~~~~~~~~~~~~~~~~~~
~~~~
parse.yy:28.1parse.yy-8:28: .1warning: -8POSIX Yacc does not support %defines: [-Wyacc]warning:
POSIX Yacc does not support %defines [-Wyacc]%
d e%fdienfeisn
e s^
~ ~^~~~~~~~~~~
~~
parse.yy: warning: fix-its can be applied. Rerun with option '--update'. [-Wother]
parse.yy: warning: fix-its can be applied. Rerun with option '--update'. [-Wother]
gcc: error: cmdline.c: No such file or directory
gcc: fatal error: no input files
compilation terminated.
make[2]: *** [Makefile:456: cmdline.o] Error 1
make[2]: *** Waiting for unfinished jobs....
hyp2mat.cc:26:10: fatal error: cmdline.h: No such file or directory
#include "cmdline.h"
^~~~~~~~~~~
compilation terminated.
make[2]: *** [Makefile:477: hyp2mat.o] Error 1
make[1]: *** [Makefile:338: all] Error 2
make: *** [Makefile:399: all-recursive] Error 1
make for hyp2mat failed
==> ERROR: A failure occurred in build().
Aborting...
==> ERROR: Makepkg was unable to build openems-project-git.
==> Restart building openems-project-git ? [y/N]
==> --------------------------------------------
==> n
[phung@archlinux ]$ sudo locate -b "cmdline.c"
/usr/lib/python2.7/site-packages/mercurial/templates/map-cmdline.changelog
/usr/lib/python2.7/site-packages/mercurial/templates/map-cmdline.compact
/usr/lib/python3.7/site-packages/pygments/__pycache__/cmdline.cpython-37.opt-1.pyc
/usr/lib/python3.7/site-packages/pygments/__pycache__/cmdline.cpython-37.pyc
/usr/lib/python3.7/site-packages/sphinx/__pycache__/cmdline.cpython-37.opt-1.pyc
/usr/lib/python3.7/site-packages/sphinx/__pycache__/cmdline.cpython-37.pyc
/usr/lib/python3.7/test/libregrtest/__pycache__/cmdline.cpython-37.opt-1.pyc
/usr/lib/python3.7/test/libregrtest/__pycache__/cmdline.cpython-37.opt-2.pyc
/usr/lib/python3.7/test/libregrtest/__pycache__/cmdline.cpython-37.pyc
[phung@archlinux ]$
Last edited by promach (2019-04-07 06:05:15)
Offline
First, ditch yaourt please.
Second,
That PKGBUILD looks like it was written before pacman/makepkg supported vcs in sources= array and was never updated.
Have you tried with AUR openeems-git ?
That one looks a lot cleaner.
3rd,
Did I mention you should get rid of yaourt ?
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
gengetopt will generate cmdline.c
skeleton PKGBUILD that builds in a chroot
# This is an example PKGBUILD file. Use this as a start to creating your own,
# and remove these comments. For more information, see 'man PKGBUILD'.
# NOTE: Please fill out the license field for your package! If it is unknown,
# then please put 'unknown'.
# Maintainer: Your Name <youremail@domain.com>
pkgname=openems-project-git
pkgver=0.0.35.r13.g78e7642
pkgrel=1
epoch=
pkgdesc=""
arch=('x86_64')
url=""
license=('GPL3')
groups=()
depends=('qt5-base' 'qt5-x11extras' 'tinyxml' 'hdf5' 'boost' 'vtk' 'unixodbc' 'cgal' 'openmpi' 'glew' 'python' 'netcdf-openmpi' 'proj' 'libogg' 'libtheora' 'libharu')
makedepends=('cmake' 'git' 'chrpath' 'gengetopt')
checkdepends=()
optdepends=()
provides=()
conflicts=()
replaces=()
backup=()
options=()
install=
changelog=
source=("$pkgname"::git+https://github.com/thliebig/openEMS-Project
git+https://github.com/thliebig/AppCSXCAD
git+https://github.com/thliebig/CSXCAD
git+https://github.com/thliebig/CTB
git+https://github.com/thliebig/QCSXCAD
git+https://github.com/thliebig/fparser
git+https://github.com/koendv/hyp2mat
git+https://github.com/thliebig/openEMS)
noextract=()
sha256sums=('SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP')
validpgpkeys=()
pkgver() {
cd "$pkgname"
git describe --tags | sed -E 's/^v//;s/([^-]*-g)/r\1/;s/-/./g;s/\.rc/rc/'
}
prepare() {
cd "$pkgname"
git submodule init
git config submodule.AppCSXCAD.url "$srcdir"/AppCSXCAD
git config submodule.CSXCAD.url "$srcdir"/CSXCAD
git config submodule.CTB.url "$srcdir"/CTB
git config submodule.QCSXCAD.url "$srcdir"/QCSXCAD
git config submodule.hyp2mat.url "$srcdir"/hyp2mat
git config submodule.openEMS.url "$srcdir"/openEMS
git submodule update
}
build() {
cd "$pkgname"
mkdir -p build
mkdir -p fakeinstall
cd build
cmake -DWITH_MPI=1 -DCMAKE_INSTALL_PREFIX=../fakeinstall ..
make
cd ../hyp2mat
mkdir -p m4
autoreconf -fi
./configure --prefix=/usr
make
}
#check() {
# cd "$pkgname"
# make -k check
#}
package() {
cd "$pkgname"
chrpath -d fakeinstall/bin/{AppCSXCAD,nf2ff} fakeinstall/lib/*
install -dm755 "$pkgdir"/usr/
cp -R --no-preserve=ownership fakeinstall/* "$pkgdir"/usr/
cd hyp2mat
make DESTDIR="$pkgdir/" install
}
Online
What do you mean by fakeinstall ?
How do I modify your PKGBUILD not to use fakeinstall ?
I am going to install this in real system
Last edited by promach (2019-04-07 12:22:11)
Offline
The CMakelists.txt generates a makefile that builds and installs in a single step.
The directory fakeinstall is used to contain the installation generated during build.
In package() rpath is removed and the files are then copied into $pkgdir.
hyp2mat is built using a separate build system in a separate directory and could be a separate package.
cd build
cmake -DWITH_MPI=1 -DCMAKE_INSTALL_PREFIX=../fakeinstall ..
make
package() {
cd "$pkgname"
chrpath -d fakeinstall/bin/{AppCSXCAD,nf2ff} fakeinstall/lib/*
install -dm755 "$pkgdir"/usr/
cp -R --no-preserve=ownership fakeinstall/* "$pkgdir"/usr/
Online
./update_openEMS.sh ~/opt/openEMS --with-hyp2mat --with-CTB --with-MPI
Why are you not using the command given in https://github.com/thliebig/openEMS-Pro … nd-install ?
Offline
Why would I call a script instead of incorporating the contents of the script into the PKGBUILD modified to be installed on arch?
Online
[phung@archlinux Downloads]$ makepkg -s
==> Making package: openems-project-git 0.0.35.r13.g78e7642-1 (Sun 07 Apr 2019 10:36:28 PM +08)
==> Checking runtime dependencies...
==> Installing missing dependencies...
[sudo] password for phung:
resolving dependencies...
looking for conflicting packages...
:: netcdf-openmpi and netcdf are in conflict. Remove netcdf? [y/N] y
:: hdf5-openmpi and hdf5 are in conflict. Remove hdf5? [y/N] y
:: hdf5-openmpi and python-h5py are in conflict. Remove python-h5py? [y/N] y
:: hdf5-openmpi and python2-h5py are in conflict. Remove python2-h5py? [y/N] y
error: failed to prepare transaction (could not satisfy dependencies)
:: removing python-h5py breaks dependency 'python-h5py' required by python-keras
:: removing python-h5py breaks dependency 'python-h5py' required by python-tensorflow
:: removing python2-h5py breaks dependency 'python2-h5py' required by python2-keras
==> ERROR: 'pacman' failed to install missing dependencies.
[phung@archlinux Downloads]$
The dependency might need some modifications
Offline
Does replacing netcdf-openmpi with netcdf in the depends help?
Online
==> WARNING: Package contains reference to $srcdir
Can I ignore this warning ?
pkgname=openems-project-git
pkgver=0.0.35.r13.g78e7642
pkgrel=1
epoch=
pkgdesc="free and open electromagnetic field solver using the FDTD method."
arch=('x86_64')
url="http://openems.de/"
license=('GPL3')
groups=()
depends=('qt5-base' 'qt5-x11extras' 'tinyxml' 'hdf5' 'boost' 'vtk' 'unixodbc' 'cgal' 'openmpi' 'glew' 'python' 'netcdf' 'proj' 'libogg' 'libtheora' 'libharu')
makedepends=('cmake' 'git' 'chrpath' 'gengetopt')
checkdepends=()
optdepends=()
provides=()
conflicts=('openems' 'openems-git')
replaces=()
backup=()
options=()
install=
changelog=
source=("$pkgname"::git+https://github.com/thliebig/openEMS-Project
git+https://github.com/thliebig/AppCSXCAD
git+https://github.com/thliebig/CSXCAD
git+https://github.com/thliebig/CTB
git+https://github.com/thliebig/QCSXCAD
git+https://github.com/thliebig/fparser
git+https://github.com/koendv/hyp2mat
git+https://github.com/thliebig/openEMS)
noextract=()
sha256sums=('SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP')
validpgpkeys=()
pkgver() {
cd "$pkgname"
git describe --tags | sed -E 's/^v//;s/([^-]*-g)/r\1/;s/-/./g;s/\.rc/rc/'
}
prepare() {
cd "$pkgname"
git submodule init
git config submodule.AppCSXCAD.url "$srcdir"/AppCSXCAD
git config submodule.CSXCAD.url "$srcdir"/CSXCAD
git config submodule.CTB.url "$srcdir"/CTB
git config submodule.QCSXCAD.url "$srcdir"/QCSXCAD
git config submodule.hyp2mat.url "$srcdir"/hyp2mat
git config submodule.openEMS.url "$srcdir"/openEMS
git submodule update
}
build() {
cd "$pkgname"
mkdir -p build
mkdir -p fakeinstall
cd build
cmake -DWITH_MPI=1 -DBUILD_HYP2MAT=1 -DBUILD_CTB=1 -DCMAKE_INSTALL_PREFIX=../fakeinstall ..
make
cd ../hyp2mat
mkdir -p m4
autoreconf -fi
./configure --prefix=/usr
make
}
#check() {
# cd "$pkgname"
# make -k check
#}
package() {
cd "$pkgname"
chrpath -d fakeinstall/bin/{AppCSXCAD,nf2ff} fakeinstall/lib/*
install -dm755 "$pkgdir"/usr/
cp -R --no-preserve=ownership fakeinstall/* "$pkgdir"/usr/
cd hyp2mat
make DESTDIR="$pkgdir/" install
}
Last edited by promach (2019-04-09 14:32:54)
Offline
It is not ideal to have the string present in the binaries but it depends on what use if any the string is put to that is the issue and I do not know the answer to that.
If you used the original PKGBUILD from #1 with gengetopt added to makedepends does that also produce the warning?
Online
If you used the original PKGBUILD from #1 with gengetopt added to makedepends does that also produce the warning?
Yes, it also produced the same warning.
So, I can ignore the warning ?
[phung@archlinux openems-project-git]$ sudo pacman -U openems-project-git-0.0.35.r13.g78e7642-1-x86_64.pkg.tar.xz
loading packages...
resolving dependencies...
looking for conflicting packages...
Packages (1) openems-project-git-0.0.35.r13.g78e7642-1
Total Installed Size: 5.55 MiB
:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring [########################################################################################] 100%
(1/1) checking package integrity [########################################################################################] 100%
(1/1) loading package files [########################################################################################] 100%
(1/1) checking for file conflicts [########################################################################################] 100%
error: failed to commit transaction (conflicting files)
openems-project-git: /usr/include/CSXCAD/CSBackgroundMaterial.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSFunctionParser.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimBox.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimCurve.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimCylinder.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimCylindricalShell.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimLinPoly.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimMultiBox.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimPoint.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimPolygon.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimPolyhedron.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimPolyhedronReader.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimRotPoly.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimSphere.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimSphericalShell.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimUserDefined.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimWire.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPrimitives.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropConductingSheet.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropDebyeMaterial.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropDiscMaterial.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropDispersiveMaterial.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropDumpBox.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropExcitation.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropLorentzMaterial.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropLumpedElement.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropMaterial.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropMetal.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropProbeBox.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropResBox.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSPropUnknown.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSProperties.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSRectGrid.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSTransform.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSUseful.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/CSXCAD_Global.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/ContinuousStructure.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/ParameterCoord.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/include/CSXCAD/ParameterObjects.h exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/lib/libCSXCAD.so exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/lib/libCSXCAD.so.0 exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/lib/libCSXCAD.so.0.6.2 exists in filesystem (owned by csxcad-git)
openems-project-git: /usr/lib/libfparser.so exists in filesystem (owned by fparser-git)
openems-project-git: /usr/lib/libfparser.so.4 exists in filesystem (owned by fparser-git)
openems-project-git: /usr/lib/libfparser.so.4.5.1 exists in filesystem (owned by fparser-git)
Errors occurred, no packages were upgraded.
[phung@archlinux openems-project-git]$ sudo pacman -Rsu csxcad-git
checking dependencies...
warning: removing csxcad-git from target list
warning: removing qt5-webkit from target list
warning: removing proj from target list
warning: removing libharu from target list
warning: removing vtk from target list
warning: removing cgal from target list
warning: removing qt5-location from target list
warning: removing qt5-sensors from target list
warning: removing qt5-webchannel from target list
there is nothing to do
[phung@archlinux openems-project-git]$ sudo pacman -Rsu fparser-git
checking dependencies...
warning: removing fparser-git from target list
there is nothing to do
[phung@archlinux openems-project-git]$
I faced some strange conflicting file issues above. Why ?
Last edited by promach (2019-04-09 14:35:22)
Offline
You will have to choose if you want to ignore the warning or not.
openems-project-git includes CSXCAD is you have another package providing CSXCAD
the packages will conflict unless one of the packages is altered to install to an alternate location such as /opt.
Online
Thanks, I have solved the conflicting file issue above.
Now, I am dealing with CTB issue.
Your PKGBUILD does not include the build/compilation for CTB toolbox.
build() {
cd "$pkgname"
mkdir -p build
mkdir -p fakeinstall
cd build
cmake -DWITH_MPI=1 -DBUILD_HYP2MAT=1 -DBUILD_CTB=1 -DCMAKE_INSTALL_PREFIX=../fakeinstall ..
make
cd ../hyp2mat
mkdir -p m4
autoreconf -fi
./configure --prefix=/usr
make
}
When I look at CTB github repo , the directory structure and files are different. but the git commit shasum is the same though. Why ?
[phung@archlinux openems-project-git]$ cd CTB/
[phung@archlinux CTB]$ ls -al
total 48
drwxr-xr-x 7 phung phung 4096 Apr 9 22:31 .
drwxr-xr-x 12 phung phung 4096 Apr 10 07:16 ..
drwxr-xr-x 2 phung phung 4096 Apr 8 22:43 branches
-rw-r--r-- 1 phung phung 162 Apr 8 22:43 config
-rw-r--r-- 1 phung phung 73 Apr 8 22:43 description
-rw-r--r-- 1 phung phung 106 Apr 10 07:16 FETCH_HEAD
-rw-r--r-- 1 phung phung 23 Apr 8 22:43 HEAD
drwxr-xr-x 2 phung phung 4096 Apr 8 22:43 hooks
drwxr-xr-x 2 phung phung 4096 Apr 8 22:43 info
drwxr-xr-x 50 phung phung 4096 Apr 8 22:43 objects
-rw-r--r-- 1 phung phung 105 Apr 8 22:43 packed-refs
drwxr-xr-x 4 phung phung 4096 Apr 8 22:43 refs
[phung@archlinux CTB]$
Last edited by promach (2019-04-09 23:55:20)
Offline
src/CTB contains a bare git repository of git+https://github.com/thliebig/CTB generated by makepkg.
src/openEMS-Project/CTB is a checkout of the same git repository as updated by git submodule update.
Online
in this case, how to modify the PKGBUILD build() function to include the build/compilation for CTB as well ?
Offline
There is nothing to make for CTB or at least update_openEMS.sh just uses make install [1],
the Makefile is [2] specify prefix so the files will be copied to $pkgdir so at the end of package()
cd ../CTB
make PREFIX="$pkgdir/usr" install
[1] https://github.com/thliebig/openEMS-Pro … openEMS.sh
[2] https://github.com/thliebig/CTB/blob/5a … 9/Makefile
Last edited by loqs (2019-04-10 01:03:20)
Online
Problem solved.
# Maintainer: Phung Cheng Fei <feiphung@hotmail.com>
pkgname=openems-project-git
pkgver=0.0.35.r13.g78e7642
pkgrel=1
epoch=
pkgdesc="free and open electromagnetic field solver using the FDTD method."
arch=('x86_64')
url="http://openems.de/"
license=('GPL3')
groups=()
depends=('qt5-base' 'qt5-x11extras' 'tinyxml' 'hdf5' 'boost' 'vtk' 'unixodbc' 'cgal' 'openmpi' 'glew' 'python' 'netcdf' 'proj' 'libogg' 'libtheora' 'libharu')
makedepends=('cmake' 'git' 'chrpath' 'gengetopt')
checkdepends=()
optdepends=()
provides=()
conflicts=('openems' 'openems-git')
replaces=()
backup=()
options=()
install=
changelog=
source=("$pkgname"::git+https://github.com/thliebig/openEMS-Project
git+https://github.com/thliebig/AppCSXCAD
git+https://github.com/thliebig/CSXCAD
git+https://github.com/thliebig/CTB
git+https://github.com/thliebig/QCSXCAD
git+https://github.com/thliebig/fparser
git+https://github.com/koendv/hyp2mat
git+https://github.com/thliebig/openEMS)
noextract=()
sha256sums=('SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP'
'SKIP')
validpgpkeys=()
pkgver() {
cd "$pkgname"
git describe --tags | sed -E 's/^v//;s/([^-]*-g)/r\1/;s/-/./g;s/\.rc/rc/'
}
prepare() {
cd "$pkgname"
git submodule init
git config submodule.AppCSXCAD.url "$srcdir"/AppCSXCAD
git config submodule.CSXCAD.url "$srcdir"/CSXCAD
git config submodule.CTB.url "$srcdir"/CTB
git config submodule.QCSXCAD.url "$srcdir"/QCSXCAD
git config submodule.hyp2mat.url "$srcdir"/hyp2mat
git config submodule.openEMS.url "$srcdir"/openEMS
git submodule update
}
build() {
cd "$pkgname"
mkdir -p build
mkdir -p fakeinstall
cd build
cmake -DWITH_MPI=1 -DBUILD_HYP2MAT=1 -DBUILD_CTB=1 -DCMAKE_INSTALL_PREFIX=../fakeinstall ..
make
cd ../hyp2mat
mkdir -p m4
autoreconf -fi
./configure --prefix=/usr
make
}
#check() {
# cd "$pkgname"
# make -k check
#}
package() {
cd "$pkgname"
chrpath -d fakeinstall/bin/{AppCSXCAD,nf2ff} fakeinstall/lib/*
install -dm755 "$pkgdir"/usr/
cp -R --no-preserve=ownership fakeinstall/* "$pkgdir"/usr/
cd hyp2mat
make DESTDIR="$pkgdir/" install
cd ../CTB
make PREFIX="$pkgdir/usr" install
}
Last edited by promach (2019-04-10 01:19:05)
Offline
Yes at the end of package. You need to change from the hyp2mat directory up to the parent directory and into the sub directory CTB which is why I used
cd ../CTB
or you could use pushd and popd
Online