Package Details: nusmv 2.6.0-4

Git Clone URL: https://aur.archlinux.org/nusmv.git (read-only)
Package Base: nusmv
Description: A new symbolic model checker
Upstream URL: http://nusmv.fbk.eu/index.html
Licenses: LGPL2.1
Submitter: None
Maintainer: ASzc
Last Packager: ASzc
Votes: 6
Popularity: 0.056379
First Submitted: 2010-03-13 04:33
Last Updated: 2019-05-15 16:01

Dependencies (7)

Required by (0)

Sources (3)

Latest Comments

1 2 3 Next › Last »

ASzc commented on 2019-05-15 16:00

Huh, thought it was in there, will add

thorsten commented on 2019-05-15 14:11

Thanks a lot! With the documentation fixed, I think one also should add doxygen to the makedepends.

ASzc commented on 2019-05-15 13:29

Done. Also had to fix up the documentation generation.

thorsten commented on 2019-05-15 08:27

@ASzc: Can you please apply the fixes by Lekensteyn to make this package compile again? If you add me to the list of Maintainers, I'm volunteering to apply them! (The main work has already been done by Lekensteyn)

radrow commented on 2019-05-15 07:53

I get build error:

NuSMV-2.6.0/cudd-2.4.1.1/util/pipefork.c:46:16: error: storage size of ‘status’ isn’t known
     union wait status;
                ^~~~~~

Lekensteyn commented on 2016-12-13 13:23

The package did not compile for me either, had similar issues like oggy. Besides fixing the "union wait" and "extern C" issues, I also fixed implicit function warnings which happened due to missing inclusion of nusvm-config.h (due to the order of add_subdirectory vs include_directories/add_definitions).

For the patches, see https://github.com/Lekensteyn/aur/commit/4862c485f55d9

I had no further issues building it (in a clean VM) though. Interestingly, /usr/lib/ is empty after removing the static .a libs.

oggy commented on 2016-08-16 14:36

The package didn't compile for me. It seems to use an obsolete structure as a parameter to the wait3 call (see https://sourceware.org/ml/libc-alpha/2016-02/msg00342.html). Also, there is a typo which causes the gcc lexer to choke. Here is the patch:

==================================================================

diff -r -u ./cudd-2.4.1.1/util/pipefork.c ../src/NuSMV-2.6.0/cudd-2.4.1.1/util/pipefork.c
--- ./cudd-2.4.1.1/util/pipefork.c 2015-10-14 15:29:52.000000000 +0200
+++ ../src/NuSMV-2.6.0/cudd-2.4.1.1/util/pipefork.c 2016-08-16 16:17:56.210974891 +0200
@@ -40,7 +40,7 @@
int topipe[2], frompipe[2];
char buffer[1024];

