In the short term, firefox 52.9.0 should be an option - I had no problem updating the rpms from 52.8.1 52.9.0 has at least some of the security fixes from 60.1. On Tue, 3 Jul 2018, Pat Riehecky wrote: > It is a bit of a mess.... On the plus side, it no longer rebuilds its own gcc > for each build. > > Unfortunately, the source rpm requires a few software collections for i686 > (no upstream builds of these) and x86_64. I've mostly depsolved my way > through, but I'm fighting building a new rust collection (SCL.org has 1.20, > but firefox requires at least 1.24). > > The i686 build of rust is odd..... > > I'm optimistic I'll get x86_64 rust built today. The i686 rust may require > something a bit more fancy to get off the ground.... > > It needs to bundle llvm as that isn't in the release, but the my latest > attempt for i686 spit out: > > ############### > error: process didn't exit successfully: > `/builddir/build/BUILD/rustc-1.27.0-src/build/bootstrap/debug/rustc -vV` > (exit code: 101) > --- stdout > rustc 1.27.0 > binary: rustc > commit-hash: unknown > commit-date: unknown > host: i686-unknown-linux-gnu > release: 1.27.0 > > --- stderr > error: couldn't load codegen backend > "/builddir/build/BUILD/rustc-1.27.0-src/build/i686-unknown-linux-gnu/stage1/lib/rustlib/i686-unknown-linux-gnu/codegen-backends/librustc_trans-llvm.so": > "/builddir/build/BUILD/rustc-1.27.0-src/build/i686-unknown-linux-gnu/stage1/lib/rustlib/i686-unknown-linux-gnu/codegen-backends/librustc_trans-llvm.so: > undefined symbol: LLVMGetNextGlobal" > > > command did not execute successfully: > "/opt/rh/rust-toolset-7/root/usr/bin/cargo" "build" "--target" > "i686-unknown-linux-gnu" "-j" "8" "--release" "--frozen" "--features" > "panic-unwind backtrace" "--manifest-path" > "/builddir/build/BUILD/rustc-1.27.0-src/src/libstd/Cargo.toml" > "--message-format" "json" > expected success, got: exit code: 101 > thread 'main' panicked at 'cargo must succeed', bootstrap/compile.rs:1091:9 > note: Run with `RUST_BACKTRACE=1` for a backtrace. > failed to run: > /builddir/build/BUILD/rustc-1.27.0-src/build/bootstrap/debug/bootstrap build > Build completed unsuccessfully in 1:54:27 > error: Bad exit status from /var/tmp/rpm-tmp.T8AHtW (%build) > > > RPM build errors: > Bad exit status from /var/tmp/rpm-tmp.T8AHtW (%build) > [mockbuild@sl7 SPECS]$ file > /builddir/build/BUILD/rustc-1.27.0-src/build/i686-unknown-linux-gnu/stage1/lib/rustlib/i686-unknown-linux-gnu/codegen-backends/librustc_trans-llvm.so > /builddir/build/BUILD/rustc-1.27.0-src/build/i686-unknown-linux-gnu/stage1/lib/rustlib/i686-unknown-linux-gnu/codegen-backends/librustc_trans-llvm.so: > ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically > linked, BuildID[sha1]=c67b3d34b93cc42f2874eb574348da6395147035, not stripped > [mockbuild@sl7 SPECS]$ ldd > /builddir/build/BUILD/rustc-1.27.0-src/build/i686-unknown-linux-gnu/stage1/lib/rustlib/i686-unknown-linux-gnu/codegen-backends/librustc_trans-llvm.so > linux-gate.so.1 => (0x00882000) > librustc_trans_utils-30e9d0c253f30f1d.so => not found > librustc_platform_intrinsics-b75d30e2bdf573ed.so => not found > librustc_incremental-b894116bb98a052c.so => not found > librustc_allocator-fffeb8de1dc0c3e5.so => not found > librustc_mir-edefc79926b9cb9e.so => not found > librustc-9fc202f17e46723c.so => not found > libsyntax-023bbcd4c216dc4e.so => not found > librustc_errors-eafc62bd217f40e1.so => not found > libsyntax_pos-38ba9807067299a4.so => not found > librustc_target-bfdb8da17c1561e4.so => not found > librustc_data_structures-1b58628e03065265.so => not found > librustc_cratesio_shim-221747bb149fd331.so => not found > libserialize-0da15a818407c7d6.so => not found > libstd-3ae84a80b42f39c4.so => not found > libpthread.so.0 => /lib/libpthread.so.0 (0x00c78000) > libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x005c1000) > libc.so.6 => /lib/libc.so.6 (0x005dc000) > /lib/ld-linux.so.2 (0x00a73000) > [mockbuild@sl7 SPECS]$ nm > /builddir/build/BUILD/rustc-1.27.0-src/build/i686-unknown-linux-gnu/stage1/lib/rustlib/i686-unknown-linux-gnu/codegen-backends/librustc_trans-llvm.so|grep > LLVM > U LLVMAddCase > U LLVMAddClause > U LLVMAddGlobal > U LLVMAddIncoming > U LLVMAddNamedMetadataOperand > U LLVMAppendBasicBlockInContext > U LLVMBuildAdd > U LLVMBuildAlloca > U LLVMBuildAnd > U LLVMBuildAShr > U LLVMBuildAtomicRMW > U LLVMBuildBitCast > U LLVMBuildBr > U LLVMBuildCondBr > U LLVMBuildExactSDiv > U LLVMBuildExactUDiv > U LLVMBuildExtractElement > U LLVMBuildExtractValue > U LLVMBuildFAdd > U LLVMBuildFCmp > U LLVMBuildFDiv > U LLVMBuildFMul > U LLVMBuildFNeg > U LLVMBuildFPExt > U LLVMBuildFPToSI > U LLVMBuildFPToUI > U LLVMBuildFPTrunc > U LLVMBuildFRem > U LLVMBuildFSub > U LLVMBuildGEP > U LLVMBuildICmp > U LLVMBuildInBoundsGEP > U LLVMBuildInsertElement > U LLVMBuildInsertValue > U LLVMBuildIntToPtr > U LLVMBuildLandingPad > U LLVMBuildLoad > U LLVMBuildLShr > U LLVMBuildMul > U LLVMBuildNeg > U LLVMBuildNot > U LLVMBuildOr > U LLVMBuildPhi > U LLVMBuildPointerCast > U LLVMBuildPtrToInt > U LLVMBuildResume > U LLVMBuildRet > U LLVMBuildRetVoid > U LLVMBuildSDiv > U LLVMBuildSelect > U LLVMBuildSExt > U LLVMBuildShl > U LLVMBuildShuffleVector > U LLVMBuildSIToFP > U LLVMBuildSRem > U LLVMBuildStore > U LLVMBuildStructGEP > U LLVMBuildSub > U LLVMBuildSwitch > U LLVMBuildTrunc > U LLVMBuildUDiv > U LLVMBuildUIToFP > U LLVMBuildUnreachable > U LLVMBuildURem > U LLVMBuildXor > U LLVMBuildZExt > U LLVMCloneModule > U LLVMConstArray > U LLVMConstBitCast > U LLVMConstExtractValue > U LLVMConstInBoundsGEP > U LLVMConstInt > U LLVMConstIntGetZExtValue > U LLVMConstIntOfArbitraryPrecision > U LLVMConstIntToPtr > U LLVMConstNull > U LLVMConstPointerCast > U LLVMConstPtrToInt > U LLVMConstRealGetDouble > U LLVMConstStringInContext > U LLVMConstStructInContext > U LLVMConstVector > U LLVMConstZExt > U LLVMContextDispose > U LLVMContextSetDiagnosticHandler > U LLVMCountParamTypes > U LLVMCreateBuilderInContext > U LLVMCreateFunctionPassManagerForModule > U LLVMCreatePassManager > U LLVMDeleteBasicBlock > U LLVMDeleteGlobal > U LLVMDisposeBuilder > U LLVMDisposeModule > U LLVMDisposePassManager > U LLVMDoubleTypeInContext > U LLVMFloatTypeInContext > U LLVMFunctionType > U LLVMGetAlignment > U LLVMGetBasicBlockParent > U LLVMGetCurrentDebugLocation > U LLVMGetDataLayout > U LLVMGetElementType > U LLVMGetFirstBasicBlock > U LLVMGetFirstGlobal > U LLVMGetInitializer > U LLVMGetInsertBlock > U LLVMGetIntTypeWidth > U LLVMGetMDKindIDInContext > U LLVMGetModuleContext > U LLVMGetNamedGlobal > U LLVMGetNextGlobal > U LLVMGetParam > U LLVMGetParamTypes > U LLVMGetSectionContents > U LLVMGetSectionSize > U LLVMGetUndef > U LLVMGetValueName > U LLVMGetVectorSize > U LLVMInitializePasses > U LLVMInt16TypeInContext > U LLVMInt1TypeInContext > U LLVMInt32TypeInContext > U LLVMInt64TypeInContext > U LLVMInt8TypeInContext > U LLVMIntTypeInContext > U LLVMIsAConstantFP > U LLVMIsAConstantInt > U LLVMIsAGlobalVariable > U LLVMIsDeclaration > U LLVMIsGlobalConstant > U LLVMIsSectionIteratorAtEnd > U LLVMMDNodeInContext > U LLVMMDStringInContext > U LLVMModuleCreateWithNameInContext > U LLVMMoveToNextSection > U LLVMPassManagerBuilderCreate > U LLVMPassManagerBuilderDispose > U LLVMPassManagerBuilderPopulateFunctionPassManager > U LLVMPassManagerBuilderPopulateLTOPassManager > U LLVMPassManagerBuilderPopulateModulePassManager > U LLVMPassManagerBuilderSetDisableUnrollLoops > U LLVMPassManagerBuilderSetSizeLevel > U LLVMPassManagerBuilderUseInlinerWithThreshold > U LLVMPointerType > U LLVMPositionBuilderAtEnd > U LLVMReplaceAllUsesWith > U LLVMRunPassManager > U LLVMRustAddAlignmentAttr > U LLVMRustAddAlignmentCallSiteAttr > U LLVMRustAddAlwaysInlinePass > U LLVMRustAddAnalysisPasses > U LLVMRustAddBuilderLibraryInfo > U LLVMRustAddDereferenceableAttr > U LLVMRustAddDereferenceableCallSiteAttr > U LLVMRustAddDereferenceableOrNullAttr > U LLVMRustAddDereferenceableOrNullCallSiteAttr > U LLVMRustAddHandler > U LLVMRustAddLibraryInfo > U LLVMRustAddModuleFlag > U LLVMRustAddPass > U LLVMRustAppendModuleInlineAsm > U LLVMRustArchiveMemberFree > U LLVMRustArchiveMemberNew > U LLVMRustArrayType > U LLVMRustBuildAtomicCmpXchg > U LLVMRustBuildAtomicFence > U LLVMRustBuildAtomicLoad > U LLVMRustBuildAtomicStore > U LLVMRustBuildCall > U LLVMRustBuildCatchPad > U LLVMRustBuildCatchRet > U LLVMRustBuildCatchSwitch > U LLVMRustBuildCleanupPad > U LLVMRustBuildCleanupRet > U LLVMRustBuildIntCast > U LLVMRustBuildInvoke > U LLVMRustBuildMaxNum > U LLVMRustBuildMinNum > U LLVMRustBuildVectorReduceAdd > U LLVMRustBuildVectorReduceAnd > U LLVMRustBuildVectorReduceFAdd > U LLVMRustBuildVectorReduceFMax > U LLVMRustBuildVectorReduceFMin > U LLVMRustBuildVectorReduceFMul > U LLVMRustBuildVectorReduceMax > U LLVMRustBuildVectorReduceMin > U LLVMRustBuildVectorReduceMul > U LLVMRustBuildVectorReduceOr > U LLVMRustBuildVectorReduceXor > U LLVMRustConfigurePassManagerBuilder > U LLVMRustConstInt128Get > U LLVMRustContextCreate > U LLVMRustCreateMemoryBufferWithContentsOfFile > U LLVMRustCreateTargetMachine > U LLVMRustCreateThinLTOData > U LLVMRustDebugMetadataVersion > U LLVMRustDIBuilderCreate > U LLVMRustDIBuilderCreateArrayType > U LLVMRustDIBuilderCreateBasicType > U LLVMRustDIBuilderCreateCompileUnit > U LLVMRustDIBuilderCreateDebugLocation > U LLVMRustDIBuilderCreateEnumerationType > U LLVMRustDIBuilderCreateEnumerator > U LLVMRustDIBuilderCreateFile > U LLVMRustDIBuilderCreateFunction > U LLVMRustDIBuilderCreateLexicalBlock > U LLVMRustDIBuilderCreateLexicalBlockFile > U LLVMRustDIBuilderCreateMemberType > U LLVMRustDIBuilderCreateNameSpace > U LLVMRustDIBuilderCreateOpDeref > U LLVMRustDIBuilderCreateOpPlusUconst > U LLVMRustDIBuilderCreatePointerType > U LLVMRustDIBuilderCreateStaticVariable > U LLVMRustDIBuilderCreateStructType > U LLVMRustDIBuilderCreateSubroutineType > U LLVMRustDIBuilderCreateTemplateTypeParameter > U LLVMRustDIBuilderCreateUnionType > U LLVMRustDIBuilderCreateVariable > U LLVMRustDIBuilderDispose > U LLVMRustDIBuilderFinalize > U LLVMRustDIBuilderGetOrCreateArray > U LLVMRustDIBuilderGetOrCreateSubrange > U LLVMRustDIBuilderInsertDeclareAtEnd > U LLVMRustDICompositeTypeSetTypeArray > U LLVMRustDisposeTargetMachine > U LLVMRustFindAndCreatePass > U LLVMRustFreeThinLTOData > U LLVMRustGetLastError > U LLVMRustGetLinkagel > U LLVMRustGetNamedValue > U LLVMRustGetOrInsertFunction > U LLVMRustGetOrInsertGlobal > U LLVMRustGetSectionName > U LLVMRustGetTypeKind > U LLVMRustGetVisibility > U LLVMRustHasFeature > U LLVMRustInlineAsm > U LLVMRustLinkerAdd > U LLVMRustLinkerFree > U LLVMRustLinkerNew > U LLVMRustMarkAllFunctionsNounwind > U LLVMRustMetadataAsValue > U LLVMRustMetadataTypeInContext > U LLVMRustModuleBufferCreate > U LLVMRustModuleBufferFree > U LLVMRustModuleBufferLen > U LLVMRustModuleBufferPtr > U LLVMRustModuleCost > U LLVMRustParseBitcodeForThinLTO > U LLVMRustPassKind > U LLVMRustPassManagerBuilderPopulateThinLTOPassManager > U LLVMRustPGOAvailable > U LLVMRustPositionBuilderAtStart > U LLVMRustPrepareThinLTOImport > U LLVMRustPrepareThinLTOInternalize > U LLVMRustPrepareThinLTORename > U LLVMRustPrepareThinLTOResolveWeak > U LLVMRustPrintModule > U LLVMRustPrintPasses > U LLVMRustPrintPassTimings > U LLVMRustPrintTargetCPUs > U LLVMRustPrintTargetFeatures > U LLVMRustRunFunctionPassManager > U LLVMRustRunRestrictionPass > U LLVMRustSetDataLayoutFromTargetMachine > U LLVMRustSetHasUnsafeAlgebra > U LLVMRustSetInlineAsmDiagnosticHandler > U LLVMRustSetLinkage > U LLVMRustSetLLVMOptions > U LLVMRustSetModulePIELevel > U LLVMRustSetNormalizedTarget > U LLVMRustSetVisibility > U LLVMRustThinLTOAvailable > U LLVMRustThinLTOBufferCreate > U LLVMRustThinLTOBufferFree > U LLVMRustThinLTOBufferLen > U LLVMRustThinLTOBufferPtr > U LLVMRustThinLTOGetDICompileUnit > U LLVMRustThinLTOPatchDICompileUnit > U LLVMRustThinLTORemoveAvailableExternally > U LLVMRustVersionMajor > U LLVMRustVersionMinor > U LLVMRustWriteArchive > U LLVMRustWriteDiagnosticInfoToString > U LLVMRustWriteOutputFile > U LLVMRustWriteSMDiagnosticToString > U LLVMRustWriteTypeToString > U LLVMRustWriteValueToString > U LLVMSetAlignment > U LLVMSetCleanup > U LLVMSetCurrentDebugLocation > U LLVMSetDataLayout > U LLVMSetDLLStorageClass > U LLVMSetGlobalConstant > U LLVMSetInitializer > U LLVMSetInstDebugLocation > U LLVMSetMetadata > U LLVMSetModuleInlineAsm > U LLVMSetPersonalityFn > U LLVMSetSection > U LLVMSetTailCall > U LLVMSetUnnamedAddr > U LLVMSetValueName > U LLVMSetVolatile > U LLVMStartMultithreaded > U LLVMStructCreateNamed > U LLVMStructSetBody > U LLVMStructTypeInContext > U LLVMTypeOf > U LLVMVectorType > U LLVMVoidTypeInContext > U LLVMWriteBitcodeToFile > U LLVMX86MMXTypeInContext > U > _ZN10rustc_llvm49_$LT$impl$u20$rustc_llvm..ffi..LLVMRustResult$GT$11into_result17h2f29cc40e88747f2E > > ############## > > Pat > > On 07/03/2018 10:07 AM, Orion Poplawski wrote: >> Red Hat announced a Firefox security update: >> >> RHSA-2018:2113 Critical: firefox security update - 60.1.0 >> >> but I haven't seen it show up in SL (or CentOS for that matter). Any ETA >> on >> this? Thanks. >> > > -- > Pat Riehecky > > Fermi National Accelerator Laboratory > www.fnal.gov > www.scientificlinux.org >