You are not logged in.

#1 2019-04-07 06:04:37

promach
Member
Registered: 2016-05-18
Posts: 96

openems-project-git installation issue with cmdline.c file not found

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

#2 2019-04-07 11:51:40

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: openems-project-git installation issue with cmdline.c file not found

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

#3 2019-04-07 11:54:02

loqs
Member
Registered: 2014-03-06
Posts: 17,198

Re: openems-project-git installation issue with cmdline.c file not found

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

#4 2019-04-07 12:21:58

promach
Member
Registered: 2016-05-18
Posts: 96

Re: openems-project-git installation issue with cmdline.c file not found

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

#5 2019-04-07 12:35:03

loqs
Member
Registered: 2014-03-06
Posts: 17,198

Re: openems-project-git installation issue with cmdline.c file not found

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

#6 2019-04-07 12:43:57

promach
Member
Registered: 2016-05-18
Posts: 96

Re: openems-project-git installation issue with cmdline.c file not found

./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

#7 2019-04-07 12:47:38

loqs
Member
Registered: 2014-03-06
Posts: 17,198

Re: openems-project-git installation issue with cmdline.c file not found

Why would I call a script instead of incorporating the contents of the script into the PKGBUILD modified to be installed on arch?

Online

#8 2019-04-07 14:38:10

promach
Member
Registered: 2016-05-18
Posts: 96

Re: openems-project-git installation issue with cmdline.c file not found

[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

#9 2019-04-07 15:38:28

loqs
Member
Registered: 2014-03-06
Posts: 17,198

Re: openems-project-git installation issue with cmdline.c file not found

Does replacing netcdf-openmpi with netcdf in the depends help?

Online

#10 2019-04-08 14:47:28

promach
Member
Registered: 2016-05-18
Posts: 96

Re: openems-project-git installation issue with cmdline.c file not found

==> 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

#11 2019-04-08 20:49:37

loqs
Member
Registered: 2014-03-06
Posts: 17,198

Re: openems-project-git installation issue with cmdline.c file not found

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

#12 2019-04-09 13:40:42

promach
Member
Registered: 2016-05-18
Posts: 96

Re: openems-project-git installation issue with cmdline.c file not found

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

#13 2019-04-09 18:07:36

loqs
Member
Registered: 2014-03-06
Posts: 17,198

Re: openems-project-git installation issue with cmdline.c file not found

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

#14 2019-04-09 23:52:17

promach
Member
Registered: 2016-05-18
Posts: 96

Re: openems-project-git installation issue with cmdline.c file not found

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

#15 2019-04-10 00:27:04

loqs
Member
Registered: 2014-03-06
Posts: 17,198

Re: openems-project-git installation issue with cmdline.c file not found

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

#16 2019-04-10 00:35:38

promach
Member
Registered: 2016-05-18
Posts: 96

Re: openems-project-git installation issue with cmdline.c file not found

in this case, how to modify the PKGBUILD build() function to include the build/compilation for CTB as well ?

Offline

#17 2019-04-10 01:02:59

loqs
Member
Registered: 2014-03-06
Posts: 17,198

Re: openems-project-git installation issue with cmdline.c file not found

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

#18 2019-04-10 01:10:43

promach
Member
Registered: 2016-05-18
Posts: 96

Re: openems-project-git installation issue with cmdline.c file not found

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

#19 2019-04-10 01:16:29

loqs
Member
Registered: 2014-03-06
Posts: 17,198

Re: openems-project-git installation issue with cmdline.c file not found

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

Board footer

Powered by FluxBB