-#if (defined __hpux) || (defined __osf__) || (defined _IBMR2) || (defined __SVR4) || (defined __CYGWIN32__) || (defined __MINGW32__)
+#if (defined __hpux) || (defined __osf__) || (defined _IBMR2) || (defined __SVR4) || (defined __CYGWIN32__) || (defined __MINGW32__) || (defined BSD)
int status;
#else
union wait status;
diff -r -u ./MiniSat/MiniSat_v061208_nusmv.patch ../src/NuSMV-2.6.0/MiniSat/MiniSat_v061208_nusmv.patch
--- ./MiniSat/MiniSat_v061208_nusmv.patch 2015-10-14 15:29:52.000000000 +0200
+++ ../src/NuSMV-2.6.0/MiniSat/MiniSat_v061208_nusmv.patch 2016-08-16 16:17:56.210974891 +0200
@@ -45,7 +45,7 @@
+ return (MiniSat_ptr)new Solver();
+}
+
-+extern "C"void MiniSat_Delete(MiniSat_ptr ms)
++extern "C" void MiniSat_Delete(MiniSat_ptr ms)
+{
+ delete (Solver *)ms;
+}
@@ -355,7 +355,7 @@
+ return (MiniSat_ptr)new SimpSolver();
+}
+
-+extern "C"void MiniSat_Delete(MiniSat_ptr ms)
++extern "C" void MiniSat_Delete(MiniSat_ptr ms)
+{
+ delete (SimpSolver *)ms;
+}
diff -r -u ./MiniSat/MiniSat_v070721_nusmv.patch ../src/NuSMV-2.6.0/MiniSat/MiniSat_v070721_nusmv.patch
--- ./MiniSat/MiniSat_v070721_nusmv.patch 2015-10-14 15:29:52.000000000 +0200
+++ ../src/NuSMV-2.6.0/MiniSat/MiniSat_v070721_nusmv.patch 2016-08-16 16:17:56.210974891 +0200
@@ -564,7 +564,7 @@
+ return (MiniSat_ptr)new SimpSolver();
+}
+
-+extern "C"void MiniSat_Delete(MiniSat_ptr ms)
++extern "C" void MiniSat_Delete(MiniSat_ptr ms)
+{
+ delete (SimpSolver *)ms;
+}
diff -r -u ./MiniSat/MiniSat_v1.14_nusmv.patch ../src/NuSMV-2.6.0/MiniSat/MiniSat_v1.14_nusmv.patch
--- ./MiniSat/MiniSat_v1.14_nusmv.patch 2015-10-14 15:29:52.000000000 +0200
+++ ../src/NuSMV-2.6.0/MiniSat/MiniSat_v1.14_nusmv.patch 2016-08-16 16:17:56.210974891 +0200
@@ -150,7 +150,7 @@
+ return (MiniSat_ptr)new Solver();
+}
+
-+extern "C"void MiniSat_Delete(MiniSat_ptr ms)
++extern "C" void MiniSat_Delete(MiniSat_ptr ms)
+{
+ delete (Solver *)ms;
+}
diff -r -u ./MiniSat/MiniSat_v2.2.0_nusmv.patch ../src/NuSMV-2.6.0/MiniSat/MiniSat_v2.2.0_nusmv.patch
--- ./MiniSat/MiniSat_v2.2.0_nusmv.patch 2015-10-14 15:29:52.000000000 +0200
+++ ../src/NuSMV-2.6.0/MiniSat/MiniSat_v2.2.0_nusmv.patch 2016-08-16 16:17:56.210974891 +0200
@@ -211,7 +211,7 @@
+ return (MiniSat_ptr)new Minisat::Solver();
+}
+
-+extern "C"void MiniSat_Delete(MiniSat_ptr ms)
++extern "C" void MiniSat_Delete(MiniSat_ptr ms)
+{
+ delete (Minisat::Solver *)ms;
+}
@@ -597,7 +597,7 @@
+ return (MiniSat_ptr) new Minisat::SimpSolver();
+}
+
-+extern "C"void MiniSat_Delete(MiniSat_ptr ms)
++extern "C" void MiniSat_Delete(MiniSat_ptr ms)
+{
+ delete (Minisat::SimpSolver *)ms;
+}
diff -r -u ./MiniSat/MiniSat_v37dc6c6_nusmv.patch ../src/NuSMV-2.6.0/MiniSat/MiniSat_v37dc6c6_nusmv.patch
--- ./MiniSat/MiniSat_v37dc6c6_nusmv.patch 2015-10-14 15:29:52.000000000 +0200
+++ ../src/NuSMV-2.6.0/MiniSat/MiniSat_v37dc6c6_nusmv.patch 2016-08-16 16:17:56.210974891 +0200
@@ -676,7 +676,7 @@
+ return (MiniSat_ptr)s;
+}
+
-+extern "C"void MiniSat_Delete(MiniSat_ptr ms)
++extern "C" void MiniSat_Delete(MiniSat_ptr ms)
+{
+ delete (Minisat::SimpSolver *)ms;
+}

==================================================================

Even after that, the make was trying to install non-existent html documentation. I've hacked together the following PKGBUILD, which works for my build location (in /home), but this is not a proper solution:

build() {
cd "$srcdir/$_pkgname-$pkgver"
patch -p0 -i ../../nusmv.patch
cd "$_pkgname"

mkdir -p build
cd build
cmake .. -DPYTHON_EXECUTABLE=/bin/python2 -DCMAKE_INSTALL_PREFIX=/usr -Wno-dev
make
}

package() {
cd "$srcdir/$_pkgname-$pkgver/$_pkgname/build"

make prog-man
make DESTDIR="$pkgdir/" install
mkdir -p "$pkgdir/usr/share/doc"
mv "${pkgdir}$srcdir/$_pkgname-$pkgver/$_pkgname/build/doc" "$pkgdir/usr/share/doc/nusmv"
rm -rf "$pkgdir/home"
find "$pkgdir" -type f -name "*.a" -print0 | xargs -0 rm

# Lowercase symlink
ln -s "/usr/bin/NuSMV" "$pkgdir/usr/bin/$pkgname"
}

ASzc commented on 2016-03-02 19:35

jSparber, since pacman doesn't show a conflicting package, I'm guessing that is an unmanaged file on your system, i.e. you've installed software outside of a package previously and now need to clean up your system.

Regardless, we shouldn't be installing static libraries, and they don't appear to be linked to anything, so I've removed all .a files.

jSparber commented on 2016-03-02 11:47

During the installation i have this error
nusmv: /usr/lib/libutil.a exists in filesystem

So I added after 'make DESTDIR="$pkgdir/" install' this line to the PKGBUILD
rm $pkgdir/usr/lib/libutil.a

and it resolved my problem.
Could you add this line to the PKGBUILD?

andrej commented on 2015-12-20 20:08

On my system the build fails at the very end:

CMake Error at doc/prog-man/cmake_install.cmake:44 (file):
file INSTALL cannot find
"/tmp/yaourt-tmp-andrej/aur-nusmv/src/NuSMV-2.6.0/NuSMV/build/doc/prog-man/html".
Call Stack (most recent call first):
doc/cmake_install.cmake:40 (include)
cmake_install.cmake:110 (include)