SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I'm having issues compiling Kicad 6.0.0 under current. Looks like it's having issues with OpenGL. Using the Slackbuild flags to compile. Anyone have luck in compiling?
It builds OK for me. I ended up disabling python scripting as I don't use it, so at the time it wasn't worth fiddling around building wxPython3 or Phoenix (KiCAD 6 supports Phoenix). No real troubles building it, the build script below is from Ponce's repository tweaked for Kicad 6.0.0 and still has a few bits I haven't tidied up from my own tweaks, but it builds cleanly for me. Hopefully this helps.
Code:
#!/bin/bash
# Slackware build script for KiCad
# Open-Source EDA Suite
# Copyright 2019 Fernando Lopez Jr. <fernando.lopezjr@gmail.com>
# Copyright 2021 Matthew Chamley <mcgchamley@yahoo.co.uk>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# Revision date: 27/Dec/2021
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=kicad
VERSION=${VERSION:-6.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-txz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
# the name of the created package would be, and then exit. This information
# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686 -std=c++11"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686 -std=c++11"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC -std=c++11"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2 -std=c++11"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.?z?
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# Additional notes:
#
# - wxWidgets and wxPython use different toolkits (gtk2 vs (gtk2-unicode)). It
# will result in a broken build. Please either install wxPython built using
# gtk2 or add '-DKICAD_SCRIPTING_WXPYTHON=OFF' to cmake parameters to disable
# wxPython support.
mkdir -p build
cd build
cmake \
-G Ninja \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DKICAD_DOCS=/usr/doc/$PRGNAM-$VERSION \
-DKICAD_PLUGINS=/usr/lib${LIBDIRSUFFIX}/$PRGNAM/plugins \
-DKICAD_SCRIPTING_WXPYTHON=OFF \
-DKICAD_SPICE=ON \
-DKICAD_USE_OCC=ON \
-DCMAKE_BUILD_TYPE=Release ..
# -DKICAD_STABLE_VERSION=ON \
# -DKICAD_SKIP_BOOST=ON \
# -DKICAD_SCRIPTING=ON \
# -DKICAD_SCRIPTING_MODULES=ON \
# -DKICAD_USE_OCE=OFF \
ninja
DESTDIR=$PKG ninja install
# make VERBOSE=1
# make install DESTDIR=$PKG
cd ..
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
I am using Ponce's slackbuild and turned off all the scripting and it still fails with GLEW/OpenGL. I was able to make all the other slackbuilds with the 6.0.0 data except for DOC. It's looking for Asciidoctorpdf.
Distribution: slackware, slackware from scratch, LFS, slackware [arm], linux Mint...
Posts: 1,564
Rep:
one I can't build is : kicad-doc with the following errors
-----------------
Code:
CMake Deprecation Warning at CMakeLists.txt:10 (cmake_minimum_required):
Compatibility with CMake < 2.8.12 will be removed from a future version of
CMake.
Update the VERSION argument <min> value or use a ...<max> suffix to tell
CMake that the project does not need compatibility with older versions.
CMake Warning (dev) at CMakeLists.txt:22 (set):
implicitly converting 'LIST' to 'STRING' type.
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Warning (dev) at CMakeLists.txt:25 (set):
implicitly converting 'LIST' to 'STRING' type.
This warning is for project developers. Use -Wno-dev to suppress it.
CMake Error at /usr/share/cmake-3.21/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find ASCIIDOCTORPDF (missing: ASCIIDOCTORPDF_COMMAND)
Call Stack (most recent call first):
/usr/share/cmake-3.21/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
CMakeModules/FindASCIIDOCTORPDF.cmake:44 (find_package_handle_standard_args)
CMakeLists.txt:63 (find_package)
-- Configuring incomplete, errors occurred!
See also "/tmp/SBo/kicad-doc-6.0.1/build/CMakeFiles/CMakeOutput.log".
@oily
and the other packages listed here:
-kicad-doc
-kicad-footprints
-kicad-packages3D
-kicad-symbols
-kicad-templates
did you built them?
I did, will send post the build scripts when I get the chance, but it might be a couple of days as my car's just broken down and I won't have access to the laptop they're on for a few days. Bear with me and I'll post then when I can.
Quote:
Originally Posted by kermitdafrog8
I am using Ponce's slackbuild and turned off all the scripting and it still fails with GLEW/OpenGL. I was able to make all the other slackbuilds with the 6.0.0 data except for DOC. It's looking for Asciidoctorrdp.
I can't remember this one off the top of my head, it doesn't ring any bells. It might be one of the dependencies I had to chase down but I don't think it was. Will confirm when I can.
Quote:
Originally Posted by nobodino
one I can't build is : kicad-doc with the following errors
-----------------
I just went for the easy option and built the package using KiCAD's prebuilt docs. There wasn't a URL on the KiCAD website at the time, but the path and filename were predictable.
/tmp/SBo/kicad-6.0.0/common/./gal/opengl/antialiasing.h: At global scope:
/tmp/SBo/kicad-6.0.0/common/./gal/opengl/antialiasing.h:49:34: error: ‘GLuint’ has not been declared
49 | virtual void DrawBuffer( GLuint aBuffer ) = 0;
| ^~~~~~
/tmp/SBo/kicad-6.0.0/common/./gal/opengl/antialiasing.h:66:26: error: ‘GLuint’ has not been declared
66 | void DrawBuffer( GLuint aBuffer ) override;
| ^~~~~~
/tmp/SBo/kicad-6.0.0/common/./gal/opengl/antialiasing.h:86:26: error: ‘GLuint’ has not been declared
86 | void DrawBuffer( GLuint ) override;
| ^~~~~~
/tmp/SBo/kicad-6.0.0/common/./gal/opengl/antialiasing.h:110:26: error: ‘GLuint’ has not been declared
110 | void DrawBuffer( GLuint buffer ) override;
| ^~~~~~
/tmp/SBo/kicad-6.0.0/common/./gal/opengl/antialiasing.h:130:9: error: ‘GLint’ does not name a type
130 | GLint pass_1_metrics;
| ^~~~~
/tmp/SBo/kicad-6.0.0/common/./gal/opengl/antialiasing.h:133:9: error: ‘GLint’ does not name a type
133 | GLint pass_2_metrics;
| ^~~~~
/tmp/SBo/kicad-6.0.0/common/./gal/opengl/antialiasing.h:136:9: error: ‘GLint’ does not name a type
136 | GLint pass_3_metrics;
| ^~~~~
In file included from /tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_gal.h:40,
from /tmp/SBo/kicad-6.0.0/common/draw_panel_gal.cpp:42:
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_compositor.h:89:5: error: ‘GLenum’ does not name a type; did you mean ‘enum’?
89 | GLenum GetBufferTexture( unsigned int aBufferHandle );
| ^~~~~~
| enum
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_compositor.h:118:9: error: ‘GLuint’ does not name a type; did you mean ‘uint’?
118 | GLuint textureTarget; ///< Main texture handle
| ^~~~~~
| uint
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_compositor.h:119:9: error: ‘GLuint’ does not name a type; did you mean ‘uint’?
119 | GLuint attachmentPoint; ///< Point to which an image from texture is attached
| ^~~~~~
| uint
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_compositor.h:124:5: error: ‘GLuint’ does not name a type; did you mean ‘uint’?
124 | GLuint m_mainFbo; ///< Main FBO handle (storing all target textures)
| ^~~~~~
| uint
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_compositor.h:125:5: error: ‘GLuint’ does not name a type; did you mean ‘uint’?
125 | GLuint m_depthBuffer; ///< Depth buffer handle
| ^~~~~~
| uint
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_compositor.h:132:5: error: ‘GLuint’ does not name a type; did you mean ‘uint’?
132 | GLuint m_curFbo;
| ^~~~~~
| uint
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_compositor.h: In member function ‘virtual unsigned int KIGFX::OPENGL_COMPOSITOR::GetBuffer() const’:
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_compositor.h:67:13: error: ‘m_curFbo’ was not declared in this scope
67 | if( m_curFbo == DIRECT_RENDERING )
| ^~~~~~~~
In file included from /tmp/SBo/kicad-6.0.0/common/draw_panel_gal.cpp:42:
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_gal.h: At global scope:
/tmp/SBo/kicad-6.0.0/include/gal/opengl/opengl_gal.h:364:5: error: ‘GLUtesselator’ does not name a type
364 | GLUtesselator* m_tesselator;
| ^~~~~~~~~~~~~
make[2]: *** [common/CMakeFiles/gal.dir/build.make:90: common/CMakeFiles/gal.dir/draw_panel_gal.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:2655: common/CMakeFiles/gal.dir/all] Error 2
Before I try KiCAD 6, I'm building 5.1.5 via the 14.2 Slackbuild on the latest Slack64-current. All files have build perfectly, save for kicad-packages3D.
wxGTK3 3.0.5 and wxPython3 3.0.2 built with no issues.
kicad-packages3D is a problem. I'm now into my 3rd mirror, and it keeps quitting with the following error message: Read error at byte 870378796 (Success).Retrying. Possibly a corrupt file that was uploaded to the mirrors? KiCAD itself worked perfectly using the 14.2 Slackbuild.
Once KiCAD 5.1.5 is complete, I'll attempt to build KiCAD 6.0.1.
Edit: It took four mirrors before kicad-packages3D downloaded properly. Once it did, there were no issues.
I was to build every package 6.0.1 version , except the kicad-doc.
When I try to manually build the DOC portion and link to asciidoctor-web-pdf it then complains about missing po4a. That program won't build on my end saying that the loadable library and perl binaries are miss matched.
Before I try KiCAD 6, I'm building 5.1.5 via the 14.2 Slackbuild on the latest Slack64-current. All files have build perfectly, save for kicad-packages3D.
wxGTK3 3.0.5 and wxPython3 3.0.2 built with no issues.
kicad-packages3D is a problem. I'm now into my 3rd mirror, and it keeps quitting with the following error message: Read error at byte 870378796 (Success).Retrying. Possibly a corrupt file that was uploaded to the mirrors? KiCAD itself worked perfectly using the 14.2 Slackbuild.
Once KiCAD 5.1.5 is complete, I'll attempt to build KiCAD 6.0.1.
Edit: It took four mirrors before kicad-packages3D downloaded properly. Once it did, there were no issues.
5.1.12 was the last version I could compile without errors.
After rebuilding wxGTK3 with wxWidgets 3.0.5 and building wxPython3 I was finally able to compile Kicad 6.0.1. Not sure which thing I did that fixed the error. Will try and rebuild wxGTK3 with wxWidgets 3.1.5 and rebuild Kicad 6.0.1 and see if it will still compile or if the previous errors return.
Edit:
After rebuilding wxGTK3 with wxWidgets 3.1.5 it errors out with previous error.
Last edited by kermitdafrog8; 01-22-2022 at 03:30 PM.
The following packages have built cleanly for me today with an up to date installation of -current:
kicad 6.0.1
kicad-footprints 6.0.1
kicad-packages3D 6.0.1
kicad-symbols 6.0.1
kicad-templates 6.0.1
The prebuilt 6.0.1 docs aren't available on CERN's server yet, so I've left those for the time being, but don't expect any problems.
Distribution: slackware, slackware from scratch, LFS, slackware [arm], linux Mint...
Posts: 1,564
Rep:
@oily: I had some problem with glm-0.9.9.8 could you share your glm.SlackBuild?
I built also ngspice-36.
I installed the pre-compiled kicad-doc-6.0.0, there shouldn't be much differences.
glm-0.9.9.8 errors:
Code:
[ 99%] Built target test-perf_matrix_inverse
[100%] Building CXX object test/perf/CMakeFiles/test-perf_matrix_div.dir/perf_matrix_div.cpp.o
[100%] Linking CXX executable test-perf_matrix_div
[100%] Built target test-perf_matrix_div
make: *** Aucune règle pour fabriquer la cible «*install*». Arrêt.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.